后来在dmesg下发现这样一条信息:
这使我想到应该是系统启动时直接把网卡名修改了,可是是哪个程序修改的呢?该程序的配置文件又在哪里呢?没办法还是谷狗了,这次发现一个新的关键词
二 ,udev说明:
udev - Dynamic device management
基本意思好像是udev是一个动态设备管理工具,从 /etc/udev/rules.d/ ; /usr/lib/udev/rules.d/ ; /run/udev/rules.d/ 三个目录下读取规则文件,其中以/etc/udev/rules.d/ 目录下的规则文件优先级别最高。
三,解决过程
这下问题很明白了,程序/lib/udev/rename_device重命名了网卡设备.然后,又查看了一下 50-udev-default.rules该文件有许多设备的udev默认读入规则,按照里面的规则,以及man udev得到的/etc/udev/rules.d/目录下的配置文件优先级最高,就在该目录下新建了一个60-persistent-net.rules 并在该文件中加入如下内容:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="b8:88:e3:2e:8c:93",
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:ed:b9:e2:5f:e9",
内容的大致意思是启动系统在添加新网络设备时,mac地址符合上述地址,且设备名含有enp12s0 ,eth*;就将其重新命名为eth0 ,wlan0 。上述第一个网卡设备之所以用enp12s0而非eth*时因为系统已经默认将eth0改为enp12s0,这里再次将其修改回去。保存后,重启电脑再次ifconfig结果很nice 。由此来看其它设备的命名也是同理。