如何通过SSH远程控制Banshee?

Smi*_*max 9 ssh banshee dbus

Banshee 能够使用以下命令从命令行控制其主窗口

$ banshee --next
Run Code Online (Sandbox Code Playgroud)

但是,当以同一用户身份通过​​ ssh 运行这些命令时,它只是尝试启动 banshee。

当使用 ssh 会话登录时,有没有办法推送到另一个会话。

我猜这更像是 ssh/tty 的事情而不是女妖的事情,但如果可以做到的话,我很想知道。

编辑:

export $(strings /proc/*/environ| grep DBUS_SESSION | tail -1)
Run Code Online (Sandbox Code Playgroud)

似乎适用于我的用例。请注意,有很多权限被拒绝的输出,但您可以忽略它。

通过:http : //machine-cycle.blogspot.com/2010/12/ssh-and-dbus-sessions.html

如果有人有更清洁的修复程序,我会很乐意看到它。

小智 8

我的猜测是您使用 DISPLAY 只是将会话转储到 X 服务器,但您需要做的是弹出正确的 dbus 通道。

这有点痛苦,但我让它工作(只是为了说明发生了什么,这不是一个好的解决方案):

这是在本地运行:

tag@loki:~$ env | grep dbus
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbusxa7L6dRCEH,guid=f7056d1d174a3f5b7c680b9c0000006c
Run Code Online (Sandbox Code Playgroud)

当我 ssh 进入时:

tag@loki:~$ export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-xa7L6dRCEH,guid=f7056d1d174a3f5b7c680b9c0000006c
tag@loki:~$ banshee --next
Run Code Online (Sandbox Code Playgroud)

它工作正常:)

希望有一些 dbus 专业知识的人可以加入:)