Linux / unixでデータをクリーンアップする(たとえば、大容量記憶装置のビット減衰を軽減する)方法を教えてください。

Linux / unixでデータをクリーンアップする(たとえば、大容量記憶装置のビット減衰を軽減する)方法を教えてください。

データの整理(一括リポジトリで)いわゆるビット腐敗を軽減する方法を提示した。

基本原則は、ハードドライブのデータが「破損」/「破損」によって破損する可能性があることです。これを防ぐために、ハードドライブの製造元はディスク内に書き込まれた各ブロックにいくつかの追加の修正データを追加する必要があります。ビット破損は、データとそれに付随する修正/保護データ(ある種のエラー修正コード(ECC))がドライブ上のデータを修正できない場合に発生します。

現在私が理解している情報は、データ(およびそれに追加された修正情報)が時間の経過とともに徐々に失われるということです。言い換えれば、待ち時間が長くなるにつれて、カスケードが修正がもはや不可能な点に達するまで(すなわち、内部的に追加された修正データが修正するのに十分な情報をもはや提供しない)、内部的により多くのビット減少が発生する。という意味です。

データの整理はビット減衰を軽減するのに役立ちます。理想的には、ドライブ内のすべてのデータを内部的に読み取り、追加のエラー訂正データでデータを確認するのが理想的だと思います。テスト中にドライブに問題が発生した場合は、エラーを修正できます。さらに、まだ実際のUREを発生させていないすべての内部ビット回転バイトをより良い状態にリセットすることができます。

それでは、デバイスでこれらのデータをクリーンアップするにはどうすればよいですか?

はいsmartctl、それともhdparm

テストには、、/smartctlの3種類があります。私にとって本当に理解できる唯一のことは、潜在的な修理が行われる前にドライブのすべてのデータを読み取るのに時間がかかることです。conveyenceshortlongextendedlong

RAID 1に関する質問はここにあります。mdadmを使用したビット破損の検出と修正

RAIDがなく、通常のSATAドライブしかない場合は、どうすればよいかを知りたいです。

答え1

通常のドライブ全体をお読みください。

dd if=/dev/sd(x) of=/dev/null iflag=nocache status=progress

エラーを正確に見つけるのに役立ちます。

badblocks(8)with オプションが-n最も近い。まず、ドライブをマウント解除します。

関連情報