拷貝的Linux虛擬機「Device eth0 does not seem to be present, delaying initialization」問題解決方法

錯誤: 在Vmware/virtualbox上新建一個拷貝的Red Hat Enterprise Linux虛擬機,啓動時發現找不到網卡(上不去網):服務器

[root[@primary](https://my.oschina.net/primary) ~]# service network restart
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                               [  OK  ]
Bringing up interface eth0:  Device eth1 does not seem to be present, delaying initialization.
                                                                                [FAILED]

錯誤緣由: 克隆的Linux系統在新的機器上運行,新服務器網卡物理地址已經改變。而/etc/udev/rules.d/70-persistent-net.rules這個文件肯定了網卡和MAC地址的信息之間的綁定,克隆後的網卡的MAC已經發生了變化,因此致使系統認爲網絡設備不存在,網絡不能正常啓動。另一個就是/etc/sysconfig/network-scripts/ifcfg-eth0裏面MAC地址也是之前的舊信息。 關於/etc/udev/rules.d/70-persistent-net.rules這個文件,系統在啓動時會自動監測變化,而後由/lib/udev/write_net_rules寫入到/etc/udev/rules.d/70-persistent-net.rules中一個新的配置節,網卡的的序號依次遞增(如原來爲eth0,則修改第一後生成一個eth1,再次修改後生成一個eth2...),且其ATTR{address}的值爲當前網卡對應的mac地址。網絡

[root[@primary](https://my.oschina.net/primary) ~]# vi /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:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:2a:c4:f0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:1d:6d:0e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x8086:0x100e (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:8e:51:f6", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
"/etc/udev/rules.d/70-persistent-net.rules" 14L, 750C

[root@primary ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 看到裏面配置的的確是eth1的舊信息,實際是須要配置爲最新的eth2的信息。oop

解決方法: 1.編輯/etc/sysconfig/network-scripts/ifcfg-eth0配置文件,修改成eth2的配置信息並設置爲靜態:DEVICE=eth2, BOOTPROTO=static, HWADDR=08:00:27:8e:51:f6 2.重啓網卡服務成功便可。.net

[root[@primary](https://my.oschina.net/primary) ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth2
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
DNS1=114.114.114.114
IPADDR=192.168.100.238
NETMASK=255.255.255.0
GATEWAY=192.168.100.254
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth2"
UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
HWADDR=08:00:27:8e:51:f6
LAST_CONNECT=1464664485
USERCTL=no
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
~                                                                                          
"/etc/sysconfig/network-scripts/ifcfg-eth0" 18L, 341C
[root[@primary](https://my.oschina.net/primary) ~]# service network restart (或者/etc/init.d/network restart)
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                               [  OK  ]
Bringing up interface eth0:  Determining if ip address 192.168.100.238 is already in use for device eth2...
                                                                                 [  OK  ]

[root[@primary](https://my.oschina.net/primary) ~]# ifconfig
eth2      Link encap:Ethernet  HWaddr 08:00:27:8E:51:F6  
          inet addr:192.168.100.238  Bcast:192.168.100.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe8e:51f6/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3378 errors:0 dropped:0 overruns:0 frame:0
          TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:234683 (229.1 KiB)  TX bytes:776 (776.0 b)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:15 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:901 (901.0 b)  TX bytes:901 (901.0 b)
相關文章
相關標籤/搜索