データ保存を改善するために、ハードドライブ上のすべてのデータを更新します。

データ保存を改善するために、ハードドライブ上のすべてのデータを更新します。

新しく同期されたデータ(他のソースのバックアップ/コピー)があるハードドライブ(古い磁気ハードドライブ)の場合、多くのファイルはそのまま残ります(読み込みは書きません)。すべてのハードドライブは時間の経過とともにデータを失います(ビットフリップが表示されるため、他のハードウェアに少なくとも3つのコピーが必要です...)。

したがって、同期後、すべてのデータが正しい状態であることがわかります。標準のシェルコマンド*を使用して各ファイルを読み書きする方法はありますか(ファイルシステムが断片化されないように上書きする)?目的の目的は、すべてのビットの磁気状態を更新することです。それとも同様のことができるLinuxファイルシステムはありますか(現在はext4を好む)?

それとも、このアイデアが無効であると考える理由はありますか?

*またはその他のスマートツール

答え1

最も簡単で迅速な方法はおそらく

dd if=/dev/sda of=/dev/sda bs=256M

dd書く前に読んでください(もちろんそうでなければ書くことはありません)。デバイスの場所はソースとターゲットとは無関係です。

また、リフレッシュ中にディスクが死なないと仮定します。

同じ合計データ量を使用して速度テストを実行しbsますが、三分の日半分正確にそして二重ハードディスクキャッシュのサイズ。ハードドライブコントローラのキャッシュ割り当て戦略によっては、書き換え時間が大きく異なる場合があります。

たとえば、256Mキャッシュがあるとします。

時間dd...bs=80M個数=1638時間dd...bs=128M個数=1024時間dd...bs=256M個数=512時間dd...bs=512M個数=256

ただし、bs全体を超えてはいけません。物理シリンダー内のデータ量。それ以外の場合、ハードドライブのメカニズムは強制的にトラックをスキップし、最初のシリンダー以降のデータを読み取ってからジャンプします。書く同じデータ。ハードドライブからシャンク音が鳴り始めると、それを簡単に知ることができます。各シリンダーが一度だけ処理され、明確な「tic.tic.tic.」が発生したいと思います。 LBAマッピングのために物理的なサイズを決定することは困難であり、最新のハードドライブでは、さまざまな割り当て領域のシリンダサイズ(スピンドルとの距離が異なる)のために不可能かもしれません。この場合、ディスクを「リフレッシュ」すると、ドライブ機構に多くのストレスがかかる。

答え2

ZFSは、ほとんどの物理ディスクデータの整合性の問題に対する答えです。ビットフリップやその他のデータ破損イベントを検出して修正します。

Linuxでは非常に安定しており、SolarisとBSDのバリエーションでは堅牢です。まだLinuxで信頼されていない場合は、ファイルサーバーに実装し、データが必要なサーバーにiSCSI、NFS、またはCIFSボリュームを提供してください。バックエンドのZFSはすべてを素晴らしく安全に保ちます。

関連情報