blockdev - コマンドラインからブロックデバイスの ioctl を呼び出す
blockdev [-q] [-v] command [command...] device [device...]
blockdev --report [device...]
blockdev -h|-V
blockdev ユーティリティを使えば、 コマンドラインからブロックデバイスの ioctl を呼び出すことができる。
-q
メッセージを出力しない。
-v
詳細に表示する。
--report
指定したデバイスの情報を表示する。 複数のデバイスを指定することもできる。 何も指定しない場合は、 /proc/partitions に記載されているすべてのデバイスが表示される。 パーティションの開始セクター (StartSec) は 512-byte セクターによる表示である。
-h, --help
ヘルプテキストを表示して終了する。
-V, --version
バージョンを表示して、 終了する。
デバイスもコマンドも複数指定できる。
--flushbufs
バッファをフラッシュする。
--getalignoff
アラインメントオフセット (alignment offset) を取得する。
--getbsz
ブロックサイズをバイト単位で表示する。 このサイズが示しているのは、 デバイスのトポロジーではない。 これは、 カーネルによって内部的に使用されるサイズであり、 マウント時に (たとえば) ファイルシステムドライバーによって変更されることもある。
--getdiscardzeroes
discard zeroes サポートの状態を取得する。
--getfra
ファイルシステムの先読み (readahead) の大きさを 512 バイトセクター単位で取得する。
--getiomin
最小 I/O サイズを取得する。
--getioopt
最適 I/O サイズを取得する。
--getmaxsect
1 リクエストあたりの最大セクター数を取得する。
--getpbsz
物理ブロック (セクター) サイズを取得する。
--getra
先読みの大きさを (512 バイトセクター単位で) 表示する。
--getro
読み込み専用か否かを検出する。 デバイスが読み込み専用ならば 1 を、 さもなければ 0 を表示する。
--getsize64
デバイスのサイズをバイト単位で表示する。
--getsize
デバイスのサイズをセクター単位で表示する (32 ビットまでしか対応していない!)。 これは非推奨であり、 --getsz オプションを使った方がよい。
--getss
論理セクターサイズをバイト単位で表示する。 通常は 512 バイトである。
--getsz
デバイスのサイズを 512 バイトセクター単位で取得する。
--rereadpt
パーティションテーブルの再読み込みを行う。
--setbsz bytes
ブロックサイズを設定する。 なお、 このブロックサイズは、 ブロックデバイスをオープンしている現在のファイルディスクリプターに限定されたものである。 そのため、 ブロックサイズの変更は blockdev がデバイスをオープンしている間だけ続き、 blockdev が終了すると失われる。
--setfra sectors
ファイルシステムの先読みの大きさを設定する (2.6 カーネルの --setra と同様)。
--setra sectors
先読みの大きさを (512 バイトセクター単位で) 設定する。
--setro
読み込み専用に設定する。 デバイスへの現在のアクティブなアクセスは、 この変更の影響を受けないかもしれない。 たとえば、 既に読み書きモードでマウントされているファイルシステムは、 影響を受けない。 変更は再マウント後に適用される。
--setrw
読み書き可に設定する。
blockdev を書いたのは Andries E. Brouwer であり、 それを Karel Zak が書き直した。
バグ報告は、 以下に示す issue トラッカーを利用すること。 <https://github.com/util-linux/util-linux/issues>.
blockdev コマンドは、 util-linux パッケージの一部であり、 以下からダウンロードできる。 Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.