app教程网 综合百科 linux虚拟机网卡不显示(vm虚拟网卡 不见了)

linux虚拟机网卡不显示(vm虚拟网卡 不见了)

Hyper-V下Linux虚拟机网卡丢失的原因及解决方案

虚拟化是大势所趋。该公司已经实施了虚拟化,并且全部使用带有Hyper-V的微软Windows 2008 R2企业版作为集群来运行Hyper-V虚拟机。这是一件好事,节约资源,

集中管理,省电,超快速部署,关键是实时迁移。

我们使用Dell MD3000i盘柜作为群集的共享磁盘,这是基于iSCSI的千兆以太网网络存储,一台Dell PowerEdge R610服务器构成一个Windows群集。

交换设备为juniper EX22000-48t-4G全千兆交换机,启用巨型帧支持。众所周知,微软的Hyper-V非常支持自己的windows虚拟机,而且它还有一个专门的驱动程序。

即便如此,我们还是在linux上运行了许多虚拟机,主要是因为windows的Hyper-V比ESX更便宜。

先说说linux虚拟机和Hyper-V. 1的一些尴尬事。网卡应该是旧的,Hyper-V上刚刚发布了驱动,打开Linux虚拟机最致命的就是网卡驱动。当我们创建一个新的Linux虚拟机时,

改进linux系统后发现网卡不能用了,因为无论是RHEL还是Ubuntu还是狗屁Linux系统都不支持Hyper-V网卡驱动。

这就需要我们在Hyper-V Manager中删除附着在Linux虚拟机上的网卡,然后添加一个遗留的网卡,可以模拟成经典的老式网卡。

Linux一般集成了这个网卡的驱动,装了网络就可以用了。好消息是,微软刚刚在8月份发布了Hyper-V下的虚拟机驱动程序,可以支持RHEL和Ubuntu。有需要的朋友可以在网上google一下,才几百K,很小了。

2.天哪~我的网卡呢?集群化之后,迁移是不可避免的。有时候我们的一台服务器需要重启维护,上面运行的虚拟机需要实时迁移到其他服务器上。迁移很顺利,但是Linux系统迁移完之后,

我找不到网卡。ifconfig只能看到lo的本地环回网卡。eth0在哪里?

赶紧看看网络配置,sudo vi /etc/network/interfaces,发现配置都在。为什么eth0不见了?用ifconfig -a检查所有网卡,发现eth0没了。

但是eth1更多。我灵机一动,修改了接口文件。

Sudo VI/etc/network/interface replaces eth0 with eth1, and then restarts the network service sudo/etc/init. d/network restart.

哈哈,网卡准备好了~ ~

3.又悲剧了。后来迁移了一个64位版本的ubuntu 9.10后,这招就不管用了,因为eth1也没找到。后来手动删除了Ubuntu的网络配置文件,重新启动,就没事了。

sudo rm /etc/udev/rules.d/70-persistent-net.rules

总结一下,linux网卡之所以会丢失,是因为Hyper-V默认分配的创建新虚拟机的网卡MAC地址是动态的,每一次主机迁移都会导致重新分配一个新的MAC到ubuntu,然后你就找不到eth0了。

有时会自动生成eth1。如果能记住旧MAC地址,在Hyper-V Manager中迁移前手动指定MAC为旧MAC也能解决问题,但问题是谁他妈的会记住MAC地址~ ~ ~?

所以清除ubuntu的网络配置缓存文件,或者在Hyper-V Manager上将分配给Linux的MAC地址设置为静态才是王道。

Hyper-V 1下安装Linux虚拟机的注意事项。创建虚拟机时,不要担心修整系统和用传统网络适配器更换网卡2。不要使用网卡的动态MAC地址。

指定为静态。3.微软刚刚在Hyper-V下发布了新的linux驱动,赶紧安装吧。4.ifconfig -a会在网卡丢失后查看eth0是否没有,eth1是否多余。

然后更改接口配置。5.最终的解决方案是删除linux网络配置缓存sudor um/etc/udev/rules . d/70-persistent-net . rules。

本文来自网络,不代表本站立场,转载请注明出处:https: