问题现象

在Linux系统内运行systemctl restart network命令启动网络服务时,提示Job for network.service failed because the control process exited with error code. 错误,如下图所示。本文以CentOS 7.9系统为例。报错信息

可能原因

可能是通过控制台或OpenAPI卸载实例辅助网卡后未删除对应网卡的配置文件导致。

解决方案

您可以参考以下步骤,删除不存在的网卡对应的配置文件,解决上述问题。

  1. 远程连接ECS实例。
    具体操作,请参见连接方式概述
  2. 查看网卡配置文件和ECS实例的网卡是否一致。
    • 查看网卡配置文件。
      ll /etc/sysconfig/network-scripts/ifcfg*
      说明 不同系统网卡配置文件所在目录不同,请根据实际情况修改以上命令。
      • Red Hat系列:/etc/sysconfig/network-scripts/
        • CentOS 6/7/8
        • Red Hat 6/7/8/9
        • Anolis 7/8
        • Fedora 33/34/35
        • Alibaba Cloud Linux 2/3
        • CentOS Stream 8/9
        • Rocky Linux
        • AlmaLinux
      • Ubuntu 18/20:/etc/netplan/
      • SLES系列:/etc/sysconfig/network/
        • OpenSUSE
        • SUSE Linux
      • Debian、Ubuntu 16.04及以下版本:网卡允许热插拔,因此网卡不存在不会影响网络服务启动
      如下图所示,存在eth0和eth1两块网卡的配置文件。查看网卡配置文件
    • 查看ECS实例的网卡信息。
      ip address show
      如下图所示,该ECS实例只有eth0一块网卡。查看网卡信息
    • 如果网卡配置文件与实际网卡信息不一致,请继续执行步骤3
    • 如果网卡配置文件与实际网卡信息一致,流程结束。
  3. 删除多余网卡配置文件。
    rm -rf /etc/sysconfig/network-scripts/ifcfg-eth1
    如下图所示,eth1网卡配置文件已删除。删除网卡配置文件
  4. 重启网络服务。
    systemctl restart network
  5. 查看网络服务状态。
    systemctl status network
    如下图所示,表示当前网络服务状态已正常。查看网络服务状态