ブート時のfsckの間隔の設定

Linuxでブート時のfsckの間隔を変更する。

ハードディスクの状態確認

現在のハードディスクの設定内容と状態は dumpe2fs や tune2fs コマンドで確認できる。
例えば、/dev/hda1 を確認する場合、以下のようにする。

Linux# dumpe2fs /dev/hda1 <= dumpe2fs コマンドの場合
Linux# tune2fs -l /dev/hda1 <= tune2fs コマンドの場合

ここで、必要な情報は以下の通り。

Mount count:              7 <= 前回のfsckからマウントした回数
Maximum mount count:      24 <= この回数マウントしたらブート時にfsckを行う
Check interval:           15552000 (6 months) <= この期間経過したらブート時にfsckを行う

fsckの回数の変更

サーバで利用する場合は大体上記の設定で問題ないが、クライアントとして使う場合、マウント回数が多くなるのが一般的なので、間隔を変更する。
ここでは、Maximum mount countを512回に変更する。
これで上記の設定から変更した場合、512回マウントするか、180日経過するかの早い方でfsckが行われる。
Check intervalも変更したい場合、-i オプションで指定する。
-i オプションでは、数値のみ、あるいは末尾に d を付けると「日」となり、w は「週」、m は「月」となる。
また、Maximum mount count、Check interval共に 0 とした場合、起動時に自動ではfsckが行われなくなる。
なお、作業はルートパーティション以外ならアンマウントして変更する。
ルートパーティションの場合、シングルユーザモードで起動し、リードオンリーでマウントして作業を行う。

ルートパーティション以外の場合

Linux# umount /dev/hda2 <= 変更したいパーティションをアンマウント
Linux# tune2fs -c 512 /dev/hda2 <= Maximum mount countを512回に変更

ルートパーティションの場合

Linux# sync;sync;sync
Linux# init 1 <= シングルユーザモードに変更
Linux# mount -o ro,remount / <= リードオンリーでルートパーティションをリマウント
Linux# tune2fs -c 512 /dev/hda1 <= Maximum mount countを512回に変更

ただし、ルートパーティションの場合、上記のように行うよりは、出来るだけブートローダでシングルユーザモード、 リードオンリーモードに変更してLinuxを起動し、作業を行うのが望ましい。

▲ページのトップへ