長い間運営されているサーバーがあります。再起動すると、次のメッセージが表示されます。
カーネル: EXT4-fs(sda3): 警告: 最大マウント数に達しました。 e2fsckの実行をお勧めします。
私の質問は:e2fsckを一度も実行したことがない場合はどうなりますか?マニュアルページには十分な指示がありません。警告メッセージには「推奨」と表示されますが、必須ではありません。
走らないとどんな結果が出ますか?
最大数に達するとはどういう意味ですか?
答え1
ext* ファイルシステムには、メタデータにいくつかの値があります。ファイルシステムをスキャンする前にマウントできる回数とスキャンの間の許容時間。
dumpe2fs
この値は、たとえばコマンドを使用して確認できます。
% sudo dumpe2fs -h /dev/vdb | egrep -i 'check|mount count'
dumpe2fs 1.42.9 (28-Dec-2013)
Mount count: 15
Maximum mount count: 25
Last checked: Sun Jan 2 22:03:00 2022
Check interval: 15552000 (6 months)
Next check after: Fri Jul 1 23:03:00 2022
これは、ファイルシステムが15回マウントされ、25回マウントされた後に確認する必要があることを意味します。最後の確認は2022年1月に行われる必要があるため、次の確認は2022年7月に行われるべきです。
tunefs
この値は-i
コマンドとオプションを使用して変更できます-c
。
そしてドラッグすることもできます。例えば
% sudo dumpe2fs -h /dev/vda3 | egrep -i 'check|mount count'
dumpe2fs 1.42.9 (28-Dec-2013)
Mount count: 138
Maximum mount count: -1
Last checked: Sun Jul 12 17:23:17 2015
Check interval: 0 (<none>)
これは基本的に「ディスクをチェックしてはいけません」を意味します。
今問題は定期的に実行する必要があります。
基本的に、定期的なスキャンの根拠は、ファイルシステムで不一致を見つけて修正しようとすることです。異常終了しない最新のシステム(クラッシュ、停電など)ではリスクが最小限に抑えられるため、これは不要です。
実際、大規模なファイルシステムやファイル数が多いファイルシステムでは、時間がかかることがあります。たぶん数時間くらい!
逆に、正しいエントリを持つ小さなファイルシステムでは、/etc/fstab
再起動時にこの現象が自動的に発生する可能性があり、再起動が少し遅くなります。
したがって、小さなファイルシステムを確認したいが、fstab
大規模なファイルシステムまたは多数のファイルを含むファイルシステムを許可しない可能性があります。
たとえば、Red Hatは、「通常はシステムが起動できない、ファイルシステムが非常に大きい場合、またはファイルシステムがリモートリポジトリにある場合を除き、fsckを無効にすることはお勧めできません」とアドバイスします。 (https://access.redhat.com/solutions/281123)