在具有 4 个、6 个或更多接口的服务器上安装带有较新内核的 Squeeze 时,我不断遇到这个非常烦人的问题:接口总是在卡之间混合在一起,甚至不遵循升序的硬件地址顺序。这是怎么回事?
具有 2 个双端口 GigE 卡的计算机上的 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:0x105e (e1000e)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="68:05:ca:04:f8:5e", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x8086:0x105e (e1000e)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="68:05:ca:04:f8:5f", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
# PCI device 0x8086:0x10c9 (igb)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:72:55:71", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"
# PCI device 0x8086:0x10c9 (igb)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:25:90:72:55:70", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
我知道我可以轻松更改订单;但是我不能忘记在所有服务器上执行此操作,否则会导致各种奇怪的问题;当混合 1 GigE 和 10 GigE 接口时,这一点尤其令人烦恼。
答案1
显然最新的挤压升级(6.0.5)解决了这个问题。所以这可能是一些 udev 错误,或者 udev 规则生成器脚本错误。