1、首先查看一下centos7的網卡名稱
eno33554984
2、更改為centos7之前版本的網卡名稱
3、更改網卡文件的名稱
4、禁用可預測命名規則。
通過編輯 /etc/default/grub 並加入“net.ifnames=0 biosdevname=0”啟動參數到GRUBCMDLINELINUX變量來實現的。
CentOS 7 這種變化的原因,是由於systemd 和 udev 引入了一種新的網絡設備命名方式–一致網絡設備命名(CONSISTENT NETWORK DEVICE NAMING) 。可以根據固件、拓撲、位置信息來設置固定名字,帶來的好處是命名自動化,名字完全可預測,在硬件壞了以后更換也不會影響設備的命名,這樣可以讓硬件的更換無縫化。帶來的不利是新的設備名稱比傳統的名稱難以閱讀。比如名稱是enp5s0.
5、重新生成GRUB配置並更新內核參數
6、重啟主機並查看
配置靜態IP
這是原動態IP
1 TYPE="Ethernet"
2 PROXY_METHOD="none"
3 BROWSER_ONLY="no"
4 BOOTPROTO="dhcp"
5 DEFROUTE="yes"
6 IPV4_FAILURE_FATAL="no"
7 IPV6INIT="yes"
8 IPV6_AUTOCONF="yes"
9 IPV6_DEFROUTE="yes"
10 IPV6_FAILURE_FATAL="no"
11 IPV6_ADDR_GEN_MODE="stable-privacy"
12 NAME="eth0"
13 UUID="8d143c9e-1aba-4a43-9928-8ddd8c86eac2"
14 DEVICE="eth0"
15 ONBOOT="yes"
修改后的配置文件
1 TYPE="Ethernet"
2 PROXY_METHOD="none"
3 BROWSER_ONLY="no"
4 DEFROUTE="yes"
5 IPV4_FAILURE_FATAL="no"
6 NAME="eth0"
7 UUID="8d143c9e-1aba-4a43-9928-8ddd8c86eac2"
8 DEVICE="eth0"
9 ONBOOT="yes" #開機啟動
10 BOOTPROTO="static" #靜態IP
11 IPADDR=192.168.184.142 #本機地址
12 NETMASK=255.255.255.0 #子網掩碼
13 GATEWAY=192.168.184.2 #默認網關
14 #DNS1=192.168.1.1
15 DNS2=8.8.8.8
重啟網絡服務
#systemctl restart network
一鍵修改網卡名:
手寫此腳本,目前只是用centos7,請慎用

1 #!/bin/bash 2 array=($(ls /etc/sysconfig/network-scripts)) 3 path=/etc/sysconfig/network-scripts/ 4 name=ifcfg-eth0 5 file="`echo ${array[*]} | grep -o 'ifcfg-ens[[:digit:]]\+'`" 6 7 judge() { 8 if [ -f $path$file ]; then 9 echo "the net name is not modified" 10 else 11 echo "$path$file was modified" 12 exit 13 fi 14 } 15 16 DM() { 17 if [ `grep -o 'DEVICE' $path$file | wc -l` -eq 1 ]; then 18 sed -i 's/DEVICE=.*/DEVICE="eth0"/' $path$file &>/dev/null 19 fi 20 } 21 22 NM() { 23 if [ `grep -o 'NAME' $path$file | wc -l` -eq 1 ]; then 24 sed -i 's/NAME=.*/NAME="eth0"/' $path$file 25 fi 26 } 27 28 other() { 29 mv $path$file $path$name 30 if [ -f "/etc/default/grub" ]; then 31 sed -i '/^GRUB_CMDLINE_LINUX/c \GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root "net.ifnames=0 biosdevname=0" rd.lvm.lv=centos/swap rhgb quiet"' /etc/default/grub 32 grub2-mkconfig -o /boot/grub2/grub.cfg &>/tmp/1.txt 33 if [ `grep 'done' /tmp/1.txt | wc -l` -eq 1 ]; then 34 echo "禁止可預測命名規則成功。" 35 else 36 echo "禁止可預測命名規則失敗。" 37 fi 38 cat /dev/null >/tmp/1.txt 39 fi 40 } 41 42 read -p "Do you want to modify the net name: {yes|no} " choice 43 case $choice in 44 yes) 45 judge 46 sleep 1 47 DM 48 sleep 1 49 NM 50 sleep 1 51 other 52 sleep 3 53 echo "$name was modified,please restart your linux" ;; 54 no) 55 echo "you will quit." 56 sleep 3 ;; 57 *) 58 echo "Please input {yes|no}" 59 esac