Dell的Optilex745最近出了些问题, 报告给DELL后,那边今天派人来了,解决方案倒是简单, 直接更换了主板.
换完后,启动了一下,没去连接网络, 所以就没发现问题. 等到后来弄到机房启动机器, 发现机器无法访问网络了.
用ifconfig一看,有两个网络设备:lo 和 eth1,
再查看一下/etc/network/interfaces,发现条目是lo和eth0,
执行ifup --force eth0, 提示设备不存在
也就是说, 主板没更换前, 网卡被命名为eth0,而现在被命名为eth1,eth0已经不复存在了.
解决方法有两种:
1 更改/etc/network/interfaces,将eth1都改为eth0, 我先这样作了一下,而后/etc/init.d/networking restart重启网络服务, 结果就可以访问网络了.
我发现/etc底下还有某些配置文件使用eth0, 但是也不多. 这种情况好办, 将这些文件用sed作一次替换就可以了, 使用这些配置的软件就不会有问题了.
只是,google一下,发现其实有些软件默认使用的就是eth0,eth1对他们来说无效.
2 所以,最好的方式,还是让该网卡被命名为eth0, 看到有些机器上有ifrename,试了一下,发现不存在. 于是,就只有修改配置文件了, 该配置文件是/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.
# PCI device 0x14e4:0x167a (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:19:b9:43:c7:86", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x14e4:0x167a (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1a:a0:bd:14:05", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
修改一下该文件,将eth0的那行注释掉,而后将eth1改为eth0
而后再重启网络服务, 这样该网卡就变为了eth0,既不需修改其他配置文件,又不会对以后装软件造成影响了.
阅读(2160) | 评论(0) | 转发(0) |