1. 现象解析消失的network-scripts目录在Rocky Linux 10.1系统中许多从RHEL/CentOS 7迁移过来的管理员会惊讶地发现熟悉的/etc/sysconfig/network-scripts目录不见了。这不是安装错误或系统缺陷而是Linux网络管理方式演进的结果。传统ifcfg脚本方式已被NetworkManager的keyfile格式替代新系统的网络配置现在默认存储在/etc/NetworkManager/system-connections目录下。这个变化源于Red Hat系列发行版从RHEL 8开始的网络管理架构改革。NetworkManager作为默认网络管理工具其原生配置方式与传统ifcfg脚本有本质区别。keyfile格式采用INI风格的结构化配置比原来的shell脚本格式更易于程序化处理也减少了因脚本语法错误导致的网络故障。重要提示虽然ifcfg脚本仍能被NetworkManager识别但官方明确建议新系统采用keyfile格式。混合使用两种配置方式可能导致不可预见的冲突。2. 新旧网络配置机制对比2.1 传统ifcfg脚本体系传统网络配置以/etc/sysconfig/network-scripts/ifcfg- 文件为核心配合route- 等辅助文件。典型ifcfg文件包含DEVICEeth0 BOOTPROTOdhcp ONBOOTyes这种方式的局限性日益明显缺乏标准化各发行版的参数命名存在差异调试困难依赖shell脚本的执行顺序和错误处理功能局限难以支持现代网络特性如SR-IOV、WiFi 6等2.2 NetworkManager的keyfile格式新的配置存储在/etc/NetworkManager/system-connections/ .nmconnection典型内容[connection] idWired Connection uuid5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 typeethernet [ipv4] methodauto [ethernet] mac-address00:11:22:33:44:55优势包括标准化格式遵循.freedesktop.org规范原子化操作配置文件整体生效/回滚丰富元数据支持连接优先级、多配置文件等特性3. 现代网络管理实操指南3.1 基础网络配置方法推荐使用nmcli工具进行配置# 查看现有连接 nmcli connection show # 创建新连接DHCP nmcli connection add con-name OfficeLAN ifname eth0 type ethernet # 静态IP配置 nmcli connection add con-name ServerLAN ifname eth1 type ethernet \ ip4 192.168.1.100/24 gw4 192.168.1.13.2 传统ifcfg迁移方案如需兼容旧系统可通过工具转换# 将ifcfg转换为keyfile nmcli connection migrate # 反向转换不推荐 nmcli connection migrate --ifcfg-rh3.3 高级网络配置示例配置绑定接口nmcli connection add type bond con-name bond0 ifname bond0 \ mode active-backup ipv4.method manual \ ipv4.addresses 10.0.0.2/24 ipv4.gateway 10.0.0.1 nmcli connection add type ethernet slave-type bond \ con-name bond0-port1 ifname eth1 master bond04. 常见问题排查4.1 网络服务无法启动现象NetworkManager服务启动失败 解决方案# 检查日志 journalctl -u NetworkManager -b # 常见原因残留的ifcfg文件干扰 ls -l /etc/sysconfig/network-scripts/ rm -f /etc/sysconfig/network-scripts/ifcfg-*4.2 配置不生效现象修改nmconnection文件后网络无变化 处理步骤确认文件权限为600chmod 600 /etc/NetworkManager/system-connections/*.nmconnection重新加载配置nmcli connection reload手动激活连接nmcli connection up connection-name4.3 传统工具兼容方案对于必须使用ifcfg脚本的场景安装legacy包dnf install network-scripts创建符号链接ln -s /etc/sysconfig/network-scripts /etc/sysconfig/network注意这种方案可能在未来版本中被移除5. 网络管理最佳实践配置版本控制cd /etc/NetworkManager/system-connections git init git add . git commit -m Initial network config批量修改技巧# 批量修改DNS设置 for f in *.nmconnection; do sed -i /^dns/d; /^\[ipv4\]/a dns8.8.8.8; $f done配置备份恢复# 备份 tar czf network-config-$(date %F).tgz /etc/NetworkManager # 恢复 tar xzf network-config-2023-01-01.tgz -C /多环境配置管理 使用nmcli的--临时配置选项nmcli connection modify id ipv4.addresses 192.168.1.100/24 --temp网络配置方式的变革反映了Linux系统管理向更现代、更可靠的架构演进。虽然改变初期会带来适应成本但新的NetworkManager体系在复杂网络环境下的稳定性和功能性优势明显。建议管理员尽快熟悉nmcli等现代工具逐步淘汰对ifcfg脚本的依赖。
Rocky Linux网络配置变革:从ifcfg到NetworkManager
1. 现象解析消失的network-scripts目录在Rocky Linux 10.1系统中许多从RHEL/CentOS 7迁移过来的管理员会惊讶地发现熟悉的/etc/sysconfig/network-scripts目录不见了。这不是安装错误或系统缺陷而是Linux网络管理方式演进的结果。传统ifcfg脚本方式已被NetworkManager的keyfile格式替代新系统的网络配置现在默认存储在/etc/NetworkManager/system-connections目录下。这个变化源于Red Hat系列发行版从RHEL 8开始的网络管理架构改革。NetworkManager作为默认网络管理工具其原生配置方式与传统ifcfg脚本有本质区别。keyfile格式采用INI风格的结构化配置比原来的shell脚本格式更易于程序化处理也减少了因脚本语法错误导致的网络故障。重要提示虽然ifcfg脚本仍能被NetworkManager识别但官方明确建议新系统采用keyfile格式。混合使用两种配置方式可能导致不可预见的冲突。2. 新旧网络配置机制对比2.1 传统ifcfg脚本体系传统网络配置以/etc/sysconfig/network-scripts/ifcfg- 文件为核心配合route- 等辅助文件。典型ifcfg文件包含DEVICEeth0 BOOTPROTOdhcp ONBOOTyes这种方式的局限性日益明显缺乏标准化各发行版的参数命名存在差异调试困难依赖shell脚本的执行顺序和错误处理功能局限难以支持现代网络特性如SR-IOV、WiFi 6等2.2 NetworkManager的keyfile格式新的配置存储在/etc/NetworkManager/system-connections/ .nmconnection典型内容[connection] idWired Connection uuid5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 typeethernet [ipv4] methodauto [ethernet] mac-address00:11:22:33:44:55优势包括标准化格式遵循.freedesktop.org规范原子化操作配置文件整体生效/回滚丰富元数据支持连接优先级、多配置文件等特性3. 现代网络管理实操指南3.1 基础网络配置方法推荐使用nmcli工具进行配置# 查看现有连接 nmcli connection show # 创建新连接DHCP nmcli connection add con-name OfficeLAN ifname eth0 type ethernet # 静态IP配置 nmcli connection add con-name ServerLAN ifname eth1 type ethernet \ ip4 192.168.1.100/24 gw4 192.168.1.13.2 传统ifcfg迁移方案如需兼容旧系统可通过工具转换# 将ifcfg转换为keyfile nmcli connection migrate # 反向转换不推荐 nmcli connection migrate --ifcfg-rh3.3 高级网络配置示例配置绑定接口nmcli connection add type bond con-name bond0 ifname bond0 \ mode active-backup ipv4.method manual \ ipv4.addresses 10.0.0.2/24 ipv4.gateway 10.0.0.1 nmcli connection add type ethernet slave-type bond \ con-name bond0-port1 ifname eth1 master bond04. 常见问题排查4.1 网络服务无法启动现象NetworkManager服务启动失败 解决方案# 检查日志 journalctl -u NetworkManager -b # 常见原因残留的ifcfg文件干扰 ls -l /etc/sysconfig/network-scripts/ rm -f /etc/sysconfig/network-scripts/ifcfg-*4.2 配置不生效现象修改nmconnection文件后网络无变化 处理步骤确认文件权限为600chmod 600 /etc/NetworkManager/system-connections/*.nmconnection重新加载配置nmcli connection reload手动激活连接nmcli connection up connection-name4.3 传统工具兼容方案对于必须使用ifcfg脚本的场景安装legacy包dnf install network-scripts创建符号链接ln -s /etc/sysconfig/network-scripts /etc/sysconfig/network注意这种方案可能在未来版本中被移除5. 网络管理最佳实践配置版本控制cd /etc/NetworkManager/system-connections git init git add . git commit -m Initial network config批量修改技巧# 批量修改DNS设置 for f in *.nmconnection; do sed -i /^dns/d; /^\[ipv4\]/a dns8.8.8.8; $f done配置备份恢复# 备份 tar czf network-config-$(date %F).tgz /etc/NetworkManager # 恢复 tar xzf network-config-2023-01-01.tgz -C /多环境配置管理 使用nmcli的--临时配置选项nmcli connection modify id ipv4.addresses 192.168.1.100/24 --temp网络配置方式的变革反映了Linux系统管理向更现代、更可靠的架构演进。虽然改变初期会带来适应成本但新的NetworkManager体系在复杂网络环境下的稳定性和功能性优势明显。建议管理员尽快熟悉nmcli等现代工具逐步淘汰对ifcfg脚本的依赖。