
現在、誤ってフォーマットしてしまったハードドライブを復旧しようとしていますが、もちろん、dd if=/dev/sdb of=/dev/sdc conv=noerror,sync
まずはバックアップを作成してから作業しています。実は、質問が 2 つあります。
dd は超遅いです。誤ってフォーマットしたせいでパーティション テーブルとファイル システムが破損しています。
-bs
オプションでブロック サイズを大きくすると、コピーのドライブ ジオメトリに何らかの影響が出るのでしょうか?これはビット単位であり、ドライブの先頭にあるパーティション テーブル/ファイル システムのみを操作しているため、元のドライブをバックアップに再コピーする必要がある場合、ドライブの残りの部分は変更されないはずなので、最初の数 MB の後で dd を中止するだけでよいのではないでしょうか。
これらのうちの 1 つが「はい」であることを願いますが、そうでなければ、あと 10 時間ほどかかります。
答え1
パーティション テーブルと MBR のみをバックアップする必要がある場合は、次を使用します。
dd if=/dev/SOURCE of=/my/path/to/MBR_BACKUP bs=512 count=1
あるいは sfdisk を使用します:
sfdisk -d /dev/SOURCE > /my/path/to/MBR_BACKUP
次に復元します:
sfdisk /dev/DEST < /my/path/to/MBR_BACKUP
上記のすべては非常に迅速です。
ハード ドライブ全体をイメージ化するには、BS をドライブ キャッシュの半分のサイズに設定することをお勧めします。たとえば、64 MB キャッシュの Seagate 1 TB ドライブでは、bs=32M を使用します。これにより、処理速度が向上します。
答え2
ddは非常に小さく、非常に効率的なプログラムであり、遅いのはおそらくハードドライブの読み取り/書き込み遅延によるものです。要するに、ddはシステムが許す限りの速度です。より大きなbsを使用してみてください。この質問に対する回答はUnixおよびLinux Stack Exchangeサイトにあります。
MBR とパーティション テーブルは最初の 512 バイトだけなので、コピーにそれほど時間はかからないはずですが、破損したパーティション テーブルのバックアップを作成する意味がわかりません。dd に時間をかけてハード ドライブのバックアップを作成させてください。その後、パーティション テーブルを再作成できるように、ハード ドライブ上のパーティションの場所に関する情報を回復する必要があります。これを行うソフトウェアがあります。
詳細については、次のリンクをご覧ください。
http://www.pixelbeat.org/docs/disk/
http://www.diskinternals.com/partition-recovery/
http://www.dedoimedo.com/computers/linux-data-recovery.html