克隆Linux提示eth0找不到解決方法
克隆Linux提示eth0找不到解決方法
在Vmware裝了Ubuntu 9.04 Server,今天在啟動(dòng)的時(shí)候,發(fā)現(xiàn)找不到網(wǎng)卡eth0,在輸入ifconfig –a的時(shí)候,也沒有任何Ethnet的信息,而輸入eth0 down 的時(shí)候,提示我no device found(設(shè)備沒法找到)這可怎么辦呢?下面跟著學(xué)習(xí)啦小編一起來了解一下吧。
克隆Linux提示eth0找不到解決方法
解決方案:將eth0配置回來
修改/etc/udev/rules.d/70-persistent-net.rules文件
將PCI device 0x1022:0x2000 (vmxnet)用#注釋,將PCI device 0x1022:0x2000 (vmxnet)中的eth2修改為eth0,記住MAC地址ATTR{address}=="00:0c:29:ab:c5:2c",退出保存。
修改網(wǎng)卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0
修改ip地址:IPADDR=192.168.0.102(因?yàn)槲也庞胔ost-only的鏈接方式,所以是靜態(tài)ip),修改MAC地址HWADDR=00:0C:29:AB:C5:2c,退出保存。
修改/etc/sysconfig/network文件中主機(jī)名 HOSTNAME=hadoop2
執(zhí)行命令:service network restart,會(huì)出現(xiàn)eth0生效的提示信息。
Bringing up interface eth0: Active connection state: activating
Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/1
state: activated
Connection activated
最好reboot重啟一下。
[root@hadoop2 ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:AB:C5:2C
inet addr:192.168.0.102 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feab:c52c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:177 errors:0 dropped:0 overruns:0 frame:0
TX packets:61 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:17634 (17.2 KiB) TX bytes:7611 (7.4 KiB)
Interrupt:19 Base address:0x2024
VMWare克隆或復(fù)制Linux虛擬機(jī)后無法上網(wǎng)的解決
原因分析:
很多Linux distribution使用udev動(dòng)態(tài)管理設(shè)備文件,并根據(jù)設(shè)備的信息對(duì)其進(jìn)行持久化命名。例如在Debian etch中,udev會(huì)在系統(tǒng)引導(dǎo)的過程中識(shí)別網(wǎng)卡,將mac地址和網(wǎng)卡名稱對(duì)應(yīng)起來記錄在udev的規(guī)則腳本中。而VMware會(huì)自動(dòng)生成虛擬機(jī)的 mac地址。這樣,由于基本系統(tǒng)的虛擬機(jī)已經(jīng)記錄了該虛擬機(jī)的網(wǎng)卡mac地址對(duì)應(yīng)于網(wǎng)卡eth0,在克隆出的虛擬機(jī)中由于mac地址發(fā)生改變,udev會(huì)自動(dòng)將該mac對(duì)應(yīng)于網(wǎng)卡eth1。以此類推,udev會(huì)記錄所有已經(jīng)識(shí)別的mac與網(wǎng)卡名的關(guān)系,所以每次克隆網(wǎng)卡名稱會(huì)自動(dòng)加1,而其實(shí)kernel 僅僅只識(shí)別到一張網(wǎng)卡,跟網(wǎng)卡名相關(guān)的網(wǎng)絡(luò)配置也未發(fā)生任何變化。
解決方案:
網(wǎng)絡(luò)搜索發(fā)現(xiàn)在Debian etch下,udev將mac與網(wǎng)卡名稱的對(duì)應(yīng)關(guān)系保存在/etc/udev/rules.d/z25_persistent-net.rules中,在克隆出的虛擬機(jī)中只要?jiǎng)h除跟NAME="eth0"相關(guān)的行并重啟系統(tǒng)即可。例如在Debian etch中刪除如下兩行:
# PCI device 0x1022:0x2000(pcnet32)SUBSYSTEM=="net",DRIVERS=="?*",ATTRS{address}=="00:0c:29:4c:46:01",NAME="eth0"
在我的fedora9 下修改/etc/udev/rules.d 下的 70-persistent-net.rules 文件刪除
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rule written by anaconda)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:ad:06:2a", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
然后把eth1對(duì)應(yīng)的哪一行的"eth1"修改為"eth0"即可。
另外一種方法是:把里面的內(nèi)容都刪除,然后重新啟動(dòng),系統(tǒng)也會(huì)重新發(fā)現(xiàn)網(wǎng)卡硬件,重新產(chǎn)生該文件
上面就是VMware克隆Linux提示eth0找不到的解決方法的介紹了,如果你也遇到了這種問題,可以安裝本文介紹的方法進(jìn)行處理,希望對(duì)你有所幫助。