通过ssh连接控制远程主机的显示

通过ssh连接控制远程主机的显示

我有 2 台笔记本电脑,均使用 linux mint 20.1 并通过本地网络(WiFi)连接。

  • 我有一个user1@host1和一个user2@host2
  • 我在 host2 上运行 ssh 服务器,在 host1 上运行客户端。

如果我通过 ssh 从主机 1 向主机 2 发送任何命令,我想使用主机 2 的显示屏来显示结果。

前任:

  • 用于切换桌面的命令wmctrl -s 2应更改主机2 上的桌面,或者命令firefox应启动主机2 上的firefox。
  • 我不想使用 host1 的显示来显示结果。

这可能吗?我对两台计算机都具有管理和物理访问权限。

我尝试了什么?

  • 我看到DISPLAY环境变量未设置,因此尝试设置,:0, 127.0.0.1:0但没有任何效果。
  • 检查了许多其他问题,但他们正在尝试将结果转发到本地显示器,但我希望结果在远程显示上。

答案1

我在 host2 上运行 ssh 服务器并通过 host1 访问。我想使用host2的显示屏来显示结果。

  1. X 服务器host2需要运行。

  2. 您登录的用户需要拥有使用 X 服务器的授权。在大多数发行版(但不是全部)上,这是通过在$HOME/.Xauthority.

例如,您可以通过以与从键盘 ssh 登录到 host2 所使用的同一用户身份登录来完成此操作。

  1. 如果 (1) 和 (2) 为 true,则可以export DISPLAY=:0在登录到sshhost2 后进行设置,然后从该 shell 生成的任何 X 程序都将使用 host2 上的显示。

相关内容