Systemd Networkd
systemd-networkd-wait-online的相关配置

systemd有个叫systemd-networkd-wait-online的服务,很多需要联网的服务,例如smb都需要依赖这个服务。

但这个服务似乎是需要手动配置的

❯ /usr/lib/systemd/systemd-networkd-wait-online --help
systemd-networkd-wait-online [OPTIONS...]

Block until network is configured.

  -h --help                 Show this help
     --version              Print version string
  -q --quiet                Do not show status information
  -i --interface=INTERFACE[:MIN_OPERSTATE[:MAX_OPERSTATE]]
                            Block until at least these interfaces have appeared
     --ignore=INTERFACE     Don't take these interfaces into account
  -o --operational-state=MIN_OPERSTATE[:MAX_OPERSTATE]
                            Required operational state
  -4 --ipv4                 Requires at least one IPv4 address
  -6 --ipv6                 Requires at least one IPv6 address
     --any                  Wait until at least one of the interfaces is online
     --timeout=SECS         Maximum time to wait for network connectivity

See the systemd-networkd-wait-online.service(8) man page for details.

正常它会等待所有的网络全部都可用才会停止,不然就是死卡2分钟。

但哪怕是加上了 –any ,依旧没有用,不清楚具体是什么原因。

需要用-i明确制定所有的interface,再使用–any才能正常工作。

否则的话,就必须去修改/etc/systemd/network/下的配置文件,具体配置所有网络后,才能正常使用。 具体的配置方法参考archwiki


最后修改于 2024-10-29