KVM也有,通过 virsh console 链接到guest,但是结果是这样:
再怎么打也没反应。
后来研究了一下,写下来。
下面的操作都在 虚拟机上做:
修改 /boot/grub/menu.lst 在 kernel 行最后添加 console=ttyS0,115200
修改 /etc/inittab 添加 co:2345:respawn:/sbin/mingetty ttyS0 115200 vt100
修改 /etc/securetty 到最后添加 ttyS0
重启就好了,可以看见从进入内核引导后的全部过程。
说一下原理
修改 menu.1st 让内核吧输出输出至 ttyS0
在inittab里加一个ttyS0在系统启动时会生成一个ttyS0来接收内核的数据
还有在 securetty里面要有不然也出不来。
根据这些要点 如果是自动部署 则需要注意下面几点
一,虚拟机部署安装脚本
virt-install -n Kvm-Server01 -r 512 --vcpus=1 -l http://10.10.10.100/64/5.8 --nographics --virt-type=kvm -f /dev/vg01/Kvm-Server01_sys -f /dev/vg01/Kvm-Server01_data -s 10 -w bridge:br1 --extra-args='console=tty0 console=ttyS0,115200n8 ks=http://10.10.10.100/ks/Vks/sxj/ks-kvm01.cfg' --connect qemu:///system
注意红字的地方,传递安装时的console参数和ks文件
二,ks-kvm01.cfg文件注意的地方,具体KS文件就不列出了。
1,bootloader --location=mbr --driveorder=vda,vdb --append="console=ttyS0"
指定内核参数console参数为ttyS0, 否则启动之后看不到内核引导信息。
2,%post
echo "ttyS0" >> /etc/securetty
sed -i 's/1:2345:respawn:\/sbin\/mingetty tty1/co:2345:respawn:\/sbin\/agetty ttyS0 115200 vt100-nav/' /etc/inittab
这2条写在post语句后面即可。
这样自动部署之后就不用手动去改这些参数了。