Polkit 不接受我的凭证

Polkit 不接受我的凭证

我在通过策略工具包进行身份验证时遇到问题。Sudo 工作正常。

关于这一点上一个问题,这是我的输出

$ ps aux | grep [p]olkit
pkcheck --action-id org.freedesktop.systemtoolsbackends.set --allow-user-interaction --process $(pidof -s bash)

这里(我已用星号替换了我的个人信息):

$ ps aux | grep [p]olkit
root      1003  0.0  0.0 286500  6824 ?        Sl   Oct21   1:04 /usr/lib/policykit-1/polkitd --no-debug
********  4685  0.0  0.0 651540 17792 ?        Sl   09:33   0:00 /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1
$ pkcheck --action-id org.freedesktop.systemtoolsbackends.set --allow-user-interaction --process $(pidof -s bash)
Error checking for authorization org.freedesktop.systemtoolsbackends.set: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Action org.freedesktop.systemtoolsbackends.set is not registered

如有任何关于解决此问题的信息,我们将不胜感激!

答案1

Action org.freedesktop.systemtoolsbackends.set is not registered! 可能是你缺少.policy声明此 polkit 操作的文件

您的命令在机器(Ubuntu 16.04)上运行良好,让我们来跟踪它:

~$ pkcheck --action-id org.freedesktop.systemtoolsbackends.set --allow-user-interaction --process $(pidof -s bash)
polkit\56retains_authorization_after_challenge=true
polkit\56temporary_authorization_id=tmpauthz1

~$ grep -r "org.freedesktop.systemtoolsbackends.set" /usr/share/polkit-1/actions/
/usr/share/polkit-1/actions/org.freedesktop.SystemToolsBackends.policy:  <action id="org.freedesktop.systemtoolsbackends.set">

~$ dpkg -S /usr/share/polkit-1/actions/org.freedesktop.SystemToolsBackends.policy
system-tools-backends: /usr/share/polkit-1/actions/org.freedesktop.SystemToolsBackends.policy

要确认问题,请检查是否已安装apt-cache policy system-tools-backends

要修复此问题,请尝试重新安装其包:

sudo apt-get install --reinstall system-tools-backends

相关内容