新版 NetworkManager 网络配置立即生效

这种情况在 pts 远程连接 环境下更容易发生

NetworkManager 新版很鸡肋的一点,我 修改 网卡配置文件,但是 不立即生效 。本文是解决新版的问题,不是解决 旧版网络配置

本文所有 <device> 标签你需要替换成你的真实设备名, 你可以通过 nmcli 工具查看

bash 复制代码
# c s 分别是 connection 和 show 的缩写
nmcli c s 
# NAME   UUID                                  TYPE      DEVICE
# ens33  6948cda6-ecd2-324c-badf-5158397630aa  ethernet  ens33
# lo    3d91c58c-cde1-454a-b568-52711a2fa2db  loopback  lo

计算机英语较好的可以直接翻阅完整 NetworkManager 配置文件, 不过官方文献没有解决实质性问题

nmcli: NetworkManager Reference Manual


NetworkManager 新版配置目录

  • 新版 ( 例如 Rocky Linux 9 , OpenEuler ) 的 网卡配置文件位于 /etc/NetworkManager/system-connections/<device>.nmconnection , 我的新版NetworkManager 版本是: 1.48.10

解决方案

若你已经是 root 用户,跳过这一步

bash 复制代码
sudo -i
  • 旧版本 NetworkManager 你修改好了对应的配置文件, 执行以下语句:
bash 复制代码
# 这是立即生效的,比如之前你的地址是: 192.168.241.10/24
systemctl daemon-reload && systemctl restart network && ip addr show <device>
# 重启了网卡,我的地址立刻变成了 192.168.241.13/24

新版本网络配置文件内容基本是这样的

nmconnection 复制代码
[connection]
id=ens33
uuid=6948cda6-ecd2-324c-badf-5158397630aa
type=ethernet
autoconnect-priority=-999
interface-name=ens33

[ethernet]

[ipv4]
#address1=192.168.241.10/24,192.168.241.2 # 你只需要修改成类似 ↓
address1=192.168.241.13/24,192.168.241.2 # ',' 前面的是你的预设地址/掩码 ',' 后面的地址是你的网关
dns=114.114.114.114; # 取决于你是否需要上网
method=manual

[ipv6]
addr-gen-mode=eui64
method=auto

[proxy]
改之前
  • 新版本 NetworkManager 更改配置后,你想立即生效,那么多做这几步是有必要

友情提醒: 更改网络会导致你当前的远程连接断掉。不过你只需要重新用 putty 类似工具用新地址连接就 OK 了

bash 复制代码
systemctl daemon-reload && systemctl restart NetworkManager &&\
nmcli c reload &&\
nmcli d reapply <device>
改之后
相关推荐
用户307500930379315 分钟前
go Eino使用ADK开发agent
后端
唐叔在学习26 分钟前
Python自动化指令进阶:UAC提权
后端·python
Assby28 分钟前
Windows 在 PostgreSQL 上安装 vector 扩展
后端
123445239 分钟前
【面试复盘】有了equals为什么还要hashcode
java·后端
小周在成长40 分钟前
MyBatis 分页插件PageHelper
后端
Paladin_z42 分钟前
Easy Query中间件的使用
后端
牛奔1 小时前
Go语言中结构体转Map优雅实现
开发语言·后端·macos·golang·xcode
掘金码甲哥1 小时前
我不允许谁还分不清这三种watch机制的区别
后端
张心独酌1 小时前
Rust新手练习案例库- rust-learning-example
开发语言·后端·rust
码事漫谈1 小时前
一文读懂“本体论”这个时髦词
后端