如何以用户身份通过​​ ConsoleKit DBus 消息关闭系统?

如何以用户身份通过​​ ConsoleKit DBus 消息关闭系统?

我发现以下命令行可以关闭 Debian/GNU Linux 系统

dbus-send \
  --system \
  --dest=org.freedesktop.ConsoleKit \
  --type=method_call \
  --print-reply \
  --reply-timeout=2000 \
  /org/freedesktop/ConsoleKit/Manager \
  org.freedesktop.ConsoleKit.Manager.Stop

如果我以超级用户身份执行该命令,它会起作用,但作为非特权用户,它会显示:

Error org.freedesktop.ConsoleKit.Manager.NotPrivileged: Not Authorized

我想知道是否可以修改这样的命令,以便与PolicyKit交互,它可以向普通用户授予关闭系统的权限。

ベストアンサー1

根据这个Debian 错误报告,这是由于 ConsoleKit 版本 0.4.1 和 0.4.2 之间的上游更改所致。该线程包含一些建议和解决方法,其中之一是安装直接与 ConsoleKit 对话的显示管理器(如 GDM 或 lightdm)。

おすすめ記事