用Virtualbox做了一個centos6, 另外再備份出來一份centos6 VM拿出來用,啟動系統後,出現了一個怪問題,eth0網卡啟動不了. 原因出現在備份VM時我選擇了重設網卡的mac.

 

網路上找到有人遇到相同的問題, 查測網路卡問題

1.看開機流程時抓到的硬體(使用dmesg)出現了一個特別的訊息,

  udev: renamed network interface eth0 to eth1

 

2.查看/proc/net/dev,抓到的網路卡是eth1

  eht1:    30634      820  0      0      0      0      0      0      4401        36    0      0      0      0      0      0

 

3.使用lspci查看,網路卡是有抓到的

02:01.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (ewv 10)

 

其實,到這裡就可以很清楚的知道,為什麼eth0不見了,啟動eth0會出現,網路卡初使化異常

ifup eth0

Device eth0 does not seem to be present, delaying initialization.

 

在尋找資料的過程中,找到了這一篇文章http://blog.xuite.net/happyman/tips/16199196,指點清楚的說明了開機中這段訊息出現的原因(udev: renamed network interface eth0 to eth1)。因為第一張網卡的MAC Address被鎖定在eth0資料中,udev自動產生了第二張eth1這張網卡,導致towns原先的設定檔/etc/sysconfig/network-scripts/ifcfg-eth0設定檔無法使用,網路卡自然就無法啟用了,最主要造成該問題的就是towns啟動VM的第一個流程“重掛Fedora 10VM”,網路卡的MAC Address改變了,這樣的問題會發生在換網卡後,網路無法啟動。

 

處理方式,將/etc/udev/rules.d/70-persistent-net.rules這個檔案刪除,重新啟動server,該檔案就會被重建,MAC Address也會重抓

 

註:Centos6 產生該檔案(70-persistent-net.rules)的程式與ubuntu並不同,在該檔案中,有詳細的說明