文書更新:2018年05月28日(月) 午後2時44分14秒

Home > 備忘録 > Linux > dd コマンド( 4 )

HDDデータの完全消去

fdiskでUSB接続したHDDを確認すること。これはハードディスク全体に「ゼロや乱数」を書き込むものです。
[root@server]# fdisk -l

[root@server]# dd if=/dev/zero of=/dev/sdb bs=4096 conv=sync,noerror      (Zeroの書き込み)

[root@server]# dd if=/dev/urandom of=/dev/sdb bs=4096 conv=sync,noerror   (乱数の書き込み)

HDDのコピー

  1. /dev/sdaから/dev/sdbに丸ごとコピーする。
  2. [root@server]# dd if=/dev/sda of=/dev/sdb
  3. MBRを「/dev/sdc」バックアップする。
  4. [root@server]# dd if=/dev/sda of=/dev/sdc bs=512 count=1
  5. HDDをバックアップする。
  6. [root@server]# dd if=/dev/sda1 of=/dev/sdc1 bs=4096
    
    [root@server]# dd if=/dev/sda2 of=/dev/sdc2 bs=4096

ddコマンド実行中に進捗状況を確認する方法1

  1. ddコマンドで例えば、次のような「HDDの消去」を開始する。(※注意 下記のコマンドはハードディスクの中身の消去です。一瞬でハードディスクの 中身が消去されるので気をつけて下さい。)
  2. [root@server]# dd if=/dev/zero of=/dev/sdc2 bs=4096 conv=sync,noerror  ->(※注意)
  3. 別ウィンドで端末を開き、psコマンドでPIDを確認する。
  4. [root@server]# ps ax|grep dd
    13579 pts/0    S      0:10 dd if=/dev/zero of=/dev/sdc2 bs=4096 conv=sync,noerror
    13603 pts/0    S+     0:00 grep dd
  5. killコマンドを実行する。
  6. [root@server]# kill -SIGUSR1 13579
  7. 最初の端末画面に進捗状況を表示します。
  8. [root@server]# dd if=/dev/zero of=/dev/sdb bs=4096 conv=sync,noerror
    2569+0 records in
    2569+0 records out
    2693791744 bytes (2.7 GB) copied, 99.2442 s, 27.1 MB/s

ddコマンド実行中に進捗状況を確認する方法2

  1. 別ウィンドで端末を開き、killallコマンドを実行する。
  2. [root@server]# killall -SIGUSR1 dd
  3. 最初の端末画面に進捗状況を表示します。
  4. [root@server]# dd if=/dev/zero of=/dev/sdb bs=4096 conv=sync,noerror
    2569+0 records in
    2569+0 records out
    2693791744 bytes (2.7 GB) copied, 99.2442 s, 27.1 MB/s

fdisk で hdd が認識しない場合の確認方法

  1. dmesg を利用する
  2. [root@server]# dmesg | tail
    [142321.470038] usb 2-1.4: SerialNumber: 00000000000000000000
    [142321.473700] scsi host9: uas
    [142321.474630] scsi 9:0:0:0: Direct-Access     ST332041 8AS              0101 PQ: 0 ANSI: 6
    [142321.486130] sd 9:0:0:0: Attached scsi generic sg4 type 0
    [142321.486196] sd 9:0:0:0: [sdf] 625142448 512-byte logical blocks: (320 GB/298 GiB)
    [142321.487224] sd 9:0:0:0: [sdf] Write Protect is off
    [142321.487235] sd 9:0:0:0: [sdf] Mode Sense: 67 00 10 08
    [142321.487795] sd 9:0:0:0: [sdf] Write cache: enabled, read cache: enabled, supports DPO and FUA
    [142321.519407]  sdf: sdf1
    [142321.521549] sd 9:0:0:0: [sdf] Attached SCSI disk
  3. fdisk で領域を確保する
  4. [root@server]# fdisk /dev/sdf