我尝试使用 dbus 和 UPower 挂起我的服务器。服务器运行 Ubuntu LucidLynx 64 位。
如果我直接坐在机器前,一切正常,但无法通过 ssh 运行。如果我通过 ssh 连接到服务器并尝试使用 dbus 和 upower 挂起机器,它会返回
dbus.exceptions.DBusException: org.freedesktop.UPower.GeneralError: 未授权
谁能告诉我如何配置 dbus 以允许 ssh-users 挂起机器?
Pet*_*rch 12
有两种基本方法可以完成此操作和解决方法:
您需要修改/usr/share/polkit-1/actions/org.freedesktop.upower.policy
,将XDG_SESSION_COOKIE
环境变量设置为适当的值或使用pm-suspend
:
/usr/share/polkit-1/actions/org.freedesktop.upower.policy
应用此补丁:
--- /usr/share/polkit-1/actions/org.freedesktop.upower.policy.orig 2011-11-16 19:06:59.274055248 +0100
+++ /usr/share/polkit-1/actions/org.freedesktop.upower.policy 2011-11-16 19:11:15.178864922 +0100
@@ -21,6 +21,7 @@
<defaults>
<allow_inactive>no</allow_inactive>
<allow_active>yes</allow_active>
+ <allow_any>yes</allow_any>
</defaults>
</action>
Run Code Online (Sandbox Code Playgroud)
(到<action id="org.freedesktop.upower.suspend">
标签/部分),它也可以工作......
或者
XDG_SESSION_COOKIE
当您使用桌面时,您会看到它$XDG_SESSION_COOKIE
有一个值,但在 ssh 会话中,它有另一个值。XDG_SESSION_COOKIE
例如,在桌面启动时将其存储在 .dotfile 或其他内容中,并在需要通过 ssh 执行此操作的脚本中获取它。
或者,您可以放弃使用dbus
and执行此操作,然后以 root 身份UPower
发出pm-suspend
并结束它!:-)
小智 5
下面的文件/usr/share/polkit-1/actions
不打算修改。
创建一个名为 /etc/polkit-1/localauthority/50-local.d/allow_all_ssh-users_to_upower.pkla
[Allow all ssh-users to upower]
Identity=unix-group:ssh-users
Action=org.freedesktop.upower.policy
ResultInactive=no
ResultActive=yes
AllowAny=yes
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9932 次 |
最近记录: |