python - GNOME:在备份运行时禁止关机

标签 python linux debian gnome

系统:Debian 7 32位

我试图防止我的笔记本电脑在备份期间关机 (obnam),我想我可以使用 inhibit 来做到这一点。

我找到了有关如何执行此操作的信息 here , 但是当我在 python shell 中执行它时

import dbus
bus = dbus.SessionBus()
proxy = bus.get_object('org.gnome.SessionManager','/org/gnome/SessionManager')

我得到了错误
dbus.exceptions.DBusException:org.freedesktop.DBus.Error.ServiceUnknown:名称 org.gnome.SessionManager 未由任何 .service 文件提供

list_names 确认:

bus.list_names() dbus.Array([dbus.UTF8String('org.freedesktop.DBus'), dbus.UTF8String(':1.16'), dbus.UTF8String('org.gnome.Terminal.Display_0'), dbus.UTF8String(':1.14'), dbus.UTF8String(':1.15'), dbus.UTF8String('org.gnome.GConf'), dbus.UTF8String(':1.2')], signature=dbus.Signature('s'))

Q1:为什么org.gnome.SessionManager不可用?
Q2:是否有其他(与 GNOME 相关的)可能性来防止在执行备份期间关机?

最佳答案

我尝试从 root shell 使用 dbus 接口(interface),但 root 用户没有有效的 GNOME session (当然)。

运行与我自己的(已登录)用户相同的代码给出了预期的结果。

关于python - GNOME:在备份运行时禁止关机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26183297/

相关文章:

python - Django 获得独特的多种功能

python - 在python中查找列表上的边框

javascript - 在 Linux 上部署 Javascript 应用程序的最简单方法

Java keytool - 非法选项 deststorepass :file

package - 打包库(Debian)时创建符号链接(symbolic link)?

python - RLlib 训练一次迭代中的时间步数

python - Mysql和python数据太长

linux - 从 Docker 容器内部运行 dnsmasq 作为 DHCP 服务器

ubuntu - 如何在旧的 ubuntu 版本上安装仅在较新的 ubuntu 版本上可用的更高版本的软件包?我以erlang为例

linux - 在不同的脚本/终端中使用 wlan0 或 eth0