1

我有一个通过 ssh 连接到 dbus 并在 ubuntu 中工作的代码,但我必须迁移到 gentoo。在 ubuntu 中,我编写了一个脚本,该脚本找到在其环境中具有 DBUS_SESSION_BUS_ADDRESS 的 dbus 的 pid,并将其源导出,因此我可以 ssh 并且还可以访问目标的 dbus。我在 gentoo 中使用了完全相同的脚本,但它没有找到 dbus 会话。这里有熟悉gentoo和dbus的人可以帮助我吗?我想 ssh 然后在 gentoo 中访问 dbus。

谢谢你。

4

2 回答 2

0

看起来 dbus 会话通常只与 Gentoo 上的 X 会话一起启动。我只能在这些文件中找到该变量的实例......

  • /etc/X11/xinit/xinitrc.d/80-dbus
  • /etc/xdg/xfce4/xinitrc

话虽如此,我 ssh'd 到一个 Ubuntu 服务器框,变量也没有在那里设置。也许它通常只在桌面版本中设置,或者它可能需要安装一些软件包。

如果您不尝试连接到现有的 dbus 会话,我想您需要做的是启动一个新会话,作为您使用 .bash_profile 或其他方式进行 ssh 登录的一部分。

于 2012-07-17T09:54:00.893 回答
0

如果您已经启动了 X 会话并想要获取该会话的 DBUS 地址,则它位于_DBUS_SESSION_BUS_ADDRESS窗口拥有_DBUS_SESSION_BUS_SELECTION_[hostname]_[machineid]选择的属性中。不确定是否有一种简单的方法可以使用 shell one-liner/xlsatoms/xprop 组合来提取它。我有 node.js脚本,它使用node-x11库为您提供地址

于 2012-09-19T05:41:58.410 回答