我们有一个在带有 KVM/QEMU 的 Ubuntu 12.04 上运行的 Vserver 主机,到目前为止,客户机在各种操作系统(Ubuntu 10.04、12.10、Debian 6.7、CentOS 5.6)上运行良好。
在安装 Ubuntu 14.04 Server(通过 PXE 运行良好)之后,客户机在启动过程中冻结,并出现黑屏,然后才出现 Ubuntu 加载徽标。
当输入错误的网络设置时,Ubuntu 加载徽标出现,但系统在“等待网络 60 秒后冻结。
替换quiet splash $vt_handoff
启动参数有助于single
系统启动,输入root密码后,可以启动ssh,并可以通过ssh访问服务器。
只需删除quiet splash $vt_handoff
,显示的最后一条消息是“停止 System V 运行级别兼容性 [OK]”
我只是无法在日志中找到任何线索,因为在正常启动并冻结时没有生成任何日志,只有在“单一”启动时才会生成日志。
我也尝试添加启动参数,debug verbose plymouth:debug
但没有成功。
这是 Ubuntu 14.04 客户的 xml 配置:
<domain type='kvm' id='254'>
<name>name</name>
<uuid>cb6cb7e9-4399-603e-56ce-887f77985bc2</uuid>
<memory>1048576</memory>
<currentMemory>1048576</currentMemory>
<vcpu>1</vcpu>
<sysinfo type='smbios'>
<system>
<entry name='manufacturer'>Name</entry>
</system>
</sysinfo>
<os>
<type arch='x86_64' machine='pc-0.14'>hvm</type>
<boot dev='network'/>
<boot dev='hd'/>
<bios useserial='yes'/>
<smbios mode='sysinfo'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/bin/kvm</emulator>
<disk type='block' device='disk'>
<driver name='qemu' type='raw'/>
<source dev='/volumes/name'/>
<target dev='sda' bus='virtio'/>
<alias name='virtio-disk0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</disk>
<controller type='virtio-serial' index='0'>
<alias name='virtio-serial0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</controller>
<interface type='bridge'>
<mac address='ab:cd:ef:ab:cd:ef'/>
<source bridge='br0'/>
<target dev='vnet14'/>
<model type='virtio'/>
<alias name='net0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<serial type='pty'>
<source path='/dev/pts/31'/>
<target port='0'/>
<alias name='serial0'/>
</serial>
<console type='pty' tty='/dev/pts/32'>
<source path='/dev/pts/32'/>
<target type='virtio' port='0'/>
<alias name='console0'/>
</console>
<input type='mouse' bus='usb'>
<alias name='input0'/>
</input>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='5914' autoport='yes' listen='0.0.0.0' keymap='de'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<video>
<model type='cirrus' vram='65536' heads='1'/>
<alias name='video0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
<memballoon model='virtio'>
<alias name='balloon0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</memballoon>
</devices>
</domain>
因为它是服务器安装,所以没有安装 GUI,也没有安装显示管理器。
因此,这似乎是所用内核和所发布的 kvm/qemu 版本组合的问题。
我建立了一个新的服务器来尝试一下,以下是我所发现的:
| 主机 | 主机内核 | 客户机 | 客户机内核 | 结果 | | 12.04.4 | 3.2 | 12.04.4 | 3.2 | 确定| | 12.04.4 | 3.11 | 12.04.4 | 3.11 | 访客冻结,无法接通 | | 12.04.4 | 3.13 | 12.04.4 | 3.11 | 控制台/VGA 冻结 / 访客可访问 | | 12.04.4 | 3.13 | 12.04.4 | 3.13 | 控制台/VGA 冻结/访客可访问 | | 12.04.4 | 3.2 | 14.04 | 3.13 | 访客冻结,无法接通 | | 14.04 | 3.13 | 12.04.4 | 3.11 | 确定| | 14.04 | 3.13 | 14.04 | 3.13 | 确定|
使用的 KVM/libvirt 版本是特定存储库中的最新版本。