1. 程式人生 > >記一次壞道在分割槽邊界的硬碟修復

記一次壞道在分割槽邊界的硬碟修復

## 問題 一塊東芝 1TB 機械硬碟,在近期日常使用中不時出現開機無法正常引導、開啟分割槽時需大量時間等問題,最後徹底無法引導作業系統。 ## 前期嘗試 - 嘗試使用 PE 引導系統,基於 Win10 的 PE 卡死在“初始化”介面無法進入,基於 Win2003 的 PE 能夠引導,但進入後資源管理器和 DiskGenius (下稱 DG)都看不到盤 - 嘗試修改 BIOS 的 SATA 控制器模式,修改為 AHCI 和 IDE 模式,均失敗 - 嘗試使用 PE 的不載入 SRS 驅動的相容模式來引導,以及載入 SRS 驅動的相容模式來引導,均失敗 - 使用 DOS 版 DG 可以看到盤本身 ## 解決方案 - 在 DOS 版 DG 下,掃描丟失的分割槽,重建分割槽表後,結果如下: ![image-20210128010705093](https://i.loli.net/2021/01/28/XfhmzqlVoGgte9U.png) 可見,找到了三個分割槽。但該盤上原本有 4 個分割槽,佈局中的 411.5GB 空閒處的分割槽完全丟失,無法被掃描出。記 350GB 分割槽尾部、411.5GB 空閒頭部的柱面號為 $X$。 - 先將目前掃出的三個分割槽檔案全部藉助 DG 匯出到穩定的介質上,再嘗試進行後續的修復。 - 在 DOS 版 DG 下,掃描壞道。結果發現,$X$ 附近(即 350GB 分割槽和 411.5GB 空閒的銜接邊界處)存在一定數量壞道。這些壞道即是導致 PE 無法正常載入、無法正常認盤的根本原因。 - 啟動到 DOS 下的磁碟再生器(HDD Regenerator),選中該盤,直接使用“掃描並修復”模式,掃描全盤並修復壞道。相比起 DG 自帶的壞道修復工具和 MHDD 等工具,HDDReg 有概率修復壞道處不可讀取的受損資訊,使用起來也更簡單。 執行完成後,HDDReg 順利修復了 $X$ 附近的 16 個壞扇。 ![image-20210128011651512](https://i.loli.net/2021/01/28/Vf4AxgEOmW7uQdB.png) 磁軌和扇區密不可分,HDDReg 使用扇區一詞,其他地方使用磁軌一詞,實際上講的是一回事。 ![image-20210128011536719](https://i.loli.net/2021/01/28/Vo8qimt9yhQzgKd.png) - 重新嘗試引導到 PE,這時,基於 Win2003 的 PE 可以成功引導,並且資源管理器和 DG 都可以看到盤了。DG 中,$X$ 位置以後的狀態不再是“空閒”,而是變為“未格式化”狀態。 - 右擊該部分,使用 DG 的“恢復被刪除和格式化的檔案”功能掃描這片區域(這個功能在 DOS 版 DG 下沒有)。掃描結束後,原先此處的 411.5GB 分割槽的內容大部分都被找回了。 ![image-20210128012154754](https://i.loli.net/2021/01/28/6wcFbRftq1TagGz.png) ## 總結 - 位於 $X$ 附近壞道處的資料發生了部分丟失,未能全部找回 - PE 卡在初始化的原因,不排除硬碟壞道導致 - DOS 能夠對硬碟進行更底層的操作,在無法使用高階 PE 的情況下,可考慮在 DOS 下先解決部分問題 - 壞道恰好發生在分割槽邊界時導致的分割槽丟失,使用 DG 掃描全盤、重建分割槽表時,可能無法掃出該分割槽 - 壞道恰好發生在分割槽邊界時,特殊之處在於,作業系統無法在位於 (cylinder 0, head 0, sector 1) 的分割槽表所指示的位置找到有效的分割槽(因為那裡有壞道) - 注意到在 HDDReg 完成修復後,原先“空閒”的 411.5GB 與最後的一小塊分割槽發生了合併,成為“未格式化”狀態。因此,為避免丟失分割槽的後續分割槽丟失,務必在完成分割槽表重建後,將能夠找到的資料都備份穩妥後,再進行後