[kwlug-disc] Degraded systems (all of mine, yours too (probably))
Anton Avramov
lukav at lukav.com
Mon Apr 6 10:56:12 EDT 2026
The purpose of this service is to be used as a dependency by other
services that need internet/network configured when starting up, like
apache, dnsmasq, chrony.
Some of those can manage to reload later when the interface is
configured, but some cannot.
It is slowing your boot time, because be default it waits for all
interfaces to be configured and that could include network cards that
don't have a connection at all.
You have 2 options:
1. disable the unit and hope to not have services that need network
configured when starting (note that because of boot order and race
conditions those could still boot fine most of the time)
2. override the service and explicitly give a flag which interface to
monitor like so:
Create a dir /etc/systemd/system/systemd-networkd-wait-
online.service.d
Create a file in there: /etc/systemd/system/systemd-networkd-wait-
online.service.d/override.conf
With the content between the dashes below and update your interface
name
--------
[Service]
ExecStart=
ExecStart=/lib/systemd/systemd-networkd-wait-online --interface enp6s0
--------
The first ExecStart is on purpose to reset the existing one other wise
you just add what to be executed on start instead of override it.
I would try option 2 first since 1 can have unforeseen consequences. In
my case I have my rescue-ssh.target that is ment to only start network,
ssh and my vpn. However if I disable systemd-networkd-wait-online then
the target doesn't configure the network interfaces at all which makes
the system inaccessible.
Hope this helps.
On Sun, 2026-04-05 at 12:45 -0400, Khalid Baheyeldin wrote:
> I found that the systemd-networkd-wait-online service is disabled on
> 6 of my machines, but enabled on another 2.
>
> Examples where it is disabled:
>
> foo
> * systemd-networkd-wait-online.service - Wait for Network to be
> Configured
> Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-
> online.service; disabled; preset: enabled)
> Active: inactive (dead)
> Docs: man:systemd-networkd-wait-online.service(8)
> bar
> * systemd-networkd-wait-online.service - Wait for Network to be
> Configured
> Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-
> online.service; disabled; preset: enabled)
> Active: inactive (dead)
> Docs: man:systemd-networkd-wait-online.service(8)
>
> On one machine that it is enabled, it runs fine:
>
> Machine 1: wd1
> * systemd-networkd-wait-online.service - Wait for Network to be
> Configured
> Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-
> online.service; enabled; preset: enabled)
> Drop-In: /run/systemd/system/systemd-networkd-wait-
> online.service.d
> `-10-netplan.conf
> Active: active (exited) since Sat 2026-04-04 11:47:36 EDT; 23h
> ago
> Docs: man:systemd-networkd-wait-online.service(8)
> Process: 1182 ExecStart=/lib/systemd/systemd-networkd-wait-online
> -i eno8303:degraded (code=exited, status=0/SUCCESS)
> Process: 1740 ExecStart=/lib/systemd/systemd-networkd-wait-online
> --any -o routable -i eno8303 (code=exited, status=0/SUCCESS)
> Main PID: 1740 (code=exited, status=0/SUCCESS)
> CPU: 11ms
>
> Apr 04 11:47:31 wd1 systemd[1]: Starting systemd-networkd-wait-
> online.service - Wait for Network to be Configured...
> Apr 04 11:47:36 wd1 systemd[1]: Finished systemd-networkd-wait-
> online.service - Wait for Network to be Configured.
>
> On the other it times out and reports a failure:
>
> Machine 2: w2
> x systemd-networkd-wait-online.service - Wait for Network to be
> Configured
> Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-
> online.service; enabled; preset: enabled)
> Drop-In: /run/systemd/system/systemd-networkd-wait-
> online.service.d
> `-10-netplan.conf
> Active: failed (Result: exit-code) since Sat 2026-04-04 12:01:54
> EDT; 23h ago
> Docs: man:systemd-networkd-wait-online.service(8)
> Process: 2447 ExecStart=/lib/systemd/systemd-networkd-wait-online
> -i eno8303:degraded -i eno8403:degraded (code=exited,
> status=1/FAILURE)
> Main PID: 2447 (code=exited, status=1/FAILURE)
> CPU: 17ms
>
> Apr 04 11:59:54 w2 systemd[1]: Starting systemd-networkd-wait-
> online.service - Wait for Network to be Configured...
> Apr 04 12:01:54 w2 systemd-networkd-wait-online[2447]: Timeout
> occurred while waiting for network connectivity.
> Apr 04 12:01:54 w2 systemd[1]: systemd-networkd-wait-online.service:
> Main process exited, code=exited, status=1/FAILURE
> Apr 04 12:01:54 w2 systemd[1]: systemd-networkd-wait-online.service:
> Failed with result 'exit-code'.
> Apr 04 12:01:54 w2 systemd[1]: Failed to start systemd-networkd-wait-
> online.service - Wait for Network to be Configured.
>
> The two machines are very similar in configuration, hardware and
> software.
>
> Why only those two machines have that service enabled?
> My guess is that they had a fresh install of Ubuntu Server 24.04 LTS,
> and not upgraded from earlier releases.
>
> Most of the others that have the unit disabled were upgraded from
> 14.04 (or earlier) through 22.04 and then 24.04.
> A couple of them had a fresh install of Xubuntu 24.04 LTS, so maybe
> that is how they are pre-configured.
>
> I wouldn't be too concerned about it, except that it delays the
> booting of this machine by a few minutes.
>
> I can't glean much from the unit file itself.
>
> The highlighted parts contain ids of the network interfaces.
> Only one is actually used, and it runs fine.
> No idea why it says "degraded" for both.
>
> Can anyone shed more light on this?
> Should I just disable that unit file?
> _______________________________________________
> kwlug-disc mailing list
> To unsubscribe, send an email to kwlug-disc-leave at kwlug.org
> with the subject "unsubscribe", or email
> kwlug-disc-owner at kwlug.org to contact a human being.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kwlug.org/pipermail/kwlug-disc_kwlug.org/attachments/20260406/4b8a7ee5/attachment-0001.htm>
More information about the kwlug-disc
mailing list