问题描述

官方Ubuntu20.04安装完成之后,开机启动时出现A start job is running for wait for network to be Configured (10s / no limit),会造成长时间等待,开机时间过长。


原因分析

  1. 系统启动,如果没有接入网线或者网线没有插好,会导致获取不了网络长时间等待
  2. 新增加了网口配置,但是配置错误;或者新增加的网口对应的网线不通

解决方法

一、暴力解决,设置等待超时时间

  1. 一直等待是因为下面这个服务无法正常启动造成的

    1
    sudo systemctl status systemd-networkd-wait-online.service

    查看状态为Failed

  2. 修改服务对应的配置

    1
    sudo vim /etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
  3. [Service]下添加一行,设置为等待5秒超时

    1
    TimeoutStartSec=5sec

    修改前

    1
    2
    3
    4
    [Service]
    Type=oneshot
    ExecStart=/lib/systemd/systemd-networkd-wait-online
    RemainAfterExit=yes

    修改后

    1
    2
    3
    4
    5
    [Service]
    Type=oneshot
    ExecStart=/lib/systemd/systemd-networkd-wait-online
    RemainAfterExit=yes
    TimeoutStartSec=5sec
  4. 修改完成之后重启系统,此时等待5秒超时系统就会自动跳过等待的步骤

    1
    sudo reboot now

二、修改网口配置

  1. 查看服务运行状态

    1
    sudo systemctl status systemd-networkd-wait-online.service

    查看状态为Failed

  2. 查看网口是否正常配置,其中enp161s0f0网口一直处于configuring状态,可见就是这个网口造成的

    1
    networkctl

    查看网口配置

  3. 查找这个网口是在哪个配置文件里面配置的

    1
    sudo grep -l enp161s0f0 /etc/netplan/*

    查找网口配置文件

  4. 修改文件配置,我们需要去掉这个配置

    1
    sudo vim /etc/netplan/00-installer-config.yaml

    注释掉对应的网口

  5. 检查配置文件是否修改正确

    1
    sudo netplan generate
  6. 应用网络配置

    1
    sudo netplan apply
  7. 查看网口配置,没有处于configuring状态的网口了

    1
    networkctl

    查看网口配置

  8. 重启服务,查看服务状态

    1
    sudo systemctl restart systemd-networkd-wait-online.service
    1
    sudo systemctl status systemd-networkd-wait-online.service

    服务运行成功