事象
あるファイルシステムのマウントが失敗している状況で
# mount -a ERROR
マシンのOSを再起動した場合にIPアドレス指定でSSHログインができなくなる。
環境情報
Linux | Red HaT EnterPrise Linux Server release 7.5 |
---|---|
補足 | ESXiはvCenterで管理. ESXi上にRHELが仮想マシンとして存在 |
原因/解決策
mount処理をブート時に失敗し、Linuxがメンテナンスモードで起動されていた。
対応としてvCenterまたはESXiからWebコンソールを起動し、ログイン。ログイン後はboot.logから原因を特定し、マウント失敗のみが原因であれば、以下のマウント用ファイルを編集した上で再起動を行う。
/etc/fstab
以下、補足です。
補足
Linuxでは、直前のブート時のログを以下ディレクトリに保持しています。
# ls -l /etc/log/boot.log -rw------- 1 root root XXX X月 XX XX:XX boot.log
ルートのみ読み込みが可能なファイルですが、機会があれば一度は見ておくことをお勧めします。
また、Linuxでは起動処理として以下の観点をチェックしながら進みます。
- デバイス周り
- ファイルシステム周り
- ネットワーク周り
そこでエラーが発生すればメンテナンスモードとして機能制限された状態となり、例えばネットワークインターフェイスの設定が読み込まれなかったりします。
ログイン後に下記ファイルの中身を見てください。
cat /var/log/boot.log
左側に[ OK ]となっていない箇所を確認し、/opt/のマウントが失敗していると仮定すると
対応としては、一旦自動マウントをとめてしまいます。
該当のファイルシステムが/dev/fstabにて以下フォーマットで管理されています。
/dev/mapper/rhel-opt /opt/ xfs defaults 0 0
こちらのdefaultsの箇所がマウントのオプションを管理する列であり、OSによって文法が異なりますので自動マウントしないよう設定します。
修正が完了すると以下コマンドで再起動すれば
# systemctl reboot
ネットワーク周りの設定が正しく認識され、デバイスにIPアドレスが割り当てられて正常に起動しているかと思います。
以上、同様の事象が発生した方は参考にしてください。