CentOS 7網卡名迴歸傳統命名方式

各版本網卡命名方式

CentOS 6之前,網絡接口使用連續號碼命名:eth0、eth1等,當增加或刪除網卡時,名稱可能會發生變化

CentOS 7使用基於硬件,設備拓撲和設置類型命名

(1) 網卡命名機制

systemd對網絡設備的命名方式
(a) 如果Firmware或BIOS爲主板上集成的設備提供的索引信息可用,且可預測則根據此索引進行命名,例如eno1
(b) 如果Firmware或BIOS爲PCI-E擴展槽所提供的索引信息可用,且可預測,則根據此索引進行命名,例如ens1
(c) 如果硬件接口的物理位置信息可用,則根據此信息進行命名,例如enp2s0
(d) 如果用戶顯式啓動,也可根據MAC地址進行命名,enx2387a1dc56
(e) 上述均不可用時,則使用傳統命名機制
基於BIOS支持啓用biosdevname軟件
內置網卡:em1,em2
pci卡:pYpXY:slot ,X:port

(2) 名稱組成格式

en: Ethernet 有線局域網
wl: wlan無線局域網
ww: wwan無線廣域網
名稱類型:
o: 集成設備的設備索引號
s: 擴展槽的索引號
x: 基於MAC地址的命名
ps: enp2s1

網卡設備的命名過程:

第一步:
udev, 輔助工具程序/lib/udev/rename_device/usr/lib/udev/rules.d/60-net.rules
第二步:
biosdevname會根據/usr/lib/udev/rules.d/71-biosdevname.rules
第三步:
通過檢測網絡接口設備,根據/usr/lib/udev/rules.d/75-net-description
ID_NET_NAME_ONBOARD
ID_NET_NAME_SLOT
ID_NET_NAME_PATH

在生產中,爲了方便管理,我們儘量把網卡命名方式統一,如上所講,CentOS 6 之前都是eth0,eth1…..方式命名,爲了方便,我們可以在CentOS 7上採用傳統命名方式。

……………………………………………………………………………………….

方法1

(1)編輯/etc/default/grub配置文件

[root@centos ~]# vim /etc/default/grub
編輯
GRUB_CMDLINE_LINUX=”rhgbquiet ”
——>GRUB_CMDLINE_LINUX=”rhgbquiet net.ifnames=0”
\ #此文件不會直接生效需要工具grub2-mkconfig生成到/etc/grub2.cfg文件中
注意:執行命令 ll /etc/grub2.cfg ,可以發現/etc/grub2.cfg是一個鏈接文件,它指向的真實路徑是/boot/grub2/grub.cfg,在方法二中,其實就是修改這個配置文件

(2) 爲grub2生成其配置文件

[root@centos ~]# grub2-mkconfig -o /etc/grub2.cfg
# grub2-mkconfig 生成打印出配置文件
# -o /etc/grub2.cfg 重定向到etc下的grub2.cfg配置文件

(3) 修改配置文件裏面的網卡名

[root@centos ~]# cd /etc/sysconfig/network-scripts/
[root@centos ~]# vim ifcfg-ens33
編輯修改
DEVICE=eth0
NAME=eth0
同理修改ifcfg-ens37裏面的配置文件
爲了方便管理,配置文件名也可以修改成ifcfg-eth0和ifcfg-eth1
(4)重啓系統
……………………………………………………………………………………..

方法2

直接修改文件 /boot/grub2/grub.cfg

[root@centos ~]# vim /boot/grub2/grub.cfg
修改配置文件之前,會發現有兩處menuentry 並且後面跟文檔相似,我們需要修改的是第一個menuentry 後面的linux16這一行 。如下圖

這裏寫圖片描述

如下圖所示,在quiet後面加上 net.ifnames=0

這裏寫圖片描述

保存退出。

如方法一種的步驟3,修改網卡配置文件中的網卡設備名稱和網卡名以及配置文件名。

然後重啓系統。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章