在 NetworkManager 中,我的 nm-dispatcher 从未被调用

在 NetworkManager 中,我的 nm-dispatcher 从未被调用

我有两台 Ubuntu 笔记本电脑(均为 10.10)。
一台是新安装的 Maverick,另一台自 9.04 以来已升级多次。

对于后者,设置自定义脚本挂钩/etc/NetworkManager/dispatcher.d/可立即生效。

然而,在较旧的笔记本电脑上,我无法调用 nm-dispatcher,或者至少无法执行它的挂钩。

我试过跑

NetworkManager --no-daemon -log-level=DEBUG

但没有提到 nm-dispatcher。

我怎么能够

  1. 看看源代码(我查看了git 仓库但什么也没找到。

  2. 查找为什么 nm-dispatcher 从未被调用。

答案1

您实际上不需要查看源代码来修复此问题;调度程序会运行脚本,/etc/NetworkManager/dispatcher.d直到它完成或其中一个脚本返回错误。这在几个版本中都是这种情况,因为初始调度程序 ( 01ifupdown) 不理解vpn-upand vpn-down(或hostname, even )状态。

您将能够从日志中看到正在发生的事情/var/log/syslog;它们将包含如下一行:

Nov 5 21:38:57 chris-laptop nm-dispatcher.action: Script '/etc/NetworkManager/dispatcher.d/01ifupdown' exited with error status 1.

这个特定的问题现在已经修复;但是如果您仍然遇到问题,您应该考虑提交错误,或者进行一些显而易见的操作,例如验证权限(例如,脚本是否可执行)。

相关内容