克隆虛擬機導致Linux無法啓動網卡的分析與解決

             在公司克隆linux虛擬機可以直接編輯網卡配置文件直接使用,在家就不行,有點鬱悶,然後在網上查了下資料,試了下,下面總結了下網卡無法啓動的原理和解決方法:


                 報錯信息:Device eth0 does not seem to be present,delaying initialization.
                             
           

 

            原理分析:   做什麼事咱得知道原理才能真正搞明白是不,其實這個Vmware克隆挺智能的,它在克隆新虛擬機的時候,會自動爲新克隆虛擬機配置一個與原來虛擬機不同MAC地址的網卡
                                
                                很多Linux發行版使用udev動態管理設備文件(關於udev請查看百http://baike.baidu.com/view/755910.htm),並根據設備的信息對其進行持久化命名,例如:RedHat6.3中,udev會在系統引導過程中識別網卡,將mac地址和網卡名稱對應起來記錄在udev的規則腳本中(文件在/etc/udev/rules.d/70-persistent-net.rules中)。而VMware克隆會自動生成虛擬機的新MAC地址。所以現在新虛擬機網卡MAC地址已經和原先不同,但/etc/udev/rules.d/70-persistent-net.rules配置文件中記錄的MAC還是以前的MAC地址,也就是說上圖這個報錯信息真正的意思是系統MAC地址和配置文件記錄MAC地址不一致有衝突導致重啓網卡有問題

                             這樣,由於基本系統的虛擬機已經記錄了該虛擬機的網卡mac地址對應於網卡eth0,在克隆出的虛擬機中由於mac地址發生改變,udev會自動將該mac對應於網卡eth1。以此類推,udev會記錄所有已經識別的mac與網卡名的關係,所以每次克隆網卡名稱會自動加1,而其實kernel僅僅只識別到一張網卡,跟網卡名相關的網絡配置也未發生任何變化。



                                解決方法:1、你如果實在不理解上面說的亂七八糟的原理,這有一個最簡單的方法,直接刪除/etc/udev/rules.d/70-persistent-net.rules配置文件內容、或直接刪除此文件,然後reboot,系統會重新生成最新配置文件
                                                2、這個方法也很簡單,你在新虛擬機裏,把rules文件裏刪除或註釋掉原先老MAC和eth0對應的那一行,然後把新MAC和eth1對應那行,修改eth1爲eth0,這樣你/etc/udev/rules.d/70-persistent-net.rules文件記錄和/etc/sysconfig/network-script/ifcfg-eth0文件記錄想匹配,然後reboot,大功告成!




                   這裏有點注意的是:如果你網卡配置文件裏也有MAC記錄的話,最好把新MAC替換掉舊MAC、或直接省事把MAC記錄給刪了就OK。

兩種方法我都成功試過,我用的是RHEL6.3系統,這是我配置成功後的截圖,這裏我直接把網卡配置裏MAC記錄給刪了,然後因爲我是有兩個網卡,所以克隆後產生了4段MAC記錄,按照遞推第三和第四段落分別就是我的eth0、eth1網卡 


            
 

 
 
 
 
 
                                                                                                                                                                                                                                                                                                            吳晗.2013.4.5 凌晨1:58完成
                                                                                                                                                                                            

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章