壞塊可以恢復嗎?

壞塊可以恢復嗎?

我有一個 500Gb 內部 HDD,從 dmesg 的輸出中我得到了這個「精彩」訊息:

[  324.434832] end_request: I/O error, dev sde, sector 4715026720
[  324.434838] Buffer I/O error on device sde1, logical block 589378084
[  324.434854] Buffer I/O error on device sde1, logical block 589378085
[  324.434858] Buffer I/O error on device sde1, logical block 589378086
[  324.434862] Buffer I/O error on device sde1, logical block 589378087
[  324.434866] Buffer I/O error on device sde1, logical block 589378088
[  324.434870] Buffer I/O error on device sde1, logical block 589378089
[  324.434873] Buffer I/O error on device sde1, logical block 589378090
[  324.434877] Buffer I/O error on device sde1, logical block 589378091
[  324.434881] Buffer I/O error on device sde1, logical block 589378092
[  324.434884] Buffer I/O error on device sde1, logical block 589378093

我想知道是否有任何方法可以從硬碟中“消除”該區域(例如覆蓋它,或阻止對其的訪問)並重新格式化它,這樣當我使用驅動器的重命名部分時,它只會寫入好的扇區。

我僅使用此驅動器進行存儲,即使將來完全失敗也沒關係。

答案1

您需要的命令稱為壞塊

去檢查:

sudo badblocks -v /dev/sde1
  • 這只是為了查看它們,執行起來無害。

用於sudo dumpe2fs找出區塊大小。可能是“4096”

並標記它們:

sudo badblocks -c 4096 /dev/sde1 > /home/$USER/badblocks.txt
sudo fsck -l /home/$USER/badblocks.txt /dev/sde1
  • 第一個指令建立一個包含 bablocks 的文字檔。無害。將“4096”更改為您找到的內容。
  • 第二個指令使用“fsck”來標記區塊。

相關內容