我有一个Ubuntu 14.10(x64)主机,我正在使用KVM在其上安装Windows 2012 R2 guest虚拟机。
我正在使用virt-install命令来设置。
我在/etc/network/interfacesbuild立了一个桥接networking,如下所示:
# The primary network interface auto br0 iface br0 inet dhcp bridge_ports eth0 bridge_stp off bridge_maxwait 0 bridge_fd 0
我的virt-install命令行是:
virt-install --connect qemu:///system --arch=x86_64 -n win2012 --ram 4096 --cpu host --vcpus=2 --hvm --disk size=80,sparse=false,format=raw,bus=virtio - -cdrom /srv/sunix/en_windows_server_2012_r2_with_update_x64_dvd_6052708.iso --os-type=windows --os-variant=win2k8 --network bridge=br0,model=virtio --noautoconsole Starting install... Allocating 'win2012-1.img' | 80 GB 00:00 Creating domain... | 0 B 00:01 Domain installation still in progress. Waiting for installation to complete.
在这一点上似乎已经等了很长一段时间了。 我想用vnc连接盒子看看发生了什么。
即使我使用了--noautoconsole ,我的理解是VNC显示器仍然应该默认创build。 但是,这是vncdisplay的输出:
virsh vncdisplay win2012 error: Failed to get VNC port. Is this domain using VNC?
这是domiflist的输出:
virsh domiflist win2012 Interface Type Source Model MAC ------------------------------------------------------- vnet0 bridge br0 virtio 52:54:00:1d:dd:ab
但是,根据我的本地DHCP服务器,该设备还没有试图要求DHCP租约。
我想这可能是因为我select的virtionetworking驱动器,而Windows 2012 R2并不支持它。
但是,还有什么方法可以连接到盒子吗?
另外,有没有什么问题可以在我设置这个客人的方式中看到?
我会在这里明确指定--graphics vnc ,只是为了确保。 在安装SPICE访客工具时一定要将其更改为SPICE。
另外,您select了Windows 2008作为您正在安装的操作系统。 为什么不是2012 R2? --os-variant win2k12r2
有2种VM VNC,
很显然,libvirt和qemu不知道'虚拟机自己提供的VNC',cmd'virsh vncdisplay'实际上是从'虚拟机pipe理程序提供的VNC'中提取vnc绑定信息,而你的虚拟安装命令行没有指示libvirt这样做。
所以,你的情况是不相容的来宾networking信息,@迈克尔汉普顿是正确的,你应该指定'vnc绑定信息',而你build立虚拟机。
如果你想保留你当前的虚拟机,但是需要附加'vnc bind info',那么这里是:
编辑= vim virsh编辑$ {你的域名}和一个这样的部分:
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' keymap='en-us'> <listen type='address' address='0.0.0.0'/> </graphics>
然后closures虚拟机并重新启动。 那么,我希望你能够'virsh vncdisplay'。 🙂