磁盤修復相關整理

1. Linux下面

預防與檢測:使用smartmontools工具,用來控制SMART

檢測:

1)用badblocks工具檢測壞塊

#sudo badblock -s -v -c 64 /dev/sda 1000 10 (1000是結束塊,10是起始塊)


2)邏輯壞道(文件系統破壞)的話,使用fsck或者格式化

#fsck -a /dev/sdb (/dev/sda3)


3) 物理壞道(磁盤扇區不可逆轉的損壞)

方法一(塊級別修復,可以處理掛載中的系統,假定壞區不擴散):

1) 備份

#dd if=/dev/sda bs=4096 skip=badBlockId of=/tmp/id.dat count=1

2) 重寫測試

#badblocks -w -f /dev/sda3 badBlockId badBlockId

3)寫回 (如果塊已壞,會自動替換到磁盤保留區,對磁盤外系統透明)

#dd if=/tmp/badBlockId.dat of=dev/sda seek=id bs=4096 count=1

4)可用smartctl進行再次測試(可選)

注:使用dd備份整個磁盤的話,必須加上conv=noerror,sync參數。前者表示遇到讀錯誤繼續,後者表示用0填充錯誤的數據。否則,會造成數據錯位,從而破壞整個映像。建議使用dd_rescue。


方法二:

a) 備份硬盤數據

b) 刪除硬盤分區

c) 根據壞塊位置及大小,估算壞區空間(壞道會擴散,所以應該隔離多些空間)。

d) 重新分區,隔離壞區。


2. Windows下面

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章