SSH 연결을 통해 원격 호스트의 디스플레이 제어

SSH 연결을 통해 원격 호스트의 디스플레이 제어

저는 Linux Mint 20.1을 사용하고 로컬 네트워크(WiFi)를 통해 연결된 노트북 2대를 가지고 있습니다.

  • 나는 하나 user1@host1와 하나 를 가지고 있습니다 user2@host2.
  • 저는 호스트 2에서 SSH 서버를 실행하고 있으며, 호스트 1에서 클라이언트를 실행하고 있습니다.

SSH를 통해 호스트 1에서 호스트 2로 명령을 보내는 경우 호스트 2의 디스플레이를 사용하여 결과를 표시하고 싶습니다.

전임자:

  • 데스크탑을 전환하는 명령은 wmctrl -s 2호스트 2의 데스크탑을 변경해야 하며, 명령은 firefox호스트 2에서 Firefox를 시작해야 합니다.
  • 결과를 표시하기 위해 호스트1의 디스플레이를 사용하고 싶지 않습니다.

가능합니까? 두 컴퓨터 모두에 대한 관리 및 물리적 액세스 권한이 있습니다.

나는 무엇을 시도했는가?

  • 환경변수가 설정되어 있지 않은 것을 보고 DISPLAY설정해 보았 :0, 127.0.0.1:0으나 아무런 효과가 없었습니다.
  • 다른 많은 질문을 확인했지만 결과를 로컬 디스플레이로 전달하려고 하는데 결과가 원격 디스플레이에 표시되기를 원합니다.

답변1

나는 호스트 2에서 실행되는 SSH 서버를 가지고 있고 호스트 1을 통해 액세스합니다. 결과를 표시하기 위해 호스트2의 디스플레이를 사용하고 싶습니다.

  1. X 서버가 host2실행 중이어야 합니다.

  2. 로그인한 사용자는 X 서버를 사용할 수 있는 권한이 있어야 합니다. 대부분의 배포판에서 (전부는 아니지만) 이는 $HOME/.Xauthority.

예를 들어, 키보드에서 호스트 2에 SSH로 접속하는 데 사용한 것과 동일한 사용자로 로그인하여 이 작업을 수행할 수 있습니다.

  1. (1)과 (2)가 참인 경우, 이들은 호스트2 export DISPLAY=:0에 로그인한 후에 설정할 수 ssh있으며 해당 쉘에서 생성된 모든 X 프로그램은 호스트2의 디스플레이를 사용합니다.

관련 정보