SSH를 통한 X11 전달

SSH를 통한 X11 전달

나는 지난 몇 시간 동안 X11 포워딩을 가지고 놀았고 지금까지 X11VNC를 서버로, X2VNC를 클라이언트로 사용하여 데스크탑 PC의 X 서버를 랩탑으로 포워딩했습니다. X2VNC는 Xinerama를 사용하여 랩톱과 데스크톱 PC 간에 듀얼 화면과 유사한 동작을 제공합니다.

실제로 정말 훌륭해요!

대부분의 Linux 시스템은 TTY7에서 Xorg 및 데스크탑 환경을 실행한다는 것을 알고 있습니다.

그러므로 나는 VNC 터널을 자체 TTY에 연결하는 것이 어떤 식으로든 가능하다고 생각했습니다.

관리할 시스템을 선택하기 위해 두 TTY 사이를 앞뒤로 전환할 수 있다면 좋을 것입니다. 그리고 저는 Xinerama나 GUI를 사용하는 것보다 이 접근 방식을 더 선호합니다.

답변1

이것이 실제로 대답은 아니지만 출발점이 될 수 있다고 생각합니다.

나는 이렇게 xinit를 사용하여 여러 개의 추가 X 서버를 시작했습니다.

xinit -- :1 tty3   
xinit -- :2    
xinit -- :3 tty5    
xinit -- :4

서로 다른 가상 디스플레이에서 여러 gnome3 및 xfce 세션을 시작할 수도 있는 것 같습니다.

startx -- :2  tty3   
startx -- :3  tty4

이제 DISPLAY 변수를 내보내고 export DISPLAY=:3Ctrl-Alt-F2, F3 등을 사용하여 해당 세션에서 작업을 시작할 수 있습니다.

그러나 나는 내가 무엇을 하고 있는지 전혀 모릅니다(DISPLAY, 세션, 콘솔 또는 tty를 전환하고 있습니까?). 당신이 말한 것처럼 정말 멋지네요... ;-)

[tomh@workstation001 ~]$ export DISPLAY=:4
[tomh@workstation001 ~]$ google-chrome

답변2

나는 이것이 오래되었다는 것을 알고 있지만 :

xinit -e ssh -XYC $HOSTTOSSHTO startx -- :1

내가 보는 유일한 단점은 세션이 시작되면 로그인 터미널을 닫을 수 없다는 것입니다. 언급된 다른 게시물과 마찬가지로 CTRL+ ALT+를 사용하여 앞뒤로 이동합니다 . F#나는 항상 Raspberry Pi를 사용하여 작업하고 인터넷을 통해 서버 등을 사용하여 작업도 수행했습니다(조금 느림). , 또는 무엇 startx이든 교체할 수도 있습니다 ./usr/bin/icewmopenboxstartKDE

답변3

이에 대한 적절한 해결책을 찾은 것 같습니다.

내 데스크톱 컴퓨터에 연결하기 위해 특별히 사용자를 만들었습니다.

내 노트북에 있는 사용자의 ~/.xinitrc 안에 다음 줄이 있습니다(/home/desktop/.xinitrc):

exec vncviewer 192.168.1.2

192.168.1.2는 내 네트워크에 있는 내 데스크톱 컴퓨터의 IP입니다.

제 경우에는 이제 Tiger VNC를 클라이언트로 사용하고 X11VNC를 데스크탑 PC의 서버로 사용합니다.

어떤 클라이언트라도 그럴 것 같아요.

지금 작동하는 방식은 CTRL+ALT+F2를 통해 tty2를 입력하고 새 데스크톱 사용자로 로그인한 다음 로 x를 시작하는 것입니다 xinit -- :1. 이미 tty7에서 실행 중인 기본 xserver가 있으므로 새 x 서버는 tty8에서 시작됩니다.

vncviewer가 실행되어 내 데스크탑 PC에 성공적으로 연결되어 데스크탑 PC의 해상도가 내 노트북 ​​해상도보다 높을 경우 전체 화면과 스크롤 막대를 제공합니다.

이제 CTRL+ALT+7 및 CTRL+ALT+8을 사용하여 노트북과 데스크탑 PC 간에 쉽게 전환할 수 있습니다.

이것은 Tiger VNC를 사용한다고 가정한 전체 절차입니다(유일한 차이점은 exec vncviewer x.x.x.x).

  1. 다음을 사용하여 새 사용자를 만듭니다.adduser desktop
  2. 새 사용자의 구성은 기본값으로 괜찮으므로 사용자가 생성될 때까지 Enter 키를 계속 누르십시오.
  3. 파일을 열고 /home/desktop/.xinitrc(데스크톱으로 로그인하지 않고 권한도 알고 있지 않는 한 루트로 수행해야 함) 파일을 정리하고(콘텐츠가 있는 경우) 다음 줄을 입력합니다.exec vncviewer x.x.x.x
  4. x.x.x.x원하는 IP 주소로 바꾸세요.
  5. 파일을 저장합니다.
  6. CTRL+ALT+X를 사용하여 사용되지 않은 tty를 입력합니다. 여기서 X는 1부터 9까지의 숫자입니다.
  7. 다음으로 로그인desktop
  8. 를 사용하여 새 X 서버를 시작합니다. xinit -- :1:1이 이미 사용 중인 경우 다른 디스플레이를 사용할 수 있습니다.
  9. X 서버가 시작되는 새 tty로 전송됩니다. 짜잔! 이제 Tiger VNC가 선택한 IP 주소에 연결됩니다.

5월사용자가 X를 시작할 때 자동으로 시작되는 데스크탑 환경이 있으면 문제가 발생합니다. 따라서 일이 예상대로 작동하지 않을 경우 이를 염두에 두십시오.

관련 정보