Help us understand the problem. What is going on with this article?

OS起動時にfsckが自動実行されるのを防止する

More than 3 years have passed since last update.

一定期間でOS起動時にfsckが実行される

Linuxでは一定期間ファイルシステムのチェックを行っていないと、起動時にチェックを行う機能がありますが、これを忘れたまま再起動を行うと数分のダウンのはずが、予測していなかった大幅なダウンタイムとなってしまう場合もあると思います。
※AmazonLinuxなどデフォルトで無効となっているディストリビューションもあります。

ec2の場合は、起動時にfsckが走ると、ネットワークサービスが起動していないのでStatus Checksがpassedにならず、
status fail.png

Get System Logを確認すると

syslog.png

root has gone xxx days without being checked, check forced.

のような出力で止まっている(チェック中)ことが確認できると思います。

こうなってしまえばもう待つしかありません。

fsckの自動起動を停止

もちろん定期的にfsckをしなくていいというわけではありませんのが、
予期せぬfsckを防ぐためには、以下の2つの方法があります。

fstabで起動時のチェックを無効化

第6フィールドの数値を「0」に変更します。

vi /etc/fstab
-------
LABEL=root      /        ext3   defaults       1 1
↓修正↓
LABEL=root      /        ext3   defaults       1 0
-------

tune2fsでチェック期間を無期限に

tune2fs -i 0 /dev/sda1

tune2fs -l /dev/xvde1 | grep -i interval
--------
Check interval:           0 (<none>)
--------

※マウント回数でfsckが実行される設定もあるので、その場合は以下で無効に設定できます

tune2fs -c 0 /dev/xvde1

(おまけ)スペックの違いによるfsckからの起動時間

fsckの実行時間は環境によると思いますので、参考まで。
それぞれ1回しか試していません。
環境はCentOS5/ディスク30GB(IOPSのインスタンスはは起動時に100GBに変更)です。

インスタンスサイズ ディスク 起動までの時間
m1.small(1core/1.7GB) Magnetic 48分
m1.small(1core/1.7GB) プロビジョンド iops(3000) 48分
c3.8xlarge(32core/60GB) Magnetic 48分

IOが高速だとfsckも早くなると予想したのですが、意外な結果が...

biatunky
田舎のクラウド屋さんです
https://heptagon.co.jp
heptagon
東北を拠点としてクラウドのインテグレーションサービスを行っています。
https://heptagon.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away