問題 :在Vmware裝了linux(redhat or centos),複制或者儲存ovf檔案重新deploy之後,發現找不到網卡eth0,
在輸入ifconfig–a的時候,,檢視eth0的時候,提示我no device found(裝置沒法找到),而是會順次将網絡資訊配置在eth1,再次複制會出現eth2,依次類推。。。
解決方法:
為什麼會産生這個問題呢,還需要從UUID談起(UUID是指在一台機器上生成的數字,它保證對在同一時空中的所有機器都是唯一的。通常平台會提供生成UUID的API),虛拟機同樣會有一個UUID,而且這個UUID是唯一的。
虛拟機的UUID一般和虛拟機配置檔案的位置和實體主機有關。當我們對一個虛拟機系統做移動操作的時候,我們不需要建立一個UUID。當我們複制一個虛拟機的時候我們應該選擇建立一個新的UUID,來保證此虛拟機的唯一性
而當我們copy的時候,VM自然會為我建立一個UUID,一些新的Linux版本是把以太網與Mac位址綁定,當新的UUID建立的時候,Mac位址就被改變了,但由于eth0裝置所裝載的配置與讀取預設配置的Mac位址不一緻。
另外的解決方案:進入/etc/sysconfig/network或者/etc/sysconfig/network-scripts,編輯eth0配置檔案。比較在配置檔案裡面的Mac位址與輸入ifconfig輸出的mac位址,如果兩者不一緻,統一為ifconfig輸出的mac位址,然後重新開機
sudo rm /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.
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rule written by anaconda)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:d2:3f:2c", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:87:43:18", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:87:43:22", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:c8:3a:15", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"
将這個/etc/udev/rules.d/70-persistent-net.rules删除,重新開機,網卡eth0成功啟動,并重新生成/etc/udev/rules.d/70-persistent-net.rules檔案
自己成功的做法是修改ifcfg-eth0檔案,把UUID和HWADDR這兩行登出掉,重新開機系統
删除/etc/udev/rules.d/70-persistent-net.rules檔案測試并不可行
\
本文轉自biao007h51CTO部落格,原文連結:http://blog.51cto.com/linzb/1738330 ,如需轉載請自行聯系原作者