Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all bug

名前

       wipefs - デバイスからシグナチャーを消去する

書式

       wipefs [options] device...

       wipefs [--backup] -o offset device...

       wipefs [--backup] -a device...

説明

       wipefs  を使えば、指定された device からファイルシステム、raid、 パーティションテーブルなどのシグナチャー
       (signatures,  マジックストリング)  を消去して、シグナチャーを   libblkid   から見えなくすることができる。
       wipefs  は、デバイスからファイルシステムそのものを消去するわけではない。 また、シグナチャー以外のいかなる
       データも消去しない。

       wipefs は、オプションなしで使用すると (訳注: たとえば、wipefs /dev/sda* と実行すると)、  見ることが可能な
       すべてのファイルシステムと、その基本的なシグナチャーのオフセットを一覧表示する。 デフォルトで何を出力する
       かは、バージョンによって違うことがよくあるので、スクリプトで使うときは、 デフォルトの出力の使用は、なるべ
       く避けた方がよい。  いつでも一定の出力が必要な場合には、--output column-list を使用して、表示させたい項目
       が何と何かを、必ず明確に指定するべきである。

       wipefs は、パーティションテーブルのシグナチャーの消去が済むと、BLKRRPART ioctl を呼んで、変更についてカー
       ネルに知らせる。ioctl を呼ぶのは、最後のステップなので、 そのときには、指定されたすべてのデバイスの、指定
       されたすべてのシグナチャーは、 すでに消去されているわけである。

       ファイルシステムやパーティションテーブルによっては、 複数のマジックストリングをデバイスに保存するものがあ
       る (たとえば、FAT, ZFS, GPT など)。wipefs コマンドは (v2.31 以来)  マジックストリングを検出したすべてのオ
       フセット位置を列挙する。

       オプション   -a  を使用すると、libblkid  から見えるすべてのマジックストリングが消去される。その際、wipefs
       は、変更 (消去)  を行うごとに、デバイスを再度スキャンして、マジックストリングがひとつも見つからなくなるま
       で、 それを繰り返す。

       気を付けていただきたいが、wipefs  は、デフォルトでは、 ディスク全体ではないデバイスにある、ネストしたパー
       ティションテーブルを消去しない。 そうするためには、--force オプションが必要である。

オプション

       -a, --all
              処理可能なシグナチャーをすべて消去する。消去するシグナチャーを何と何にするかは、-t    オプションに
              よって絞り込むことができる。

              [訳注]  オプションの名前が --all のせいで紛らわしいが、-t オプションを使って、シグナチャーのタイプ
                      を限定している場合でも、消去操作には  -a (--all) が必要である。-t だけだと、動作が消去では
                      なく、表示になる。

       -b, --backup
              ファイル $HOME/wipefs-<devname>-<offset>.bak  にシグナチャーのバックアップを作成する。詳しくは、「
              用例」をご覧いただきたい。

       -f, --force
              ファイルシステムがマウントされている場合でも、消去を強行する。  このオプションは、ブロックデバイス
              上のパーティションテーブル・シグナチャーを消去するために必要である。

              [訳注]  2  番目の文は、訳者には意味不明である。   確かに、ファイルシステムがマウントされている場合
                      に、  ファイルシステムのシグナチャーを消すには、-f が必要だろう。 また、おそらく、ネストし
                      たパーティションテーブルのシグナチャーを消去するためにも、 -f が必要なのだろう。しかし、そ
                      ういうことでないならば、ルート権限さえ持っていれば、    ブロックデバイス上のパーティション
                      テーブルのシグナチャーを消すのに、 普通 -f は要らないはずである。 それとも、あるデバイスの
                      パーティションに自分が目下実行しているシステムが含まれているとき、  そのディスクのパーティ
                      ションテーブルのシグナチャーを消去するということだろうか。  それは、やらない方がよい乱暴な
                      ことだと思うのだが。

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

       -J, --json
              出力に JSON フォーマットを使用する。

       -i, --noheadings
              ヘッダ行を表示しない。

       -O, --output list
              出力にどの項目    (column)    を表示するかを指定する。    サポートされている全項目のリストを得るに
              は、--help を使用すればよい。

       -n, --no-act
              write() 呼び出し以外のすべてを行うようにする。

       -o, --offset offset
              デバイスから消去すべきシグナチャーの位置を (バイト単位で) 指定する。offset には接頭辞 "0x" を付け
              てもよく、その場合は、数値が 16 進数と見なされることになる。複数の -o オプションを指定することもで
              きる。 (訳注: -t と違って、こちらは -a オプションと一緒に使う必要はない。 と言うより、両方指定する
              と、エラーになる。)

              引き数  offset  には、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 も同様に使える。

       -p, --parsable
              人間に見やすい  (printable) フォーマットではなく、プログラムが解析しやすい (parsable) フォーマット
              で出力する。文字列中の問題を起こしかねないすべての文字は、 対応する '\x' を頭に点けた 16  進数にエ
              ンコードされる。

       -q, --quiet
              シグナチャーの消去に成功した場合は、いかなるメッセージも表示しない。

       -t, --types list
              表示、または消去するシグナチャーを絞り込む。  複数のタイプを指定するには、コンマで区切ったリストに
              すればよい。  リスト、または個々のタイプの前に、'no'   という接頭辞を付けることができ、   その場合
              は、作業の対象にすべきではないタイプを指定することになる。 もっと詳しく知りたければ、mount(8) のマ
              ニュアルをご覧になるとよい。

              [訳注]  list  に使えるのは、基本的には mount(8) の -t に指定するファイルシステムのタイプと同じもの
                      だが、gptswap を指定することもできる。すなわち、wipefs /dev/sda* の出力の TYPE  の項目
                      に表示されるものが使えるわけである。

       -V, --version
              バージョン情報を表示して終了する。

用例

       wipefs /dev/sda*
              sda と sda 上のすべてのパーティションの情報を表示する。

       wipefs --all --backup /dev/sdb
              デバイス        /dev/sdb       からすべてのシグナチャーを消去し、       シグナチャーそれぞれに対し
              て、~/wipefs-sdb-<offset>.bak というバックアップファイルを作成する。

       dd if=~/wipefs-sdb-0x00000438.bak of=/dev/sdb seek=$((0x00000438)) bs=1 conv=notrunc
              バックアップファイル  ~/wipefs-sdb-0x00000438.bak から ext2 のシグナチャーを復元する。

       [訳注]  3 番目の例は、ちょっと変わったことをしていると言えるかもしれない。 ここでは、/dev/sdb  にファイル
               システムのシグナチャーを復元している。     とすると、/dev/sdb1     のようなパーティションにではな
               く、/dev/sdb というディスクに直接 ext2 のファイルシステムを作成していたことになりそうだ。/dev/sdb
               が、たとえば USB メモリなら、そういうこともあるだろうけれど。

作者

       Karel Zak <kzak@redhat.com>

環境変数

       LIBBLKID_DEBUG=all
              libblkid デバッグ出力を有効にする。

関連項目

       blkid(8), findfs(8)

入手方法

       この      wipfs      コマンドは、util-linux      パッケージの一部であり、次の      URL       から入手でき
       る。https://www.kernel.org/pub/linux/utils/util-linux/

util-linux                                        December 2014                                        WIPEFS(8)