Centos7更改网卡名称Eth0并配置静态IP

时间:2023-03-09 16:14:34
Centos7更改网卡名称Eth0并配置静态IP

1、首先查看一下centos7的网卡名称

eno33554984

Centos7更改网卡名称Eth0并配置静态IP

2、更改为centos7之前版本的网卡名称

Centos7更改网卡名称Eth0并配置静态IP

3、更改网卡文件的名称

Centos7更改网卡名称Eth0并配置静态IP

4、禁用可预测命名规则。

通过编辑 /etc/default/grub 并加入“net.ifnames=0 biosdevname=0”启动参数到GRUBCMDLINELINUX变量来实现的。

CentOS 7 这种变化的原因,是由于systemd 和 udev 引入了一种新的网络设备命名方式–一致网络设备命名(CONSISTENT NETWORK DEVICE NAMING) 。可以根据固件、拓扑、位置信息来设置固定名字,带来的好处是命名自动化,名字完全可预测,在硬件坏了以后更换也不会影响设备的命名,这样可以让硬件的更换无缝化。带来的不利是新的设备名称比传统的名称难以阅读。比如名称是enp5s0.

Centos7更改网卡名称Eth0并配置静态IP

Centos7更改网卡名称Eth0并配置静态IP

5、重新生成GRUB配置并更新内核参数

Centos7更改网卡名称Eth0并配置静态IP

6、重启主机并查看

Centos7更改网卡名称Eth0并配置静态IP

配置静态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,请慎用

 #!/bin/bash
array=($(ls /etc/sysconfig/network-scripts))
path=/etc/sysconfig/network-scripts/
name=ifcfg-eth0
file="`echo ${array[*]} | grep -o 'ifcfg-ens[[:digit:]]\+'`" judge() {
if [ -f $path$file ]; then
echo "the net name is not modified"
else
echo "$path$file was modified"
exit
fi
} DM() {
if [ `grep -o 'DEVICE' $path$file | wc -l` -eq 1 ]; then
sed -i 's/DEVICE=.*/DEVICE="eth0"/' $path$file &>/dev/null
fi
} NM() {
if [ `grep -o 'NAME' $path$file | wc -l` -eq 1 ]; then
sed -i 's/NAME=.*/NAME="eth0"/' $path$file
fi
} other() {
mv $path$file $path$name
if [ -f "/etc/default/grub" ]; then
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
grub2-mkconfig -o /boot/grub2/grub.cfg &>/tmp/1.txt
if [ `grep 'done' /tmp/1.txt | wc -l` -eq 1 ]; then
echo "禁止可预测命名规则成功。"
else
echo "禁止可预测命名规则失败。"
fi
cat /dev/null >/tmp/1.txt
fi
} read -p "Do you want to modify the net name: {yes|no} " choice
case $choice in
yes)
judge
sleep 1
DM
sleep 1
NM
sleep 1
other
sleep 3
echo "$name was modified,please restart your linux" ;;
no)
echo "you will quit."
sleep 3 ;;
*)
echo "Please input {yes|no}"
esac

Centos7更改网卡名称Eth0并配置静态IPCentos7更改网卡名称Eth0并配置静态IP

Centos7更改网卡名称Eth0并配置静态IP