名前

blkdiscard - デバイス上のセクターを破棄する

書式

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

説明

blkdiscard はデバイスセクターの破棄を行う。 これはソリッドステートドライブ (SSD) やシンプロビジョニングストレージに対して用いることができる。 fstrim(8) とは異なり、 このコマンドはブロックデバイス上において直接用いられる。

デフォルトで blkdiscard は、 デバイス上のブロックすべてを破棄する。 オプションを用いれば、 その動作を変更して、 範囲指定やサイズ指定を行うことができる。 これについては後述する。

device 引数はブロックデバイスのパス名である。

警告: デバイス上において破棄した範囲のデータはすべて失われる。

オプション

引数 offsetlength には、 KiB (=1024), MiB (=1024*1024) のような乗数を表すサフィックスをつけることができる。 GiB, TiB, PiB, EiB, ZiB, YiB も同様に使うことができる。 ("iB" を続けるのは任意であり、 たとえば、 "K" は "KiB" と同じ意味である)。 あるいは、 KB (=1000), MB (=1000*1000) といったサフィックスをつけてもよい。 GB, TB, PB, EB, ZB, YB も同様に使うことができる。

-f, --force

チェックをすべて無効にする。 v2.36 以降ブロックデバイスは、 デフォルトで排他的モード (O_EXCL) により開かれる。 こうしてマウントされたファイルシステムと別のカーネルサブシステムの間での競合が避けられる。 --force オプションは、 その排他的なアクセスモードを無効にする。

-o, --offset offset

デバイス上の破棄開始位置を表すバイトオフセット。 指定する値は、 デバイスセクターサイズに合わせる必要がある。 デフォルト値はゼロである。

-l, --length length

破棄するバイト数 (開始位置からのカウント)。 指定する値は、 デバイスセクターサイズに合わせる必要がある。 指定した値がデバイス終端を超えて拡張された場合、 blkdiscard はデバイスサイズ境界において処理終了する。 デフォルトは、 デバイス最終位置までの拡張である。

-p, --step length

1 回の処理において破棄するバイト数。 デフォルトは 1 つの ioctl 呼び出しにつき、 すべてを破棄する。

-s, --secure

安全に破棄を行う。 安全な破棄とは通常の破棄と同様であるが、 ガーベージコレクションが生成する可能性のある廃棄ブロックのコピーも、 必ず廃棄します。 この機能はデバイスにおけるサポートが必要です。

-z, --zeroout

破棄ではなくゼロ埋めを行う。

-v, --verbose

指定された offsetlength の値を表示する。 --step オプションが指定された場合、 1 秒ごとに破棄処理の進捗を表示する。

-h, --help

ヘルプテキストを表示して終了する。

-V, --version

バージョンを表示して、 終了する。

作者

関連項目

fstrim(8)

バグ報告

バグ報告は、 以下に示す issue トラッカーを利用すること。 <https://github.com/util-linux/util-linux/issues>.

入手方法

blkdiscard コマンドは、 util-linux パッケージの一部であり、 以下からダウンロードできる。 Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.