
Decouple from a specific initrd generator (dracut) the systemd services that provide networking in the initrd using NM, thus allowing other systemd-based initrd generators to take advantage of it. These new services are: - `NetworkManager-config-initrd.service`: it starts very early at boot, parses the kernel command line using `nm-initrd-generator` and sets the `/run/NetworkManager/initrd/neednet` flag to activate the other initrd services, and also sets the hostname if needed. - `NetworkManager-initrd.service`: it basically does the same job as the `NetworkManager.service`, but in the initrd. - `NetworkManager-wait-online-initrd.service`: ordered before `network-online.target`, it will allow other services that require networking to delay their start until NM has finished.
27 lines
930 B
SYSTEMD
27 lines
930 B
SYSTEMD
[Unit]
|
|
Description=NetworkManager Wait Online (initrd)
|
|
DefaultDependencies=no
|
|
Requires=NetworkManager-initrd.service
|
|
After=NetworkManager-initrd.service
|
|
Before=network-online.target
|
|
ConditionPathExists=/etc/initrd-release
|
|
ConditionPathExists=/run/NetworkManager/initrd/neednet
|
|
|
|
[Service]
|
|
# `nm-online -s` waits until the point when NetworkManager logs
|
|
# "startup complete". That is when startup actions are settled and
|
|
# devices and profiles reached a conclusive activated or deactivated
|
|
# state. It depends on which profiles are configured to autoconnect and
|
|
# also depends on profile settings like ipv4.may-fail/ipv6.may-fail,
|
|
# which affect when a profile is considered fully activated.
|
|
# Check NetworkManager logs to find out why wait-online takes a certain
|
|
# time.
|
|
|
|
Type=oneshot
|
|
ExecStart=@bindir@/nm-online -s -q
|
|
RemainAfterExit=yes
|
|
Environment=NM_ONLINE_TIMEOUT=3600
|
|
|
|
[Install]
|
|
WantedBy=initrd.target network-online.target
|