Linux
如何使用不可讀扇區進行磁碟複製?
我想按字節複製整個磁碟,例如
dd if=/dev/$SRC of=/dev/$DST bs=65536 count=$count
有更好的工具可以完成這項工作,它們可以理解文件系統(Windows)並且工作速度更快(我不在乎),但是由於舊源磁碟上的扇區不可讀,它們會失敗。
實際上,我必須跳過一個無效塊。所以我考慮過
dd
多次使用dd if=/dev/$SRC of=/dev/$DST bs=65536 count=... dd if=/dev/zero of=/dev/$DST bs=65536 count=... skip=... seek=... dd if=/dev/$SRC of=/dev/$DST bs=65536 count=... skip=... seek=...
用零替換損壞的扇區數據。這是一種有效的方法嗎?我發現這個問題讓我感到困惑。
不要重新發明輪子。使用
ddrescue
.GNU ddrescue 是一個數據恢復工具。它將數據從一個文件或塊設備(硬碟、cdrom 等)複製到另一個,試圖在讀取錯誤的情況下首先挽救好的部分。
不要相信
dd conv=sync,noerror
,除非你真的知道它是如何工作的。