多年來,我第一次擁有一個磁碟(SSD,透過 DiskInfo 顯示 99% 的運行狀況!),其中有一些無法讀取的文件。我嘗試使用 wxHexEditor 打開這些文件,當滾動文件內容時,在某個時刻,我收到 I/O 錯誤/文件錯誤。另外,我無法複製/貼上該文件,Windows 因 I/O 錯誤而停止。重啟後同上。
我做了一個chkdsk /f
,但沒有發現任何特別的東西。
我現在運行了很長一段時間chkdsk /r /f
,但到目前為止尚未檢測到錯誤。
問題:Windows 中是否有一種(內建?)方法可以完全讀取磁碟區上每個檔案的 100% 字節,以確保每個檔案確實可讀且沒有任何 I/O 錯誤?
注意:據我所知,chkdsk
僅在索引中執行檢查,但不一定嘗試讀取檔案系統中每個檔案的每個位元組。後者怎麼辦?
答案1
答案2
問題:Windows 中是否有一種(內建的?)方法可以完全讀取磁碟區上每個檔案的 100% 字節,以確保每個檔案確實可讀且沒有任何 I/O 錯誤?
答:
/r 定位壞扇區並恢復可讀資訊。磁碟必須被鎖定。 /r 包含 /f 的功能,以及對實體磁碟錯誤的附加分析。
評論:
當然,驅動器上的最小可尋址單元是扇區,卷上的最小可尋址單元是簇,chkdsk 確實如此不是檢查各個位元組。
IOW chkdsk 將嘗試確定叢集的可讀性,並且在出現讀取問題時將嘗試還原整個叢集內的資料。
在磁碟機級別,錯誤由磁區的可讀性決定。 IOW,磁碟機能夠讀取所要求的磁區(即使在韌體等級的錯誤復原之後),或無法讀取。如果是後者,則驅動器傳回錯誤,指示部門無法讀取且沒有數據返回扇區(因此要么是 512 字節,要么是 4 KB 的資料)。
當您談論文件時,最終這就是它的級別。 IOW,這與檢查單一位元組無關。
由於 chkdsk 檢查卷內的所有“扇區”,因此沒有錯誤意味著所有檔案都是可讀的。