本文主要讲解如何重启RHEL 8或者CentOS 8网络以及如何解决RHEL8和CentOS8系统的网络管理服务报错,当我们安装好RHEL 8或者 CentOS 8,重启启动网络时,会出现以下报错:
]# systemctl restart network.service
报错信息如下
Failed to restart network.service: Unit network.service not found.
意思为无法重启网络服务,原因是无法找到network.service网络服务。
出现错误的原因是在RHEL 8和CentOS 8系统里,已废弃network.service。因此只能通过其它方法进行网络配置,包括NM命令工具集。换言之,在rhel8上,必须开启NM,否则无法使用网络。
下文假设你的网卡标识为xxx,可以通过以下命令确定网卡标识符
]# ip addr
比如ens33等等这类标识。
1. RHEL8或者CentOS8配置网络的三种方法
RHEL8或者CentOS8应该使用nmcli管理网络
手工配置ifcfg,通过NM来生效
通过NM自带工具配ip,比如nmcli
手工配置ifcfg,通过传统network.service来生效
建议:推荐使用上述第1种网络配置方法(手工配置ifcfg,通过NM生效),因为这样既兼容了传统的ifcfg配置,又能熟悉nmcli。举例:
1.1 方法一:手工配置ifcfg,使用nmcli来生效新的网络配置
假设网卡标识符为xxx
]# vi /etc/sysconfig/network-scripts/ifcfg-xxx
使用nmcli重新回载网络配置
]# nmcli c reload
如果之前没有xxx的connection,则上一步reload后就已经自动生效了
]# nmcli c up xxx
1.2 方法二:RHEL8和CentOS8完全使用nmcli来管理网络
查看网卡信息
]# nmcli connection
NAME UUID TYPE DEVICE
ens33 a92fa07b-9b68-4d2b-a2e7-e55146099b1b ethernet ens33
ens36 418da202-9a8c-b73c-e8a1-397e00f3c6b2 ethernet ens36
]# nmcli con xxx
显示具体的网络接口信息
]# nmcli connection show xxx
显示所有活动连接
]# nmcli connection show --active
删除一个网卡连接
]# nmcli connection delete xxx
给xxx添加一个IP(IPADDR)
]# nmcli connection modify xxx ipv4.addresses 192.168.0.58
给xxx添加一个子网掩码(NETMASK)
]# nmcli connection modify xxx ipv4.addresses 192.168.0.58/24
IP获取方式设置成手动(BOOTPROTO=static/none)
]# nmcli connection modify xxx ipv4.method manual
添加一个ipv4
]# nmcli connection modify xxx +ipv4.addresses 192.168.0.59/24
删除一个ipv4
]# nmcli connection modify xxx -ipv4.addresses 192.168.0.59/24
添加DNS
]# nmcli connection modify xxx ipv4.dns 114.114.114.114
删除DNS
]# nmcli connection modify xxx -ipv4.dns 114.114.114.114
添加一个网关(GATEWAY)
]# nmcli connection modify xxx ipv4.gateway 192.168.0.2
可一块写入:
]# nmcli connection modify xxx ipv4.dns 114.114.114.114 ipv4.gateway 192.168.0.2
添加DNS
]# nmcli connection modify xxx ipv4.dns 114.114.114.114
删除DNS
]# nmcli connection modify xxx -ipv4.dns 114.114.114.114
添加一个网关(GATEWAY)
]# nmcli connection modify xxx ipv4.gateway 192.168.0.2
可一块写入:
]# nmcli connection modify xxx ipv4.dns 114.114.114.114 ipv4.gateway 192.168.0.2
使用nmcli重新回载网络配置
]# nmcli c reload
如果之前没有xxx的connection,则上一步reload后就已经自动生效了
]# nmcli c up xxx
1.3 方法三:安装network.service服务
可以通过yum install network-scripts来安装传统的network.service,不过redhat说了,在下一个RHEL的大版本里将彻底废除,因此不建议使用network.service。
2. RHEL8或者CentOS8修改网卡名称
2.1 删除网卡连接,比如xxx
]# nmcli connection delete xxx
2.2 修改内核参数配置文件
]# vi /etc/default/grub
2.3 植入内核
]# grub2-mkconfig -o /boot/grub2/grub.cfg
3.4 重启
]# reboot
3.5 添加网卡
]# nmcli connection add type ethernet con-name xxx
4. RHEL8或者CentOS8使用nmtui工具配置网络(图形化工具)
]# nmtui
5. 总结
CentOS8和RHEL8上一定要习惯使用nmcli来管理网络,network.service在未来会被正式废除,没有学习的必要了。