Posted at

Azure のシリアルコンソールを使って Linux OS の ブートメッセージ を見られないときのトラブルシューティング


はじめに

Azure ではシリアルコンソールを利用してシングルユーザモードになれたりする のだが、ブートメッセージが出てこなかったため、原因と対策を考える


事象

過去に作ったCentOS 7.3 を利用して発生。シリアルコンソールを繋ぎながら再起動してもブートメッセージの画面が出てこない。

下記は最新の CentOS 7.5 をマーケットプレイスから作成して同じ操作をして出てくる画面

image.png


原因

/boot/grub2/grub.cfg を比較すると、新しいマシンの方にいくつか古い方に見られない行があった。

# sdiff grub.cfg_cent75 grub.cfg_cent73


(中略)

serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1 | terminal_output console
terminal_input serial console <
terminal_output serial console <

(後略)

以下のサイトによると、シリアルデバイスのイニシャライズができていなかったから...?

https://www.gnu.org/software/grub/manual/grub/grub.html#serial

CentOS 7.3 でもシリアルコンソール自体はできるが、起動時にブートメッセージを表示するにはこの行が必要なのかもしれない。

serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1


対策

当該行を grub.cfg に追記したら無事にブートメッセージが表示されるようになった。

image.png

参考になれば幸いです。