![systemd-networkd-等待在线失败](https://linux22.com/image/9987/systemd-networkd-%E7%AD%89%E5%BE%85%E5%9C%A8%E7%BA%BF%E5%A4%B1%E8%B4%A5.png)
默认的 openvpn-server 配置文件依赖于 systemd-networkd-wait-online,超时并出现错误:
systemd-networkd-wait-online[279]: Event loop failed: Connection timed out
我的系统只有2个接口:
- 瞧,被忽略了
- eth0,已启动并正在运行并且配置完美
为什么会超时?这是系统错误吗?
法比奥
答案1
基本上与@alexei 相同的答案,但该选项--any
允许您等待任何界面上线。您也可能会从该--timeout
选项中受益。
请参阅文档了解更多信息。
sudo systemctl edit systemd-networkd-wait-online.service
并添加
[Service]
ExecStart=
ExecStart=/usr/lib/systemd/systemd-networkd-wait-online --any
他们之所以是一个额外的空白ExecStart=
,是为了清除现有的服务条目,第二个设置为新值。
答案2
这可能是由于 systemd-networkd-wait-online 实用程序在某些极端情况下等待不会出现的接口(例如未插入电缆的以太网端口),例如有两个以太网接口。
就我而言,解决方法是编辑服务以将--ignore
参数传递给我不想等待的接口的实用程序。
sudo systemctl edit systemd-networkd-wait-online.service
添加这些行:
[Service]
ExecStart=
ExecStart=/usr/lib/systemd/systemd-networkd-wait-online --ignore=enp0s31f6
答案3
只需添加到此,您还可以指定一个特定的接口来systemd-networkd-wait-online
等待使用
ExecStart=/lib/systemd/systemd-networkd-wait-online --interface=eth0
这将导致服务忽略所有其他接口。
干杯!