我有一台运行Proxmox(虚拟化平台)的服务器,并使用Ubuntu Server 12.10创build了一个KVM虚拟机。 configurationnetworking后,一切工作正常,但如果我添加到该虚拟机的第二个networking适配器,它不被识别。 dmesg | grep -i eth只显示一个接口(eth0)。
编辑:
root@ubuntuserver1:~# lspci 00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02) 00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II] 00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] 00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01) 00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03) 00:02.0 VGA compatible controller: Cirrus Logic GD 5446 00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 20)
基于KVM和qemu的虚拟机只是stream程。 磁盘是分配给进程的资源。 如果添加磁盘,但不重新启动进程,则不会被检测到。 重新启动虚拟机不会重新启动,而是模拟实际的重新启动。 所以当你停止/启动虚拟机时,它实际上会杀死虚拟机进程,并以新的设置启动它。
对不起,事情当然是比较复杂的,而且我过于简单了,但是一旦你知道事情是如何运作的,我发现它比“做A然后事情会点击”
PS:较新版本的qemu-kvm具有磁盘和NIC的热插拔function
终于find了解决办法。 重新启动机器是不够的,需要停止VM并重新启动。
如此简单,如此烦人