最近,在做linux虚拟机上做实验时,发现不能启动linux的网卡,
当我用ifconfig命令时,只有如下的信息出现:
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2411 errors:0 dropped:0 overruns:0 frame:0
TX packets:2411 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:4284220 (4.0 MiB) TX bytes:4284220 (4.0 MiB)
根本就没有mac层地址出现,也没有eth0网卡的 信息!!于是我调用命令:system-config-network,调出网卡设备的显示,上面显示eth0是inactive,当时当我点击activate时,有如下警告弹出:Device eth0 has different MAC address than expected, ignoring.在网上搜索了很多信息,都不能解决,其中有个是说找到,linux系统的 /etc/udev/rules.d/70-persistent-net.rules这个文件,但是我找了我linux虚拟机,发现文件夹下没有这个文件。找了很久都不知道怎么解决。后面看到帖子说用记事本打开虚拟机的安装目录,即用记事本打开后缀名为。vmx的那个文件。找到虚拟机的Ethernet.address的值(或者说是mac值,),/etc/sysconfig/network-scripts/ifcfg-eth0的MACADDR或者是HWADDR的值即可!但是我用记事本打开那个vmx文件后,发现根本就没有address字段的变量;就在我心灰意冷时,我突然看到有个变量ethernet0.present="",我在想是不是这个就表示eth0网卡呢?于是我把thernet0.present的值改为true,,再重新开启虚拟机,调用命令:ifconfig -a,就出现了eth0的信息:
eth0 Link encap:Ethernet HWaddr 00:0C:29:DC:73:99
inet addr:10.66.152.18 Bcast:10.66.159.255 Mask:255.255.224.0
inet6 addr: fe80::20c:29ff:fedc:7399/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:157 errors:0 dropped:0 overruns:0 frame:0
TX packets:72 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:12093 (11.8 KiB) TX bytes:11647 (11.3 KiB)
Interrupt:67 Base address:0x2024
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2411 errors:0 dropped:0 overruns:0 frame:0
TX packets:2411 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:4284220 (4.0 MiB) TX bytes:4284220 (4.0 MiB)