切换到systemd后,我开始使用NetworkManager.service,我在启动时自动连接到WIFI,但是当我运行时收到以下消息nmcli con
:
** (process:4433): WARNING **: Could not initialize NMClient /org/freedesktop/NetworkManager: Method "GetAll" with signature "s" on interface "org.freedesktop.DBus.Properties" doesn't exist
Error: nmcli (0.9.6.4) and NetworkManager (unknown) versions don't match. Force execution using --nocheck, but the results are unpredictable.
并从 systemctl 中:
NetworkManager.service loaded active running Network Manager
现在,如果我重新启动NetworkManager.service
,它就可以工作了。这是为什么?
答案1
这是一个已知问题,并且几个错误报告已提交。
还有ubuntu 的解决方法,但我认为这对 Arch 用户不起作用,因为他们不再使用 init 脚本。我打赌他们的修复可以移植,但我systemd
对此了解不够。
这是一个办法来自 Fedora 论坛,看起来可行:
- 右键单击网络管理器小程序
- 编辑连接
- 点击无线的选项卡(如果您正在使用该选项卡)
- 选择您的连接并单击编辑按钮
- 前往IPv4 设置标签
- 点击路线按钮
- 查看 ”仅将此连接用于其网络上的资源。”
- 按确定
- 取消选中“可供所有用户使用”
- 按节省
答案2
我在 CentOS 7 上遇到了这个问题,我以 root 身份执行了此操作:
systemctl mask network
该命令会阻止network.service
。这是因为network.service
,做NetworkManager.service
同样的事情,有时,一项服务不允许另一项服务正常工作。