dd / wipefs の使い方

決まった大きさのファイルを作る・中身を写す

書き方

dd if=/dev/zero of=ファイル bs=1M count=回数

if(読む元)から bs の大きさで count 回読んで of(書く先)へ書きます。/dev/zero から読むと 0 で埋まったファイルになり、スワップファイル作りに使います。of にディスクを書くと中身が消えるので注意。印(ファイルシステム・PV・区切り表など)だけを消すなら wipefs -a デバイス(-a なしなら印を見るだけ)。

よく使うオプション

オプション意味
if=ファイル読む元(/dev/zero なら 0 が出続ける)
of=ファイル書く先
bs=大きさ1 回に読み書きする大きさ(1M など)
count=回数何回読み書きするか(bs × count が全体の大きさ)
status=progress進み具合を出す

例

$ sudo dd if=/dev/zero of=/swapfile bs=1M count=20482048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 3.1 s, 693 MB/s

0 で埋まった 2GiB のファイルを作ります。スワップファイル作りの最初の一歩です。

$ sudo dd if=/dev/sdb of=/backup/sdb.img bs=4M status=progress

ディスクの中身をまるごとファイルに写します。進み具合も出します。

$ sudo wipefs /dev/sdb1DEVICE OFFSET TYPE UUID                                 LABEL
sdb1   0x0    xfs  8f2a6c1e-4b7d-4c21-9e3a-2d5f6b7c8d90 data

-a を付けずに打つと、デバイスに残っている印(ファイルシステムや LVM の印)を見るだけです。

$ sudo wipefs -a /dev/sdb1

印だけを消して、まっさらなデバイスとして使えるようにします。

よくある間違い・注意

  • of にディスクを書くと、確認なしに中身が消えます。if と of を取り違えないよう、打つ前に読み直します。
  • ファイルを作るだけなら fallocate -l 2G ファイル のほうが速いこともあります(ファイルシステムによってはスワップに使えません)。

実際に打って練習する

Linux レベル2 コースの Lv24「空の箱を作る dd」で覚えます(第2章 地下の倉庫(ディスクとファイルシステム))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

すべてのレベルが、ゴールド以上のプランで遊べます。

Linux サーバー構築のコマンド一覧(LinuC レベル2 の範囲)へ戻る