事象内容

virsh console コマンドで仮想マシンのコンソールに接続すると、応答がなく接続ができない。

[yuji@localhost ~]$ sudo virsh console demo
[sudo] yuji のパスワード:
ドメイン demo に接続しました
エスケープ文字は ^] です

※ これ以降 反応がなく接続が進まない
" Ctrl " + " + " + " ] " で コマンドを中断できます。

解決方法

/etc/default/grub の GRUB_CMDLINE_LINUX のパラメーターに、console=tty0 console=ttyS0,115200n8r を追加する。
注 ) コンソール接続ができない仮想マシン(demo)に対して行います。 物理マシンに対して実施すると、物理マシンの再起動後に物理マシン自体が起動しなくなります。

$ sudo vi /etc/default/grub 

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

以下のコマンドを実施し、GRUB_CMDLINE_LINUX のパラメーターに追加する。

$ sudo sed -i '/GRUB_CMDLINE_LINUX=/s/"$/ console=tty0 console=ttyS0,115200n8r"/' /etc/default/grub
$

/etc/default/grub の GRUB_CMDLINE_LINUX のパラメーターに、console=tty0 console=ttyS0,115200n8r が追加されていることを確認する。

$ sudo vi /etc/default/grub 

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL="serial console"
GRUB_SERIAL_COMMAND="serial --speed=115200"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos00/root rd.lvm.lv=centos00/swap rhgb quiet console=tty0 console=ttyS0,115200n8r"
GRUB_DISABLE_RECOVERY="true"

ブートローダーの設定を更新して変更を反映させます。

$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-862.14.4.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-862.14.4.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-862.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-862.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-39fe64fd675a43168400b488539a1106
Found initrd image: /boot/initramfs-0-rescue-39fe64fd675a43168400b488539a1106.img
Found CentOS Linux release 7.5.1804 (Core)  on /dev/mapper/centos-root
done
$ 

仮想マシン(demo)を再起動する。

$ reboot
$

仮想マシン(demo)起動後、demoのコンソールに接続できることを確認する。

$ sudo virsh console demo
ドメイン controller に接続しました
エスケープ文字は ^] です

CentOS Linux 7 (Core)
Kernel 3.10.0-862.14.4.el7.x86_64 on an x86_64

login: