NetworkManager-wait-online.service slow boot times

Hello,
Since I added a new network card (Intel Corporation Centrino Ultimate-N 6300) in my thinkpad x230 I started having 2min + boots (although sometimes its faster if the laptop manages to have a connection).

Here is some logs that might be useful:

When I run systemd-analyze:

Startup finished in 2.630s (kernel) + 17.928s (initrd) + 2min 10.419s (userspace) = 2min 30.978s 

When I run systemd-analyze critical-chain:

graphical.target @2min 10.395s
└─multi-user.target @2min 10.394s
  └─plymouth-quit-wait.service @2min 6.071s +4.317s
    └─systemd-user-sessions.service @2min 5.769s +22ms
      └─remote-fs.target @2min 5.761s
        └─remote-fs-pre.target @2min 5.761s
          └─nfs-client.target @6.139s
            └─gssproxy.service @6.111s +27ms
              └─network.target @6.100s
                └─wpa_supplicant.service @6.079s +19ms
                  └─dbus-broker.service @4.071s +114ms
                    └─dbus.socket @3.964s
                      └─sysinit.target @3.952s
                        └─systemd-update-utmp.service @3.929s +22ms
                          └─auditd.service @3.846s +80ms
                            └─systemd-tmpfiles-setup.service @3.739s +102ms
                              └─local-fs.target @3.632s
                                └─home.mount @3.621s +9ms
                                  └─systemd-fsck@dev-mapper-fedora_localho>
                                    └─local-fs-pre.target @3.574s
                                      └─lvm2-monitor.service @1.294s +1.51>
                                        └─dm-event.socket @1.267s
                                          └─system.slice
                                            └─-.slice

The issue seems to be coming from the NetworkManager-wait-online.service.

After boot I can start it normally, so I’m not sure why is it failing on boot.

Also sometimes it does not fail but I still get wait times. Is there a way to check which services are depended on it?

For now I put a 1 second timeout to the service’s file but it does not seem to work.
My next step is probably going to be to mask the service but ideally I would like to solve the issue and not try to hide it.

Does any of you have a similar issue?

edit: Does anyone know why fedora needs to establish a connection on boot? I would imagine that this can also happen in the login screen?

1 Like

I had this in libvirt when I started a VM. Afterwards I had no network connection. Unfortunately I not found out how to debug. But since I avoid virtual “machine manager” to manage the a virtual network i have peace. I do use a bridged connection created with nmcli

man NetworkManager-wait-online.service explains what this is, and why it can take so long, and what to do about it.