blkdiscard(8) — Linux manual page


BLKDISCARD(8)             System Administration            BLKDISCARD(8)

NAME         top

       blkdiscard - discard sectors on a device

SYNOPSIS         top

       blkdiscard [options] [-o offset] [-l length] device

DESCRIPTION         top

       blkdiscard is used to discard device sectors.  This is useful for
       solid-state drivers (SSDs) and thinly-provisioned storage.
       Unlike fstrim(8), this command is used directly on the block

       By default, blkdiscard will discard all blocks on the device.
       Options may be used to modify this behavior based on range or
       size, as explained below.

       The device argument is the pathname of the block device.

       WARNING: All data in the discarded region on the device will be

OPTIONS         top

       The offset and length arguments may be followed by the
       multiplicative suffixes KiB (=1024), MiB (=1024*1024), and so on
       for GiB, TiB, PiB, EiB, ZiB and YiB (the "iB" is optional, e.g.,
       "K" has the same meaning as "KiB") or the suffixes KB (=1000), MB
       (=1000*1000), and so on for GB, TB, PB, EB, ZB and YB.

       -f, --force
              Disable all checking.  Since v2.36 the block device is
              open in exclusive mode (O_EXCL) by default to avoid
              collision with mounted filesystem or another kernel
              subsystem.  The force option disables the exclusive access

       -o, --offset offset
              Byte offset into the device from which to start
              discarding.  The provided value must be aligned to the
              device sector size.  The default value is zero.

       -l, --length length
              The number of bytes to discard (counting from the starting
              point).  The provided value must be aligned to the device
              sector size.  If the specified value extends past the end
              of the device, blkdiscard will stop at the device size
              boundary.  The default value extends to the end of the

       -p, --step length
              The number of bytes to discard within one iteration. The
              default is to discard all by one ioctl call.

       -s, --secure
              Perform a secure discard.  A secure discard is the same as
              a regular discard except that all copies of the discarded
              blocks that were possibly created by garbage collection
              must also be erased.  This requires support from the

       -z, --zeroout
              Zero-fill rather than discard.

       -v, --verbose
              Display the aligned values of offset and length.  If the
              --step option is specified, it prints the discard progress
              every second.

       -V, --version
              Display version information and exit.

       -h, --help
              Display help text and exit.

AUTHORS         top

       Lukas Czerner ⟨⟩

SEE ALSO         top


AVAILABILITY         top

       The blkdiscard command is part of the util-linux package and is
       available Linux Kernel Archive 

COLOPHON         top

       This page is part of the util-linux (a random collection of Linux
       utilities) project.  Information about the project can be found
       at ⟨⟩.  If you
       have a bug report for this manual page, send it to  This page was obtained from the
       project's upstream Git repository
       ⟨git://⟩ on
       2021-03-21.  (At that time, the date of the most recent commit
       that was found in the repository was 2021-03-19.)  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for
       the page, or you have corrections or improvements to the
       information in this COLOPHON (which is not part of the original
       manual page), send a mail to

util-linux                      July 2014                  BLKDISCARD(8)

Pages that refer to this page: fstrim(8)