如何在局域网中使用 rhythmbox-client?

如何在局域网中使用 rhythmbox-client?

几天前我问过这个问题问题,并根据一个建议使用了 rhythmote。这是一个网络界面,用于更改某台 PC 上正在播放的 rhythmbox 上的歌曲。然而,它不是我所想的那样,我偶然发现了 rhythmbox-client 的文档。我尝试了几种使用它的方法,但都没有成功。让我向您展示我使用它的几种方法。 rhythmbox 在地址 192.168.1.4 上运行,我们称之为点唱机。

将地址作为参数传递

希望我能够看到并浏览点唱机上的歌曲

rhythmbox-client 192.168.1.4

但是,我收到了这条消息

(rhythmbox-client:8370): Rhythmbox-WARNING **: 未收到回复。可能的原因包括:远程应用程序未发送回复、消息总线安全策略阻止回复、回复超时或网络连接中断。

(rhythmbox-client:8370): Rhythmbox-WARNING **: 未收到回复。可能的原因包括:远程应用程序未发送回复、消息总线安全策略阻止回复、回复超时或网络连接中断。

SSH

ssh -l jukebox 192.168.1.4

rhythmbox-client --print-playing

这对我来说是这样的:

(rhythmbox-client:9389):Rhythmbox-WARNING **:/bin/dbus-launch 异常终止,出现以下错误:自动启动错误:X11 初始化失败。

rhythmbox-client 作为 root

gksudo rhythmbox-client 192.168.1.4

节奏盒客户端启动了,但库中没有显示任何音乐。我猜这是在我自己的电脑上运行的。

有人能告诉我如何运行 rhythmbox-client 吗?我是否可以得到一个显示歌曲的 rhythmbox 窗口?点唱机?

PS:还提到了其他一些解决方案,但我想对每一个进行评估。

谢谢。

答案1

据我所知,您需要 grep 运行 rythmbox 的机器的实际 dbus 会话。这有点棘手。我在服务器上安装了一个脚本,该脚本在启动后自动运行,并将当前 dbus 地址保存到我的主目录中的文件中。

如果我稍后 ssh 到该机器,我可以从那里 grep 会话地址。

I:存储 dbus 地址的脚本:将其命名为“Get.Dbus.sh”并将其保存到磁盘的某个位置。为其提供以下内容:

set | grep DBUS_SESSION_BUS_ADDRESS > ~/.DBUS_temp

使其可执行并将其添加到您的启动项中

II:grep 当前会话的脚本:将其命名为“Run.DBus.sh”并将其保存在例如 /usr/local/bin/

赋予它以下内容:

source /home/YOUR_USERNAME/.DBUS_temp
export DBUS_SESSION_BUS_ADDRESS
$*

不要忘记使其可执行

III:通过 ssh 连接到您的机器并启动 rhythmbox-client,如下所示:

Run.DBus.sh rhythmbox-client

这在这里有效!

答案2

当你通过 SSH 尝试时,首先运行

export DISPLAY=:0

否则它将尝试通过您的 SSH 会话启动一个新的 Rhythmbox 实例,而不是连接到您已经在 x 服务器显示 0 上运行的 Rhythmbox。

答案3

我不确定我的回答是否能帮到你,但我使用 Rhythmbox 在家中播放音乐的一个好方法是通过 DAAP。你可以启用该插件(如果尚未启用),然后只需在另一台计算机上打开 Rhythmbox,你的计算机的所有歌曲就会显示在左侧窗格中。单击该计算机(如果输入了密码,请输入密码),然后播放音乐!就这么简单,但你必须在两台计算机上都运行 Rhythmbox。哦,你还需要在将音乐作为传入流传输的计算机的防火墙中打开端口号 3689(如果你启用了防火墙)。

答案4

有人能告诉我如何运行 rhythmbox-client 吗?我是否可以得到一个显示点唱机上歌曲的 rhythmbox 窗口?

ForwardX11 yes如果你在 ~/.ssh 目录中的配置文件中启用了转发 X,则可以实现此目的

因此,如果您能够在计算机上启动节奏盒,那么您应该能够在计算机上启动它,并将 X 转发回您正在访问它的 PC。它应该就是这么简单。我设法在无头运行的服务器上使用虚拟盒做了同样的事情。

相关内容