配备 Fedora 20 的新型 Dell Latitude 笔记本电脑。1 个内置以太网接口,1 个附加 ExpressCard 以太网接口。我似乎无法获得一致的旧式(ethx)接口名称。
我曾尝试将 biosdevname=0 和 net.ifnames=0 添加到 grub.cfg,创建 /etc/udev/rules.d/70-persistent-net.rules,复制 /lib/udev/rules.d/71- biosdevname.rules 到 /etc/udev/rules.d 并取消注释分支命令,删除 biosdevname RPM 包,并使用按正确顺序列出的必要驱动程序创建 /etc/modules-load.d/ethernet_drivers.conf。似乎没有一种组合能够得到正确的结果。
如果附加卡不存在,似乎很容易获得我想要的名为 eth0 的内置端口。但是当附加卡存在时,我所能得到的最好结果就是将其命名为 eth0,并将内置端口命名为 eth1。当然,这是落后的、不一致的。
这是我的结果的摘要。删除 biosdevname 软件包不会改变这些结果。
grub2 udev udev add-in Ethernet Ethernet
biosdevname=0 70 71 present built-in add-on
net.ifnames=0
============= ==== ==== ======= ======== ========
no no mod no enp12s0 --
no no mod yes enp12s0 ens1
no no no no enp12s0 --
no no no yes enp12s0 ens1
no yes mod no enp12s0 --
no yes mod yes eth0 ens1
no yes no no enp12s0 --
no yes no yes eth0 ens1
yes no mod no eth0 --
yes no mod yes eth1 eth0
yes no no no eth0 --
yes no no yes eth1 eth0
yes yes mod no eth0 --
yes yes mod yes eth1 eth0
yes yes no no eth0 --
yes yes no yes eth1 eth0
这是 /etc/udev/rules.d/70-persistent-net.rules 的内容(只有两行)。
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="ec:f4:bb:02:44:7a", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:13:3b:00:73:cb", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
这是 /etc/modules-load.d/ethernet_drivers.conf 的内容(只有两行)。
tg3
r8169
这是 /etc/sysconfig/network-scripts/ifcfg-eth? 的内容。
TYPE="Ethernet"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="eth0"
UUID="cda65a57-3f30-444d-b041-2e77c056a1b1"
ONBOOT="yes"
HWADDR="EC:F4:BB:02:44:7A"
PEERDNS="yes"
PEERROUTES="yes"
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME="eth1"
UUID=722a5c3b-b6e5-44a8-93fa-e0f070059d8c
ONBOOT=no
HWADDR=00:13:3B:00:73:CB
PEERDNS=yes
PEERROUTES=yes
系统日志似乎显示驱动程序已按正确的顺序加载。还有一些接口重命名消息。
那么实现我的目标的正确方法是什么?