現象
Ubuntu 11.04が稼働しているマシンにsshなどでログインしたとき、初めに表示されるメッセージの中に「*** /dev/sda1 will be checked for errors at next reboot ***」という警告が表示される(「/dev/sda1」の部分は環境によって異なる)。しかし、再起動してもディスクのチェックは行われず、再度ログインするとこの警告も再度表示される。
原因
/etc/fstab中の当該パーティションについての行のpass列(行の最後)の数値が0に誤設定されているため。
解決方法
/etc/fstab中の当該パーティションについての行のpass列の数値を、それがルートパーティションなら1に、それ以外なら2に修正する。
補足
ユーザがパーティションを/etc/fstabに手で追加したときに時折起こるミス。ほかの行のpass列はほとんど0に設定されているので、それにならって漫然と0に設定してしまいがちだが、それは間違いなのである。0に設定されているのは、それらがswapやprocなどの特殊なパーティションでfsckが必要ないからである。
なお、正常にfsckが走っても、起動直後に少しの間このメッセージが残ったままになることがある。この場合、放っておくといつの間にか消えている。
参照
- ubuntu forums [ubuntu] Not checking for errors at boot. 最後の投稿参照。この投稿ではディスクチェック後0に戻してもよいとしているが、2のままにしておくのが正しい。
- man fstab