關於CentOS 6克隆之後網卡問題的處理
阿新 • • 發佈:2018-03-28
Linux學習關於CentOS 6克隆之後網卡問題的處理
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/090701eb7fef48afce7cff8df0677e7d.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
查閱後資料後發現這個問題和udev有關。udev 是Linux kernel 2.6系列的設備管理器。它主要的功能是管理/dev目錄底下的設備節點。它同時也是用來接替devfs及熱插拔的功能,這意味著它要在添加/刪除硬件時處理/dev目錄以及所有用戶空間的行為,使用udev動態管理設備文件,並根據設備的信息對其進行持久化命名。udev會在系統引導的過程中識別網卡,將mac地址和網卡名稱匹配到udev的規則內。而對於新建的虛擬機,VMware會自動為虛擬機的網卡生成MAC地址,當對虛擬機克隆時候,由於使用的是以前系統虛擬網卡的信息,而該系統中已經有eth0的信息,對於這個新的網卡,udev會自動將其命名為eth1,所以在系統啟動後,使用ifconfig看到的網卡名為eth1。
問題解決
解決方案也很簡單,可以註釋掉/etc/udev/rules.d/70-present-net.rules文件內的舊網卡信息或直接刪除。保存後去修改網卡的配置文件。將原網卡配置文件內的設備名設置為eth1,MAC地址與70-present-net.rules內的eth1的MAC進行匹配(如果是靜態IP的話要註意修改與克隆源的ip不同)。之後重新啟動服務即可。由於剛入門,因此僅僅能修復問題,深層的問題將會在深入學習後作出補充~
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/327496854aab85099a7853a4a41295ee.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/9faa50e43441b18bfee42f30292012d3.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/26b6bb5ccf74e1fd07b00ebf690622a6.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
實驗設備:
??宿主機win10,軟件VMware Workstation 12 pro,CentOS 6.9最小化安裝版 (CentOS7未發現該問題)。如下圖:
問題來源:
??由於不想多次去安裝系統,配置靜態ip和本地yum源。突發奇想使用克隆功能可以實現快速部署多臺相同環境的系統。結果在完成克隆之後,通過ifconfig命令發現新的網絡端口eth1,且在/etc/sysconfig/network-scripts中不存在eth1的配置文件。(同時ip地址好像也是隨機獲取的,未作深入研究)
問題分析:
經過一段時間的查找後發現在/etc/udev/rules.d/70-present-net.rules文件中出現了關於eth0和eth1的信息,以及網卡MAC地址的變化信息。
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/090701eb7fef48afce7cff8df0677e7d.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
查閱後資料後發現這個問題和udev有關。udev 是Linux kernel 2.6系列的設備管理器。它主要的功能是管理/dev目錄底下的設備節點。它同時也是用來接替devfs及熱插拔的功能,這意味著它要在添加/刪除硬件時處理/dev目錄以及所有用戶空間的行為,使用udev動態管理設備文件,並根據設備的信息對其進行持久化命名。udev會在系統引導的過程中識別網卡,將mac地址和網卡名稱匹配到udev的規則內。而對於新建的虛擬機,VMware會自動為虛擬機的網卡生成MAC地址,當對虛擬機克隆時候,由於使用的是以前系統虛擬網卡的信息,而該系統中已經有eth0的信息,對於這個新的網卡,udev會自動將其命名為eth1,所以在系統啟動後,使用ifconfig看到的網卡名為eth1。
解決方案也很簡單,可以註釋掉/etc/udev/rules.d/70-present-net.rules文件內的舊網卡信息或直接刪除。保存後去修改網卡的配置文件。將原網卡配置文件內的設備名設置為eth1,MAC地址與70-present-net.rules內的eth1的MAC進行匹配(如果是靜態IP的話要註意修改與克隆源的ip不同)。之後重新啟動服務即可。由於剛入門,因此僅僅能修復問題,深層的問題將會在深入學習後作出補充~
#service network restart
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/327496854aab85099a7853a4a41295ee.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/9faa50e43441b18bfee42f30292012d3.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
![技術分享圖片](http://i2.51cto.com/images/blog/201803/28/26b6bb5ccf74e1fd07b00ebf690622a6.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
關於CentOS 6克隆之後網卡問題的處理