Files

如何刪除 NTFS 分區上損壞的文件?

  • March 1, 2020

我在 Arch linux/dev/sda3上通過**ntfs-3g安裝了一個 NTFS 分區()。**該分區包含一個cee431d2730eb5e1697bd57b3bb529我要刪除的文件。

ls -la返回以下輸出

ls: cannot access 'data/cee431d2730eb5e1697bd57b3bb529': Input/output error
total 16611578
#Some other files...
d?????????  ? ?       ?              ?            ? cee431d2730eb5e1697bd57b3bb529

同樣file cee431d2730eb5e1697bd57b3bb529返回cee431d2730eb5e1697bd57b3bb529: cannot open 'cee431d2730eb5e1697bd57b3bb529' (Input/output error)

ls -i也返回? cee431d2730eb5e1697bd57b3bb529(它找不到 inode)

我嘗試刪除它,rm -f但它也因輸入/輸出錯誤而失敗(作為 root 使用者和普通使用者)。

執行ntfsfix /dev/sda3也沒有解決問題。

據我所知,目前還沒有用於修復 ntfs 分區的 Linux 工具。ntfsfix只是一個技巧,它只是將分區設置為“乾淨”,但實際上並沒有清理它。

寫入損壞的文件系統會危及其中的數據,我們通常不信任 ntfs,因此我們試圖避免進一步的數據損壞,這就是為什麼這個工具寧願選擇拒絕刪除。

您需要使用不同的作業系統來修復分區。理想情況下,為了避免重新啟動 Linux,如果您使用一些具有直接分區訪問權限的虛擬化技術將很有用。

引用自:https://unix.stackexchange.com/questions/467692