linux安装之后,有时总遇上一些奇葩的事情,其中网络无法激活,或者ifconfig后没有对应的本地eth#
我们先来说说fc14图形化界面,重装系统后无法激活,
首先查看网络设置里面-以太网设备--硬件设备要对应后面有显示网卡的,还有重新探测mac地址,
如果不行再看看--常规--把由networkmanager控制取消-只选当计算机启动时激活设备---然后进入服务--禁用networkmanager,启用network,然后重启后在激活
下面来谈一谈在没有图形化的时候无法联网的解决办法,首先使用lspci命令查看当前所有设备,里面会显示Ethernet就是我们网卡的型号,很多时候是因为我们系统不把网卡归到eth0二十在其他,比如eth13等,这样的话,mac地址和默认的eth0的mac地址不一样是不能联网的,或者可以查看记录文件cat /etc/udev/rules.d/70-persistent-net.rules 可以发现,记录了我们以前使用过的网卡的配置信息,名称mac等等,eth1到12都用过记录过,所以系统发现新的网卡,直接在后面添加了,我们可以删除这个文件,再重启一下,在配置
我们可以先看看iwconfig会看到无线的两个网卡,原来不是eth0而是eth13,我们拷贝eth0配置文件,把里面的名称改一下为13的,然后把
eth0改为13,onboot改为yes开机启动
或者HWADDR的值改成当前新主板的的MAC地址
(1)HWADDR=, 其中 以AA:BB:CC:DD:EE:FF形式的以太网设备的硬件地址.在有多个网卡设备的机器上,这个字段是非常有用的,它保证设备接口被分配了正确的设备名 ,而不考虑每个网卡模块被配置的加载顺序.这个字段不能和MACADDR一起使用。
(2)MACADDR=, 其中 以AA:BB:CC:DD:EE:FF形式的以太网设备的硬件地址.在有多个网卡设备的机器上.这个字段用于给一个接口分配一个MAC地址,覆盖物理分配的MAC地址 . 这个字段不能和HWADDR一起使用.
然后 service network restart 重启网卡就可以了,也可以参照下面的办法,更换为默认的eth0
inux虚拟机拷贝完成后,会出现网卡标示不是eth0,而且是eth1或者不同的网络标示。
这个问题是原因是文件/etc/udev/70-persistent-net.rules。在fedora中,udev记录网络规则的脚本为:/etc/udev/rules.d/70-persistent-net.rules
此文件记录了机器的网卡的相关信息。
打开该文件,这时你会发现,里面有eth0,eth1两个网卡的信息,但实际上你ifconfig时只能发现eth1一个网卡的信息,这时因为eth0根本就不存在。
将其中eth0的信息删掉,并将eth1信息中的设备名改为eth0,重启系统,你看到的网卡就是eth0了,或者删掉其中所有的信息重启系统udev会帮你发现新的设备的。
另外还有一个启动脚本文件/etc/sysconfig/network-scripts/ifcfg-eth0,该文件中的mac地址为原来eth0网卡的物理地址,而虚拟机为eth1分配新的物理地址,故启动脚本中的信息与实际信息时不匹配的,将MAC的地址信息修改为70-persistent-net.rules中的eth1的MAC地址,再次重启网络,就完全恢复到以前eth0网卡的状态了。
举例说明,在虚拟机1中有一块网卡,在卡机过程中,udev检测到此网卡,把网卡的相关信息写到文件
/etc/udev/70-persistent-net.rules(cat /etc/udev/rules.d/70-persistent-net.rules)中,系统创建设备节点eth0。然后使用命令ifconfig就能显示设备eth0。
然后将此虚拟机拷贝到另外的电脑中,虚拟机系统启动,系统会检测到新的网卡设备,由于文件/etc/udev/70-persistent-net.rules中已经记录的eth0设备的信息,所以系统会把新的网路设备标示为
Eth1,这样就造成使用ifconfig查看网络设别,给出设备标示为eth1.如此,如果再把这台虚拟机拷贝到别的
机器上,检测的网络设备会显示eth2
解决办法是清空文件 /etc/udev/70-persistent-net.rules ,在系统中执行以下命令清空文件或删除文件(root)
:> /etc/udev/rules.d/70-persistent-net.rules 最后把我们的配置文件里面的device=改为eth0,
重启系统,系统的网络标示会恢复成为eth0了(service network restart 没有效果知识重启网卡不会生成文件)
然后查看rules文件就会发现已经使用eth0了