お名前.comのVPSのUbuntu14.04でシリアルコンソールを有効化する


お名前.com の VPS のシリアルコンソールは、ttyS0 での接続となる。
Ubuntuは、デフォルトでは ttyS0 を開けていないため、開ける。
ちなみに、お名前.com のコントロールパネルからの接続はtty1。

ttyS0有効化

ttyS0 の設定ファイルを作成する。

$ sudo touch /etc/init/ttyS0.conf

ttyS0.conf の中身は以下。

start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn
exec /sbin/getty -8 115200 ttyS0

早速、ttyS0 をオープンする。

$ sudo start ttyS0

これで TeraTerm からの SSH でシリアルコンソールに接続できるようになる。

OS起動時の画面出力を ttyS0 にする

GRUB の設定を変更する。

$ sudo vi /etc/default/grub

コメントアウトの箇所を以下のように変更。

#GRUB_CMDLINE_LINUX=""
GRUB_CMDLINE_LINUX="console=tty1 console=ttyS0,115200n8r"
#GRUB_TERMINAL=console
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200 --word=8 --parity=no --stop=
1"

編集後、grup-update する。

$ sudo update-grub

(参考)TeraTerm からシリアルコンソールに接続する

コントロールパネルから、SSH Private Key を DL する。

vpsXXXXXXXXX-XXX.key

同じく、コントロールパネルに記載されている、ユーザ名でログインする。
「RSA/DSA/ECDSA/ED25519鍵を使う」の箇所に、Private Key を指定する。

パスフレーズは空のまま、接続する。

Ubuntu Server 18.04 LTS の場合(Update)

Ubuntu Server 18.04 LTSでは、以下を実施するのみで良くなった。
/etc/default/grubを編集する。変更箇所のみ記載。

#GRUB_CMDLINE_LINUX=""
GRUB_CMDLINE_LINUX="console=tty1 console=ttyS0,115200"

#GRUB_TERMINAL=console
GRUB_TERMINAL="console serial"
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"

Update-grubをして、Rebootする

$ sudo update-grub
$ sync;sync;sync
$ sudo reboot

以上。