我创建了一些禁用帐户,唯一的目的是在这些帐户中自定义Docky。每个帐户都有一组表示工具集的Docky项。这应该让您了解我所说的Docky工具集的含义:
从这些禁用帐户中,我希望实际用户通过gksudo调用启用或禁用工具集:
xhost + local:dockyAdminUser
gksudo -u dockyAdminUser /usr/bin/docky我已经设置了帐户,但是当我以这种方式启动Docky时,它会抱怨它需要DBus,却找不到它。我怎样才能使DBus可用,这样Docky就可以这样启动了?
注意:同样的事情发生在Tomboy身上,它不会运行并抱怨dbus问题。
注意:我并不是在寻找建议我不会以其他用户的身份启动Docky的解决方案。有一个以上的原因,我必须启动Docky作为另一个用户。但为了让问题更清楚,我不提这些理由。
发布于 2012-03-27 14:01:48
DBUS是一个IPC系统,这意味着不同程序之间的通信方式。
在普通Ubuntu系统中,有一个系统dbus实例,每个日志用户运行一个实例。属于一个希望从同一个用户与其他进程通信的用户的进程不需要使用系统范围的进程。
似乎Docky和Tomboy正在尝试使用用户dbus。因此,至少您应该在Docky之前为该用户启动一个dbus守护进程。你可以这样做:
su - user -c 'dbus-launch'但很可能你会发现另一个问题。计算机在登录时做了很多事情,像Docky这样的复杂程序可能会期望其中的一些已经完成。
您可以检查/etc/X/Xsession.d中大多数在登录时运行的脚本。这是与X相关的脚本,这意味着它们是为所有桌面环境执行的。Docky需要的任何东西都应该从这里开始,因为Docky是DE独立的。
https://askubuntu.com/questions/115701
复制相似问题