我有一个Centos 7系统,在这个系统中,我禁用了新的网络命名系统,并恢复到旧系统(eth0、eth1等)。我这么做是因为我在设置中使用了这个,并且需要在几个不同的主机上使用相同的以太网设备名称。其中一些主机是kvm下的virts,并使用eth命名系统。
由于这样做,每几个重新启动,我的以太网设备被翻转。
在健康的靴子上,我看到了
11.172339 tg3 0000:03:00.0 eth0: Tigon3 partno(BCM95723) rev 5784100 MAC地址68:b5:99:72:d8:02 11.269599 e1000e 0000:02:00.0 eth1:(PCI :2.5GT/S:Width x1) 68:05:ca:04:90:16
在“糟糕的引导”中,这些将被翻转,而e1000e将是eth0,而tg3是eth1。
到目前为止,我已经做了以下工作:
运行grub2-mkconfig之后,我在/boot/grub2/grub.cfg中看到以下内容(这意味着上面的更改正在生效)
root=UUID=eabee081-85f8-4f33-b72a-fbbdc575e010 ro vconsole.keymap=uk crashkernel=auto quiet . linux16 /linux16/vmlinuz-3.10.0-123.el7.x86_64
70-Persistent-net.规则的内容如下:
SUBSYSTEM=="net",ACTION==“ACTION==”添加“,DRIVERS==”?,ATTR{address}=="68:B5:99:72:D8:02",ATTR{type}=="1",KERNEL=="eth",NAME="eth0“ SUBSYSTEM=="net",ACTION==”添加“,DRIVERS==?,ATTR{address}=="68:05:CA:04:90:16",ATTR{type}=="1",KERNEL=="eth",NAME="eth1”
我还尝试将此文件中MAC地址中的字母更改为小写,以匹配dmesg的输出。这没什么区别。
我禁用了NetworkManager,我在/etc/sysconfig/network/ifcfg*中有HWADDR条目。
在ubuntu和Centos的早期版本下,上面的工作很好,而且很可靠。
但是,所有这些都无法在这个盒子上使用Centos 7实现可预测的设备。
任何关于如何将这些设备连接到eth名称的建议将不胜感激!
发布于 2015-03-06 13:08:39
我进一步调查,发现了更多的细节。
造成这种不利行为的原因是内核和udev软件之间的竞争条件(开发人员在bug报告中指出)。
因此,udev的开发人员决定删除NIC作为ethX的可靠命名,并强制使用更不可预测的命名。
他们删除了允许管理员使用可靠的ethX接口顺序的代码,还添加了拒绝使用内核已经使用过的任何ethX名称的代码。
因此,如果您想再使用名称eth0、eth1等,则似乎无法收到可靠的订单。
有些人建议使用像netX这样的名字。
如果您将ethX设置为大于实际接口数量的X,它也可以工作。
我是最初的海报谁认为他已经找到了解决办法,而实际上,这只是一个临时的。经过几次测试启动后,我发现以太网设备是随机命名的,而不是我在60- not .规则中定义的方式。
我已经匿名发布了最初的答案,然后决定注册,以便能够更多地参与。所以我很抱歉。下面发布的答案实际上并不能解决最初回答的问题。它只需要几只靴子就可以了,但它不可靠。
我成功地使用了CentOS 7的最小CD和以下策略:
我做了很多没有帮助的事情,所以我不得不把其中的一些改变回来。
我重新安装了生物开发名(让它被移除)。
我编辑了/etc/default/grub,并将biosdevname=0和ifnames=0添加到CMDLINE中。
我用: grub2-mkconfig -o /boot/grub2/grub.cfg重新构建了grub配置。
此外,我还从CentOS 6.5安装中导入了以下两个文件:
/lib/udev/rules.d/75-persistent-net-generator.rules
/lib/udev/write_net_rules
(但这些可能根本没有任何效果)
然后,我在/etc/udev/rues.d/中创建了一个名为60-net.Rule的文件,并为我的每个NIC创建了一行:
SUBSYSTEM=="net",ACTION==“添加”,DRIVERS==?*,ATTR{address}=="aa:bb:cc:dd:ee:ff",ATTR{dev_id}=="0x0",ATTR{type}=="1",NAME="eth1“
(当然,MAC地址‘aa:bb:.’必须是正确的)。
在那之后,我启动了它,它起作用了。
https://serverfault.com/questions/656199
复制相似问题