Centos7更改网卡名称Eth0并配置静态IP
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