远程启动应用程序时在 Linux 上共享 D-BUS 消息总线

Posted

技术标签:

【中文标题】远程启动应用程序时在 Linux 上共享 D-BUS 消息总线【英文标题】:Share D-BUS message bus on Linux when launching applications remotely 【发布时间】:2014-11-27 08:43:32 【问题描述】:

我正在尝试使用 SSH 远程连接在我的服务器中启动两个应用程序。这些应用程序使用 D-BUS 消息总线进行通信。 如果我在本地登录到我的服务器计算机,这些应用程序之间的通信就会完美运行。但是,当我尝试远程启动这些应用程序时,会出现与 D-BUS 相关的错误。

在服务器计算机上远程启动应用程序时,有什么方法可以共享 D-BUS 消息总线?

我的服务器在 Ubuntu 12.04 上运行。

【问题讨论】:

【参考方案1】:

终于找到了我的问题的解决方案。

首先,我需要在启用受信任的 X11 转发的情况下启动 ssh 连接: ssh -2 -Y user@address

在这个远程连接中,我使用新的 D-Bus 启动了第一个应用程序:dbus-launch --autolaunch=machineID app1。然后我打开了新的 SSH 连接,并使用命令dbus-launch --autolaunch=machineID app2 与 D-Bus 一起启动了第二个应用程序。 MachineID 可以在 Linux 环境下的 ~/.dbus/session-bus/ 中找到。

这就是我如何让这两个应用程序在远程连接中使用相同的 D-Bus 消息总线。

【讨论】:

以上是关于远程启动应用程序时在 Linux 上共享 D-BUS 消息总线的主要内容,如果未能解决你的问题,请参考以下文章

JNI技术。开发时在Android或Linux平台上,所以呢?

Linux网络文件共享服务之NFS

windows系统往远程桌面上共享文件(某磁盘下文件)如何远程连接传输文件。

如何在视频/音频通话中远程共享屏幕?

从 SSH linux 在远程窗口上启动应用程序 GUI [关闭]

Linux下配置iSCSI服务器,实现资源共享