Tips:一些记录,一些笔记

2024/09/23
MONDAY
A wise man removes inner dirt, clean up the impurity in the silver as craftsmen.
聪明的人时常清除内心的污垢,就如同工匠清理银矿中的杂质。

01
Linux的网卡名称
Linux操作系统有时候网卡名称很随意,比方说常见的:
eth0
ens192
有时候,我们并不希望它随机生成一个名称,而是希望将对应网卡的名称修改为更有意义的名称。
本文将介绍如何变更Linux的网卡名称。
02
新增虚拟网卡
为了演示,我的环境是虚拟机,首先,新增虚拟网卡:

新增前后,通过命令查看网卡状态的差别:
[root@minio1 ~]# ip addr | grep -A1 qdisc1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00--2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:ac:48:20 brd ff:ff:ff:ff:ff:ff--3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff--4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff[root@minio1 ~]#[root@minio1 ~]# ip addr | grep -A1 qdisc1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00--2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:ac:48:20 brd ff:ff:ff:ff:ff:ff--3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff--4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff5: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:ac:1c:a5 brd ff:ff:ff:ff:ff:ff[root@minio1 ~]#
可以看到,多了一个「ens224」的网卡,并且它的MAC地址是【00:50:56:ac:1c:a5】。
03
修改网卡名称
首先,查看网卡的配置文件所在目录,确认当前状态:
[root@minio1 ~]# ls -ltr etc/sysconfig/network-scripts/ | grep ifcfg-rw-r--r--. 1 root root 254 May 22 2020 ifcfg-lo-rw-r--r--. 1 root root 405 Sep 13 10:12 ifcfg-ens192[root@minio1 ~]#
下面开始正式修改。
通过「nmcli」查看目标网卡的UUID:
[root@minio1 ~]# nmcli con showNAME UUID TYPE DEVICEens192 609479c9-26b1-4529-a47c-b15906cea453 ethernet ens192Wired connection 1 054edbad-4775-3aaa-8e10-576ce261ccd8 ethernet ens224virbr0 7bfef163-022c-4e21-99e9-91b73533dc77 bridge virbr0[root@minio1 ~]#
可以看到,第二排的网卡就是我们的目标网卡,它的UUID「054edbad-4775-3aaa-8e10-576ce261ccd8」
然后使用「nmcli」工具,通过UUID,将该网卡设置为你期望的「新名称」
[root@minio1 ~]# nmcli con modify 054edbad-4775-3aaa-8e10-576ce261ccd8 connection.id eth1[root@minio1 ~]#[root@minio1 ~]# ls -ltr etc/sysconfig/network-scripts/ | grep ifcfg-rw-r--r--. 1 root root 254 May 22 2020 ifcfg-lo-rw-r--r--. 1 root root 405 Sep 13 10:12 ifcfg-ens192-rw-r--r-- 1 root root 317 Sep 23 19:36 ifcfg-eth1[root@minio1 ~]#[root@minio1 ~]# cat etc/sysconfig/network-scripts/ifcfg-eth1HWADDR=00:50:56:AC:1C:A5TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=dhcpDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=eth1UUID=054edbad-4775-3aaa-8e10-576ce261ccd8ONBOOT=yesAUTOCONNECT_PRIORITY=-999[root@minio1 ~]#
通过配置文件的变化可以看到,新增了一个新的网卡名称的配置文件。
最后,重新加载网络配置,使之生效:
[root@minio1 ~]# nmcli con up eth1Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5)[root@minio1 ~]#
这个时候,通过「nmcli con show」可以看到修改后的效果:
[root@minio1 ~]# nmcli con showNAME UUID TYPE DEVICEens192 609479c9-26b1-4529-a47c-b15906cea453 ethernet ens192eth1 054edbad-4775-3aaa-8e10-576ce261ccd8 ethernet ens224virbr0 7bfef163-022c-4e21-99e9-91b73533dc77 bridge virbr0[root@minio1 ~]#
但这样的修改,并没有完全达到我们期望的效果:
[root@minio1 ~]# ifconfig | grep flagsens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500ens224: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500[root@minio1 ~]#[root@minio1 ~]# ip addr | grep -A1 qdisc1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00--2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:ac:48:20 brd ff:ff:ff:ff:ff:ff--3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff--4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff5: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:ac:1c:a5 brd ff:ff:ff:ff:ff:ff[root@minio1 ~]#
如上所示,直接查,可以看到网卡的「设备名称」并没有被改掉。
原因是修改完成后,需要重启服务器。
重启完成后,可以看到就全部改过来了:
[root@minio1 ~]# ifconfig | grep flagsens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500[root@minio1 ~]#[root@minio1 ~]# ip addr | grep -A1 qdisc1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00--2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:ac:48:20 brd ff:ff:ff:ff:ff:ff--3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:ac:1c:a5 brd ff:ff:ff:ff:ff:ff--4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff--5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000link/ether 52:54:00:5c:41:0b brd ff:ff:ff:ff:ff:ff[root@minio1 ~]#[root@minio1 ~]# nmcli con showNAME UUID TYPE DEVICEens192 609479c9-26b1-4529-a47c-b15906cea453 ethernet ens192eth1 054edbad-4775-3aaa-8e10-576ce261ccd8 ethernet eth1virbr0 e1485904-655f-42a0-afff-b6c5e914272a bridge virbr0[root@minio1 ~]#
04
修改网卡的「设备名称」
另一种修改网卡的「设备名称」的方式,需要使用到上面步骤中生成的文件「ifcfg-eth1」
[root@minio1 ~]# cat etc/sysconfig/network-scripts/ifcfg-eth1HWADDR=00:50:56:AC:1C:A5TYPE=EthernetPROXY_METHOD=noneBROWSER_ONLY=noBOOTPROTO=dhcpDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=eth1DEVICE=eth1UUID=054edbad-4775-3aaa-8e10-576ce261ccd8ONBOOT=yesAUTOCONNECT_PRIORITY=-999[root@minio1 ~]#
注意,上面增加了「DEVICE=eth1」
禁用网卡命名规则:
编辑「/etc/default/grub」:
[root@minio1 ~]# cat etc/default/grubGRUB_TIMEOUT=5GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' etc/system-release)"GRUB_DEFAULT=savedGRUB_DISABLE_SUBMENU=trueGRUB_TERMINAL_OUTPUT="console"GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap net.ifnames=0 biosdevname=0 rhgb quiet"GRUB_DISABLE_RECOVERY="true"[root@minio1 ~]#
如上,在其中加入了【net.ifnames=0 biosdevname=0】
然后,重新生成GRUB配置,并更新内核参数:
[root@minio1 ~]# grub2-mkconfig -o boot/grub2/grub.cfgGenerating grub configuration file ...Found linux image: /boot/vmlinuz-3.10.0-1160.el7.x86_64Found initrd image: /boot/initramfs-3.10.0-1160.el7.x86_64.imgFound linux image: /boot/vmlinuz-0-rescue-d24a5bf248254b23ae843ae2553a8f04Found initrd image: /boot/initramfs-0-rescue-d24a5bf248254b23ae843ae2553a8f04.imgdone[root@minio1 ~]#
接下来,修改UDEV文件:
[root@minio1 rules.d]# pwd/etc/udev/rules.d[root@minio1 rules.d]#[root@minio1 rules.d]# cat 70-persistent-net.rulesSUBSYSTEM=="net",ACTION=="add",DRIVERS=="?",ATTR{address}"00:50:56:ac:1c:a5",ATTR{type}"1",KERNEL=="eth",NAME="eth1"[root@minio1 rules.d]#
每一行记录对应一个网卡,有几块网卡写几行。
和前面的方法一样,也是重启后生效。
END
温馨提示
如果你喜欢本文,请分享到朋友圈,想要获得更多信息,请关注我。




