Linux 操作系統的網卡設備的傳統命名方式是 eth0、eth1、eth2等,而 CentOS7 提供了不同的命名規則,預設是基於固件、拓撲、位置信息來分配。這樣做的優點是命名全自動的、可預知的,缺點是比 eth0、wlan0 更難讀,比如 ens33 。 一、命名規則策略 規則1: 對於板載設備 ...
Linux 操作系統的網卡設備的傳統命名方式是 eth0、eth1、eth2等,而 CentOS7 提供了不同的命名規則,預設是基於固件、拓撲、位置信息來分配。這樣做的優點是命名全自動的、可預知的,缺點是比 eth0、wlan0 更難讀,比如 ens33 。
一、命名規則策略
規則1:
對於板載設備命名合併固件或 BIOS 提供的索引號,如果來自固件或 BIOS 的信息可讀就命名,比如eno1,這種命名是比較常見的,否則使用規則2。
規則2:
命名合併固件或 BIOS 提供的 PCI-E 熱插拔口索引號,比如 ens1,如果信息可讀就使用,否則使用規則3。
規則3:
命名合併硬體介面的物理位置,比如 enp2s0,可用就命名,失敗直接到方案5。
規則4:
命名合併介面的 MAC 地址,比如 enx78e7d1ea46da,預設不使用,除非用戶選擇使用此方案。
規則5:
使用傳統的方案,如果所有的方案都失敗,使用類似 eth0 這樣的樣式。
二、網卡名稱字元含義
1、前2個字元的含義
en 乙太網 Ethernet
wl 無線區域網 WLAN
ww 無線廣域網 WWAN
2、第3個字元根據設備類型選擇
o<index> on-board device index number s<slot> hotplug slot index number x<MAC> MAC address p<bus>s<slot> PCI geographical location p<bus>s<slot> USB port number chain
三、修改網卡名稱樣式為ethx
如果不習慣使用新的命名規則,可以恢復使用傳統的方式命名,編輯 grub 文件,增加兩個變數,再使用 grub2-mkconfig 重新生成 grub 配置文件即可。
1、編輯 grub 配置文件
vim /etc/sysconfig/grub # 其實是/etc/default/grub的軟連接
# 為GRUB_CMDLINE_LINUX變數增加2個參數,具體內容如下(加粗):
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap net.ifnames=0 biosdevname=0 rhgb quiet"
2、重新生成 grub 配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
然後重新啟動 Linux 操作系統,通過 ip addr 可以看到網卡名稱已經變為 eth0 。
3、修改網卡配置文件
原來網卡配置文件名稱為 ifcfg-ens33,這裡需要修改為 ethx 的格式,並適當調整網卡配置文件。
mv /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-eth0 # 修改ifcfg-eth0文件如下內容(其它內容不變) NAME=eth0 DEVICE=eth0
[root@localhost ~]# systemctl restart network.service # 重啟網路服務
註意:ifcfg-ens33 文件最好刪除掉,否則重啟 network 服務時候會報錯。
作者:liwei0526vip 出處:http://www.cnblogs.com/liwei0526vip
歡迎轉載,也請保留這段聲明。謝謝!