Centos8修改網卡名


修改網卡名為eth開頭

NetworkName=`ls /etc/sysconfig/network-scripts/ifcfg-* | xargs -n1 | awk -F- '{print $NF}' | head -1`
# 檢查網卡名: 如果不是eth0,修改為eth0
if [ "$NetworkName" = "eth0" ]; then
  echo "NetworkName:$NetworkName"
  exit 0
else
  sed -i 's/\(GRUB_CMDLINE_LINUX=".*\)"/\1 biosdevname=0 net.ifnames=0"/' /etc/default/grub
  grub2-mkconfig -o /etc/grub2.cfg
  sed -i 's/\(^NAME=\).*/\1eth0/' /etc/sysconfig/network-scripts/ifcfg-$NetworkName
  sed -i 's/\(^DEVICE=\).*/\1eth0/' /etc/sysconfig/network-scripts/ifcfg-$NetworkName
  mv /etc/sysconfig/network-scripts/ifcfg-$NetworkName /etc/sysconfig/network-scripts/ifcfg-eth0
  nmcli c reload
  reboot
fi

不行再使用udev修改網卡名為任意名稱

cat<<EOF >> /etc/udev/rules.d/70-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:ff:be:c2",NAME="eth0"
EOF && reboot

udev的作用是:

man udev
receives device uevents directly from the kernel whenever a device is added or removed from the system, or it changes its state.
當有設備從系統插入或者拔出,或者改變了狀態的時候,內核會直接收到設備uevents。

udev rules文件存在位置:

system rules directory: /usr/lib/udev/rules.d
volatile runtime directory: /run/udev/rules.d
local administration directory: /etc/udev/rules.d

udev讀取文件規則:

讀取這些目錄下以.rules為后綴的文件。
文件先后順序和其所在目錄無關,和文件的名稱順序有關。
若不同目錄存在相同的文件,則根據目錄名稱來排優先級順序。/etc>/run>/usr

udev進行網卡重命名

https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/networking_guide/sec-understanding_the_device_renaming_procedure?tdsourcetag=s_pctim_aiomsg

優先查詢的是/usr/lib/udev/rules.d/60-net.rules配置文件。如果發現包含 HWADDR 條目的 ifcfg 文件與某個接口的 MAC 地址匹配,它會將該接口重命名為 ifcfg 文件中由 DEVICE 指令給出的名稱。

合理修改centos7網卡名稱流程

  1. 首先修改當前網卡名稱
/sbin/ip link set eth1 down
/sbin/ip link set eth1 name eth123
/sbin/ip link set eth123 up
  1. 然后在/usr/lib/udev/rules.d/60-net.rules中加入配置策略
ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="00:0c:29:ff:be:c2", NAME="eth123"
  1. 最后修改ifcfg-xxx里面的NAMEDEVICE字段值為eth123

  2. 重啟網卡即可。

refer:

https://www.freedesktop.org/software/systemd/man/udev.html#
https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/networking_guide/sec-understanding_the_device_renaming_procedure?tdsourcetag=s_pctim_aiomsg
https://unix.stackexchange.com/questions/205010/centos-7-rename-network-interface-without-rebooting


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM