使用 dd 指令複製「損壞的」磁碟

使用 dd 指令複製「損壞的」磁碟

我有一個外部希捷硬碟,用於備份。現在我無法進入磁碟(還沒有使用dd命令!)。當我將它插入Windows電腦時,它說磁碟需要格式化才能訪問,運行ubuntu 12.04的linux無法安裝它,但如果我hwinfo --disk在終端中使用我可以找到它。有個朋友告訴我linux中的dd指令,我知道它是有風險的(如果你把輸入當作輸出,輸出會遺失當輸入資料)。我嘗試了“dd if=/dev/sdc of=/dev/sdb”並得到“訪問被拒絕”,所以我想至少沒有任何內容被覆蓋。根據ubuntu上安裝的hwinfo和磁碟處理管理器,sdc是希捷磁碟,而sdb是具有相同容量的內部磁碟,只是空的。我應該做什麼來恢復我的資料有什麼想法(如果 dd 能夠的話)?或者磁碟損壞太嚴重而無法恢復?

答案1

您需要 root 權限才能讀取或寫入原始硬碟。所以你需要運行

sudo dd if=/dev/sdc of=/dev/sdb

也就是說,dd將一點一點地創建磁碟及其所有分割區的原始副本。它不會修復任何內容 - 但是,最好使用上述命令將資料從損壞的磁碟複製到完好的磁碟,然後嘗試修復資料副本。這樣,如果出現問題並且您的救援嘗試最終造成更大的損害,您仍然擁有錯誤數據的原始數據,並且可以製作新的副本。

當您以這種方式克隆了壞磁碟後,請將其拔出。然後您可以在副本上開始實際恢復。一個工具是fsck,您可以透過以下方式運行它(同樣,您需要是 root 使用者):

sudo fsck /dev/sdb1

/dev/sdb1將是磁碟的第一個分割區。如果您有多個分割區,請對/dev/sdb2/dev/sdb3等重複相同的操作。

不能保證這會恢復任何資料 - 但如果不能,它會提示您損壞的類型以及在哪裡進一步查找。

相關內容