Linux网卡没有eth0显示ens33原因以及解决办法

原因

首先说明一下eth0 与 ens33的关系:

目前的主流网卡为使用以太网络协定所开发出来的以太网卡(Ethernet),因此我们Linux就称呼这种网络接口为ethN(N为数字)。

举个栗子:就是说主机上面有一张以太网卡,因此主机的网络接口就是eth0(第一张为0号开始)。而从新的CentOS 7开始对于网卡的编号有另一套规则,网卡的界面代号于网卡的来源有关,网卡名称会是这样分类的:

eno1: 代表由主板BIOS内置的网卡

ens1: 代表由主板BIOS内置夫人PCI-E界面网卡

enp2s0: 代表PCI-E界面独立网卡,可能会由多个插孔,因此会有s0,s1...的编号

eth0: 如果上述的名称都不适用,就回到原本的默认网卡编号。

所以才会有ens33这种的网卡表现形式。

解决办法

1、编辑网卡的配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33 

将里面的NAME和DEVICE项修改为eth0,ONBOOT需修改为yes

具体操作如下:

bash 复制代码
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33

NAME=eth0 # 修改ens33为eth0
DEVICE=eth0 # 修改ens33为eth0
ONBOOT=yes  # 修改no为yes
2、重命名网卡配置
bash 复制代码
cd /etc/sysconfig/network-scripts/ 
bash 复制代码
mv ifcfg-ens33 ifcfg-eth0  
3、编辑 /etc/default/grub

加入"net.ifnames=0 biosdevname=0"到GRUBCMALINELINUX变量中

你可以直接复制粘贴下面的内容

bash 复制代码
[root@localhost network-scripts]# vi /etc/default/grub  

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto net.ifnames=0 biosdevname=0 spectre_v2=retpoline
 rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"GRUB_DISABLE_RECOVERY="true"
4、重新生成GRUB配置并更新内核参数

运行命令 grub2-mkconfig -o /boot/grub2/grub.cfg 来重新生成GRUB配置并更新内核参数。

bash 复制代码
[root@localhost network-scripts]# grub2-mkconfig -o /boot/grub2/grub.cfg  
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-1127.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1127.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-ece52f273aa045ad8822b6197e4910d0
Found initrd image: /boot/initramfs-0-rescue-ece52f273aa045ad8822b6197e4910d0.img
done
5、重启系统
bash 复制代码
[root@localhost network-scripts]# reboot
6、检查配置
bash 复制代码
[root@localhost ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.182.130  netmask 255.255.255.0  broadcast 192.168.182.255
        inet6 fe80::4347:403c:4dc4:2f0c  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:18:b9:3f  txqueuelen 1000  (Ethernet)
        RX packets 60  bytes 6530 (6.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 76  bytes 11742 (11.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 48  bytes 4080 (3.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 48  bytes 4080 (3.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:41:2d:f8  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
相关推荐
奈斯ing2 分钟前
【Oracle篇】掌握SQL Tuning Advisor优化工具:从工具使用到SQL优化的全方位指南(第六篇,总共七篇)
运维·数据库·sql·oracle
最后一个bug8 分钟前
C函数如何返回参数lua使用
linux·c语言·开发语言·嵌入式硬件·lua
雷神乐乐14 分钟前
ServletConfig、ServletContext、HttpServletRequest与HttpServletResponse常见API
java·服务器·前端·javaweb·tomcat8
Crossoads29 分钟前
【汇编语言】更灵活的定位内存地址的方法(二)—— 从 [bx+idata] 到 [bx+si+idata]:让你灵活的访问内存
android·java·服务器·网络协议·tcp/ip·机器学习·汇编语言
酆訫鎻嗳31 分钟前
ubuntu固定ip
linux·运维·ubuntu
188_djh33 分钟前
# ubuntu 安装的pycharm不能输入中文的解决方法
linux·ubuntu·pycharm·fcitx·export·pycharm不能输入中文·zh_cn.utf-8
vvw&38 分钟前
如何在 Ubuntu 上安装 Jellyfin 媒体服务器
linux·运维·服务器·ubuntu·媒体·nas·jellyfin
ghimi41 分钟前
【Linux】apt 关闭 ssl 认证
linux·服务器·ssl
胡西风_foxww1 小时前
linux下编译安装memcached
linux·数据库·缓存·编译·安装·memcached·libevent
水木的编程那些事儿1 小时前
awk那些事儿:在awk中使用shell变量的两种方式
linux·awk