組み込みシステムの一部のディスクの問題を解決していますが、再起動時にSATAドライブが欠落している場合は半分です。デバイスはZFSイメージをルートパーティションとして使用し、1つのSATAドライブと1つのNVMEドライブを含みます。明らかに再起動しましたが、SATAドライブがあったときに新しいルートコンテンツでドライブを更新するには、ミラーを再同期する必要がありました。
ZFSはコピーするブロック/ファイルをどのように選択しますか?タイムスタンプベースですか、それとも新しいデータが古いデータで上書きされないようにするために使用される内部カウンタの種類がありますか?
答え1
ZFSは主にチェックサムに依存すると思います。ブロックが作成されると、SHA256 チェックサムも保存されます。通常、ビット破損や論理問題を検出し、正しいチェックサムを使用してブロックから元のブロックを回復します。
あなたの場合、データがまったく欠けているように(または少なくとも検出されていないように見えるため)、半分の時間がより簡単になると確信しています。
vdev_uberblock_compare
編集:ディスクが検出されていない間にデータが変更された場合は、Cソースから最新のスーパーブロックを決定して再同期するためにタイムスタンプを直接確認するようです。