一台rhel 6.2 x64的虚拟机,启动以后发现没有eth0,只有eth1,dmesg的时候看到一句:

udev:renamed network interface eth0 to eth1
网上查了一下,说是删除/etc/udev/rules.d/70-persistent-net.rules这个文件,重启就好了,我看了一下这个文件的内容:

# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:da:51:19", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:df:57:fa", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

删除这个文件并且重启以后,依然没有eth0而有eth1,再看文件内容:

# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:df:57:fa", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
把NAME字段的值改为"eth0",再重启系统就有eth0了。

这是一台虚拟机,刚把虚拟化文件复制到另一台电脑上并且开机,在原来的地方虚拟机没有这个问题,猜测是复制以后MAC地址发生变化的原因。





Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐