web-dev-qa-db-ja.com

Ext4-追加の健全性、チェックサム、検証、あらゆる種類のテストを有効にする方法は?

私はハードドライブでExt4を実行しています。完全に正直に言うと、ドライブは古く、いくつかの不良ブロックがあるため、本当に信頼していません。私はドライブに重要でないデータを持っているので、もしそれが明日死んだとしても大したことはありません。

ただし、死ぬかどうか、またいつ死ぬかを知り、読み取り専用で再マウントします。 Ext4 fsで追加のファイルチェックを有効にするオプションはありますか? (ファイルシステムが遅くなるかどうかは気にしません。)

8
Rucent88

.6カーネルext4がサポートするためmetadataチェックサム (e2fsprogs 1.43+も必要になります)しかし、どれだけ安定しているかは明確ではありませんこの機能です。さらに、journal_checksum機能を使用してext4ファイルシステムをマウントできますが...

...それは過去のある時点のようです 人々はこれをデフォルトのオプションにしたかったのですが、この変更は問題のために起こりませんでした

8
Anon

ただし、死ぬかどうか、またいつ死ぬかを知り、読み取り専用で再マウントします。

問題が不良ブロックである場合、読み取り専用でマウントしても何も保存されません- ここの最初の段落 を見て、readエラーに関連する問題に注意してください。

ディスクを物理的に読み取らずに不良ブロックを検出する方法はないため、暗い部屋でマウストラップセットを検索する場合と同様に、チェック時に潜在的な問題を回避する方法はありません。ディスクに障害が発生していると思われる場合は、定期的にumountを実行し、すべてのパーティションでe2fsck -cを実行してください。これがルートファイルシステムであり、これを行うために、たとえばliveCDを使用する必要がある場合は、それを実行します。マニュアルページに従って;

-cこのオプションにより、e2fsckはbadblocks(8)プログラムを使用して、デバイスの読み取り専用スキャンを実行し、不良ブロックを検出します。 不良ブロックが見つかった場合、それらが不良ブロックiノードに追加され、ファイルまたはディレクトリに割り当てられなくなります。

ブロックにデータが含まれていた場合、サルベージされたバージョンmay/lost+foundディレクトリに最終的に格納されますが、よくわかりません。

これにはしばらく時間がかかる場合があることに注意してください。不良ブロックがある場合、スキャンによってシステム全体が何時間もロックされるI/Oの問題がトリガーされることがあります。しばらく離れて快適に歩いているときにこれを行ってください。

5
goldilocks

また、一般的に言えば、一部のユーティリティは状況のさまざまな側面を監視し、適切なアクションを実行できるようにします。

たとえば、smartmontoolsパッケージの smartctl ツールを使用すると、組み込みのSMART一部のドライブのステータス。

tune2fs コマンドを使用して、特定のターゲットでファイルシステムチェックの頻度を増やすこともできます。たとえば、tune2fs -c 1 targetは、ドライブが起動時にマウントされる前に、ほぼ毎回ドライブがチェックされるようにします。

3
user44370

IlluminÉの良い点。定期的に障害をチェックするバックグラウンドでsmartdを実行することは良いことです。

これのほかにあなたは使うことができます

e2fsck -fvy -c -c -C0 /dev/sda1

-f    Force checking even if the file system seems clean.
-v    Verbose mode.
-y    Assume an answer of `yes' to all questions
-C0   write  completion  information to stdout
-c -c If this option is specified twice, then the 
      bad block scan  will  be  done  using  a  non-destructive
      read-write test.

この非破壊的な読み書きテスト(-c -c)、読み取りエラーがあるかどうかを通知します。
ただし、時間がかかります。

そのため、新しいドライブを購入する前の輸送ソリューションである必要があります。

2
user55518