500,000個のファイルを持つ2TBのext4パーティションがあります。
このパーティションにエラーがあるかどうかを確認したいと思います。
不良ブロックを検索したくなく、論理構造だけを確認するだけです。
パーティションをアンマウントして実行しましたが、fsck /dev/sda2
実際にファイルシステム全体を確認せずに、fsckはすぐに終了コード0を返します。
完全なパーティション検査が完了するまでに数時間かかることが予想されます。
読みましman fsck
たが、「徹底的なテスト」のオプションが見つかりませんでした。
私のパーティションには、一部のセクタが誤ってジャンクデータで上書きされている可能性があるという心配があります。
私のHDDが以前に他のOSに接続されていて、そのOSの誤った動作によりext4パーティションが破損する可能性がありました。
そのため、ツリー構造全体が正確に正しいことを確認したいと思います。
つまり、chkdsk.exe
Windowsでユーティリティが実行するのと同様のチェックを実行したいと思います。
Debian で ext4 ファイルシステムを完全にスキャンするには、何を使うべきですか?
答え1
言ったように桂里、e2fsck
「強制」モードで実行:
e2fsck -f /dev/sda2
これは、システムがファイルシステムがきれいであると思う場合でも、強制的にチェックを実行します。 「Verbose」オプションも便利です。
e2fsck -vf /dev/sda2
ちなみにあなたの場合には適用されませんが、保存にLVMを使用している場合は、きちんとした小さなものを使用できますlvcheck
マウントされたファイルシステムで「オフライン」ファイルシステムチェックを実行するためのツールです(スキャンでエラーが見つからない場合は、LVMスナップショットを使用してファイルシステムメタデータを更新します)。
答え2
答え3
Linuxシステムの起動時に確認システムテーブルforcefsck
または、デバイスのルートディレクトリに名前付きファイルがある場合。 fstabのマウントラインの最後の番号がある場合は、0
起動中にデバイスを確認してください。ファイルを生成するには、forcefsck
次のコマンドを使用します。
sudo touch /forcefsck
sudo reboot
このファイルをルートディレクトリに配置すると、fstabの内容に関係なく(再)起動中に同じボリュームを確認します。
欠点は、fsck中にシステムを使用できないことです。いいえたとえば、SSHを介してリモート要求に応答します。
(@kusalanandaのコメントに基づいて編集)
答え4
また、使用することができます2fs調整この目的のために、たとえば、次のコマンドは2ヶ月または100回のインストール後にディスクを確認します。
tune2fs -c 100 -i 2m /dev/sda1