DISPLAY=:0
这些小程序在( fgconsole
7)处的 X 上运行。
网络小程序
相关nm-applet
/NetworkManager
运行此命令sleep 10;nmcli nm enable false;beep
(您必须连接到互联网,它将断开连接)并快速按“Ctrl+Alt+F1”转到vt1。它失败了:
“**(进程:1388670):警告**:启用/禁用网络时出错:无权启用/禁用网络”
CPU频率indicator-cpufreq
与运行此命令 相关sleep 10;cpufreq-selector -g powersave;beep
并快速按“Ctrl+Alt+F1”转到 vt1
它将失败并显示此消息
“调用 SetGovernor 时出错:调用者未经授权”
如何修复它?
(如果您知道为什么会发生这种情况,我也想知道)
(作为普通用户,如果在右侧显示屏上,我们可以发出这些命令,所以如果可能的话,我更喜欢不需要 sudo 的答案)
PS.:
beep
需要sudo modprobe pcspkr
当在另一个 X(例如sudo -k X :1 & sleep 5;xterm -display :1
)上运行时,它们也会失败并出现相同的错误消息。
答案1
你有PolicyKit。
PolicyKit 是一个客户端-服务器系统,用于控制谁有权做什么。受信任的程序(例如 NetworkManager)通过远程过程调用询问 PolicyKit 调用它的用户是否有权执行 xe 所请求的操作。
由授权服务器处理的操作规则位于该/usr/share/polkit-1/actions
目录中。规则可以说明它们如何应用于所有用户,如何应用于登录到非活动虚拟终端的本地虚拟终端的用户,以及如何应用于登录到非活动虚拟终端的本地虚拟终端的用户。是活动的虚拟终端。这三者可能有所不同。
显然,系统上的规则规定,这些各种特权任务只能由登录到活动虚拟终端的用户执行。因此,如果您不希望出现这种情况,请更改规则。
进一步阅读
polkit
。 Ubuntu Trusty 手册页。 8. 2010. Canonical 有限公司