ReFSにはチェックサムメカニズムが組み込まれていることを読みました。自動ビット腐敗修復は、冗長性が使用されている場合にのみ実行されるようです(ストレージスペース)。
冗長性のないReFSボリュームがある場合でも、システムは少なくともビット腐敗が発生したことを検出できると思います。では、そのような場合、ReFSファイルシステムはどのようにユーザーに通知するのでしょうか。自動修復がなくてもビット腐敗が発生したことを知ることができるだけでも役立つはずです。
ビット腐敗したファイルのリストを知るためのAPIまたは組み込みユーティリティはありますか?
ReFSは、イベントをイベントログに記録します。
Event Viewer/Application and Services Log/Microsoft/Windows/DataIntegrityScan
説明:
ファイルデータの不整合が検出され、正常に修復されました。ファイル名:M:\ VirtualMachines\WindowsServer2012R2_Prod.vhd;範囲オフセット:0x3A8314000;範囲の長さ:0x4000バイト;修復済み:0x4000バイト;ステータス:STATUS_SUCCESS。
カスタムイベントビューを作成し、ReFSソースを選択してソースでフィルタリングできます。ミラーリングされたストレージスペースボリュームを使用していない場合、これはMicrosoft側の最良の実装ではなく、システムイベントログがそれ自体を上書きし、イベントが失われます。
出典-KateLi(Microsoft Contingent Staff): https://social.technet.Microsoft.com/Forums/lync/en-US/99c5a067-a8f1-4ab8-b28c-25d0d8cd45b0/refs-salvage-log- entry-for-defective-files-scrubbing-process-configuration?forum = w8itprogeneral
Data Integrity Scanスケジュールされたタスクを実行すると、ReFSボリューム上のすべてのファイルがスキャンされます。
ただし、24TB(7TBを超えるデータ)のハードウェアRAID 6ボリュームではすぐに終了するため、ストレージスペースボリュームがある場合にのみ機能すると想定できます。それ以外の場合、ファイルはリアルタイムでアクセスされるときにのみスキャンされ、ファイル全体ではなく、実際に読み取られているブロックのみがスキャンされます。
デスクトップPCでは、タスクはデフォルトで無効になっています。
ただし、サーバーマシンでは、月次タスクはデフォルトで有効になっています。