在 CentOS-Stream-9 中使用 network 服务代替 NetworkManager

在 CentOS-Stream-9 中,默认的网络管理工具是 NetworkManager。但在某些场景下,如需要进行低级别的网络配置或脚本控制时,使用传统的 network 服务可能更为合适。以下是如何在 CentOS-Stream-9 中禁用 NetworkManager 并启用 network 服务的详细步骤。

一、禁用 NetworkManager

  1. 停止并禁用 NetworkManager 服务
    首先,停止 NetworkManager 服务,并防止其在系统启动时自动启动。

    sudo systemctl stop NetworkManager
    sudo systemctl disable NetworkManager
  2. 确认 NetworkManager 已停止
    使用以下命令确认 NetworkManager 已停止运行。

    sudo systemctl status NetworkManager

二、安装 network 服务

  1. 安装 network-scripts 包
    默认情况下,CentOS-Stream-9 可能未安装 network-scripts 包。使用以下命令安装该包:

    sudo dnf install network-scripts
  2. 启用 network 服务
    安装完成后,启用 network 服务,并确保其在系统启动时自动启动。

    sudo systemctl enable network
    sudo systemctl start network
  3. 确认 network 服务状态
    使用以下命令确认 network 服务已启动。

    sudo systemctl status network

三、配置网络接口

  1. 编辑网络配置文件
    network 服务使用 /etc/sysconfig/network-scripts/ 目录下的配置文件来管理网络接口。每个网络接口都有一个对应的配置文件,如 ifcfg-eth0。以下是一个典型的配置文件示例:

    sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

    配置文件内容示例:

    DEVICE=eth0
    BOOTPROTO=dhcp
    ONBOOT=yes

    对于静态 IP 配置,示例如下:

    DEVICE=eth0
    BOOTPROTO=static
    ONBOOT=yes
    IPADDR=192.168.1.100
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=8.8.8.8
    DNS2=8.8.4.4
  2. 重启网络服务
    编辑完配置文件后,重启 network 服务以应用新的配置。

    sudo systemctl restart network
  3. 验证网络连接
    使用 ip addrifconfig 命令验证网络接口是否已正确配置和激活。

    ip addr show eth0

四、检查和排除故障

  1. 查看网络状态和日志
    如果网络连接有问题,可以查看 network 服务的状态和日志获取更多信息。

    sudo systemctl status network
    sudo journalctl -u network
  2. 检查配置文件语法
    确保配置文件中没有拼写错误或语法问题,尤其是关键字和值之间不要有多余的空格或错误。

思维导图

graph TD;
    A[CentOS-Stream-9 中使用 network 服务] --> B[禁用 NetworkManager]
    B --> B1[停止 NetworkManager 服务]
    B --> B2[禁用 NetworkManager 自动启动]
    B --> B3[确认 NetworkManager 已停止]

    A --> C[安装 network 服务]
    C --> C1[安装 network-scripts 包]
    C --> C2[启用 network 服务]
    C --> C3[确认 network 服务状态]

    A --> D[配置网络接口]
    D --> D1[编辑网络配置文件]
    D --> D2[重启 network 服务]
    D --> D3[验证网络连接]

    A --> E[检查和排除故障]
    E --> E1[查看网络状态和日志]
    E --> E2[检查配置文件语法]

总结

通过禁用 NetworkManager 并启用 network 服务,您可以在 CentOS-Stream-9 中实现更加细粒度的网络管理。这对于某些需要低级别网络控制的场景非常有用。确保正确安装和配置 network-scripts 包,并编辑网络接口配置文件来满足特定需求。通过上述步骤,您可以顺利地从 NetworkManager 过渡到使用 network 服务进行网络管理。