Jul
3
[原]解决Asianux 4.0 修改MAC地址后网卡不能启动的错误
用Vmware ESX 测试Asianux 4.0,无论用什么方式安装,到glibc-common时都提示介质错误。但改用真实笔记本就很正常,奇怪!后来,用最小化方式安装,又没有问题。完成后,用yum groupinstall 把各组件再加上去,暂时运行还挺正常。不过,当我修改了VMware 设置的网卡MAC 地址后,启动网卡时,报错:
这本是一个很常见的问题,本以为修改/etc/sysconfig/network-scripts/ifcfg-ethx中的HWADDR字段为新的MAC地址即可,却发现Asianux 4.0 下无效!?
经排查,原来新版本取消了kudzu,而硬件的激活都由udev负责。虽然lspci 能够正常认到网卡,但注释ifcfg-ethx的MAC字段,还是会报错的。
正确的办法是,修改/etc/udev/rules.d/70-persistent-net.rules 文件,例如:
把其中的address字段改为新的MAC地址,即可解决问题。
若网卡是可移动的,那也可通过这种方式把其用MAC地址固定在某个ethx设备上。
此外,Asianux 4.0 除了继续提供network 服务,用于管理网络信息。还有一个NetworkManager 的服务:
NetworkManager 提供图形下的状态显示,及一些辅助管理工具:nm-tool、nmcli 等,例如:
但NetworkManager 对网卡的状态监控不支持bridge(桥接)。而且当修改ifcfg-ethx文件后,不需重启network 服务,即会马上生效,这可能会给远程管理带来些问题,请留意!
还有,DNS 配置,已不单独存放到/etc/resolv.conf,而是放在ifcfg-ethx文件中,以DNS1、DNS2字段标注,例如:
引用
Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization. [FAILED]
这本是一个很常见的问题,本以为修改/etc/sysconfig/network-scripts/ifcfg-ethx中的HWADDR字段为新的MAC地址即可,却发现Asianux 4.0 下无效!?
经排查,原来新版本取消了kudzu,而硬件的激活都由udev负责。虽然lspci 能够正常认到网卡,但注释ifcfg-ethx的MAC字段,还是会报错的。
正确的办法是,修改/etc/udev/rules.d/70-persistent-net.rules 文件,例如:
引用
# cat 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, and change only the value of the NAME= key.
# PCI device 0x8086:0x100f (e1000) (custom name provided by external tool)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:85:44:3f", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# 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, and change only the value of the NAME= key.
# PCI device 0x8086:0x100f (e1000) (custom name provided by external tool)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:56:85:44:3f", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
把其中的address字段改为新的MAC地址,即可解决问题。
若网卡是可移动的,那也可通过这种方式把其用MAC地址固定在某个ethx设备上。
此外,Asianux 4.0 除了继续提供network 服务,用于管理网络信息。还有一个NetworkManager 的服务:
引用
# chkconfig --list|grep -i Network
NetworkManager 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
network 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
NetworkManager 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
network 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
NetworkManager 提供图形下的状态显示,及一些辅助管理工具:nm-tool、nmcli 等,例如:
引用
# nm-tool
NetworkManager Tool
State: connected
- Device: eth0 [System eth0] --------------------------------------------------
Type: Wired
Driver: e1000
State: connected
Default: yes
HW Address: 00:50:56:85:44:3F
Capabilities:
Carrier Detect: yes
Speed: 1000 Mb/s
Wired Properties
Carrier: on
IPv4 Settings:
Address: 192.168.228.216
Prefix: 24 (255.255.255.0)
Gateway: 192.168.228.153
DNS: 192.168.228.153
NetworkManager Tool
State: connected
- Device: eth0 [System eth0] --------------------------------------------------
Type: Wired
Driver: e1000
State: connected
Default: yes
HW Address: 00:50:56:85:44:3F
Capabilities:
Carrier Detect: yes
Speed: 1000 Mb/s
Wired Properties
Carrier: on
IPv4 Settings:
Address: 192.168.228.216
Prefix: 24 (255.255.255.0)
Gateway: 192.168.228.153
DNS: 192.168.228.153
但NetworkManager 对网卡的状态监控不支持bridge(桥接)。而且当修改ifcfg-ethx文件后,不需重启network 服务,即会马上生效,这可能会给远程管理带来些问题,请留意!
还有,DNS 配置,已不单独存放到/etc/resolv.conf,而是放在ifcfg-ethx文件中,以DNS1、DNS2字段标注,例如:
引用
# cat ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:50:56:85:44:3f
NM_CONTROLLED=yes
ONBOOT=yes
IPADDR=192.168.228.216
NETMASK=255.255.255.0
TYPE=Ethernet
GATEWAY=192.168.228.153
DNS1=192.168.228.153
IPV6INIT=no
USERCTL=no
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:50:56:85:44:3f
NM_CONTROLLED=yes
ONBOOT=yes
IPADDR=192.168.228.216
NETMASK=255.255.255.0
TYPE=Ethernet
GATEWAY=192.168.228.153
DNS1=192.168.228.153
IPV6INIT=no
USERCTL=no
naimeicun63
2011/07/29 09:26
博主的文章很不错,转载了。
分页: 1/1 1