Filesystems

清理文件系統以檢查所有使用的扇區是否可讀

  • September 17, 2019

我希望有一種方法可以定期檢查我是否確實可以讀取驅動器上的所有數據,以便我可以重寫任何文件和/或在出現問題時進一步調查。

ZFS 和 Btrfs 都有用於此目的的清理命令。

如何有效地清理 ext* 和 NTFS?

一種方法是簡單地讀取每個文件,如果有問題,期待 STDERR 上的消息:

(cd /mountpoint && find . -type d -o -type f -printf '%P\0' | xargs -0 b2sum -z) 2>errors | tee hashes 

(cd /mountpoint && find .-xdev -print0 | xargs -0P4 xxhsum )>雜湊 2>錯誤

使用-zwith b2sum(or sha256sum) 允許使用換行符的文件名。

這有目的地包括目錄以允許空目錄。


如果空目錄不是問題,則更短:

(cd /mountpoint && sha256deep -0clrz -j0 -of . ) 2> errors | tee hashes 

這將列印文件大小、雜湊和文件名,後跟一個NUL.

理想情況下,我會添加-tsha256deep但目前存在這個問題

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