我有一个通过 SSH 访问的 Raspberry pi,但现在我需要在其上运行一个具有 GUI 的 python 程序。我不确定如何通过 SSH 做到这一点。通常我通过输入 startx 进入我的 raspi 桌面 gui。有什么我可以通过 ssh 做这样的事情吗?
谢谢!
我有一个通过 SSH 访问的 Raspberry pi,但现在我需要在其上运行一个具有 GUI 的 python 程序。我不确定如何通过 SSH 做到这一点。通常我通过输入 startx 进入我的 raspi 桌面 gui。有什么我可以通过 ssh 做这样的事情吗?
谢谢!
kjprice 提到的方法只是显示您在远程主机上启动的应用程序。如果您想查看完整的桌面,您可以创建一个新的 Xserver 或使用 Xephyr 在您当前使用的 Xserver 中嵌套一个 Xserver。
那么首先创建一个新的嵌套 Xserver:
user@host $ Xephyr :1 -screen 800x600 &
应生成一个名为“Xephyr on :1”的窗口。SSH 进入远程主机并将显示转发到创建的显示:
user@host $ DISPLAY=:1 ssh -Y username@remotehost
现在在远程主机上启动一个会话,在我的例子中是 LXDE:
user@remotehost $ lxsession
您现在应该在 Xephyr 中看到桌面。高频
您可以使用 ssh 进行 X11 转发。如果您启动 ssh 会话,-Y
否则-X
它将启用 X11 转发。因此,您在该会话中运行的任何创建窗口的程序,该窗口都将在本地绘制。您还可以传递ssh
命令来运行:
$ ssh -Y user@$some_ip /path/to/some/remote/python_script.py
如果你想要一个完整的 gui 会话,那么你需要在 rasp pi 上设置一个 RDP 或 VNC 服务器,并通过一些客户端连接到它。