alpha
내 아내는 최신 버전의 Ubuntu를 실행하는 집 데스크탑에 앉아 있습니다 . 저는 버스를 타고 G1 전화기에서 ConnectBot을 사용하고 있으며 alpha
어디서든 SSH를 통해 접속할 수 있습니다.
복잡한 이유로 인스턴트 메시징, 이메일, 전화를 통해 그녀에게 연락할 수 없습니다. (예를 들어, 아기를 깨우고 싶지 않고 IM 클라이언트가 손상되었으며 이메일 서버가 다운되었습니다.) 제가 할 수 있는 유일한 옵션은 alpha
원격으로 SSH를 통해 화면에 무언가가 나타나도록 하는 것입니다. 그녀는 KDE를 사용하고 있습니다. 그녀의 관심을 끌고 내가 그녀와 대화를 시도하고 있음을 알리기 위해 어떻게 해야 할까요? 내 SSH 세션에 X가 표시되지 않더라도 원격으로 뭔가(예: xmessage)를 트리거하여 그녀의 화면에 표시할 수 있다는 것을 알았습니다.
편집: 명확히 하자면, 내 휴대폰에서는 어떤 종류의 X도 실행되지 않으므로 X-over-ssh가 불가능합니다. 다음은 작동합니까?
$ export DISPLAY=:0
$ xmessage "test"
답변1
DISPLAY
현재 어떤 모니터가 표시되고 있는지 알고 있다면 alpha
환경 변수를 통해 X 프로그램에 어떤 모니터를 사용할지 알릴 수 있습니다. 거의 확실하게 유일한 디스플레이는 :0
수동으로 조작하지 않는 한 다음을 실행하는 경우입니다.
$ export DISPLAY=:0
그러면 실행하는 모든 X 응용 프로그램이 alpha
모니터에 나타납니다. xmessage
메시지를 표시하는 데에도 적합합니다 xdialog
. 설치한 경우 다음 을 사용하여 화면 모서리에 메시지를 표시 libnotify
할 수 있습니다 .notify-send
답변2
~처럼마이클 모로젝(Michael Morozek)의 그림를 사용하면 아내의 데스크탑에 나타나는 X 응용 프로그램을 실행할 수 있습니다. 당신이 해야 할 일은 DISPLAY
환경 변수를 올바른 값(거의 항상 :0
)으로 설정하고... 스스로 승인을 받는 것뿐입니다.
이 해결 방법을 사용하려면 아내의 파일을 읽을 수 있는 권한이 필요합니다. X 서버에 접근하려면 인증이 필요합니다"쿠키", X가 시작될 때 무작위로 생성되어 파일에 저장되는 비밀번호입니다. 이 파일은 일반적으로 입니다 ~/.Xauthority
. 그렇지 않은 경우 XAUTHORITY
환경 변수에서 지정해야 합니다. 기본 설정(Gdm 사용)의 Ubuntu에서는 아내의 세션 쿠키가 없지만 ~wife/.Xauthority
자동으로 생성된 이름을 가진 파일에 있습니다.SSH 표시 변수. 당신은 또한 볼 수 있습니다루트로서 다른 사용자의 데스크탑에서 그래픽 프로그램을 시작할 수 있습니까?,Linux: ssh+screen을 통해 세션을 시작할 때 wmctrl이 디스플레이를 열지 못함.
아내가 문자 터미널을 열어둔 경우 다음을 사용할 수 있습니다.write
사용자 7440의 제안을 기반으로 함터미널에 텍스트를 작성하세요. 이를 위해서는 터미널이 이러한 알림을 수락해야 합니다. mesg y
또는 를 사용하여 알림을 켜고 끌 수 mesg n
있습니다. 최신 터미널 에뮬레이터의 기본 상태는 모르겠습니다.
더 복잡한 메커니즘 write
은talk
. 대화 프로토콜은 채팅 프로그램의 조상입니다. UDP 포트 517 또는 518에서 대화 서버를 실행하는 컴퓨터의 누구와도 대화할 수 있습니다(두 가지 프로토콜 변형이 있음). 그래서 설치이야기했다 talkd http://bit.ly/software-small 설치, 고객, 예:대화 ytalk 설치 http://bit.ly/software-small, 그리고 ytalk wife
. X 클라이언트도 있습니다.채팅 xtalk 설치 http://bit.ly/software-small. 내가 아는 한 대화는 더 이상 문제가 되지 않으며(관심 있는 모든 사람은 최신 채팅 프로토콜을 사용합니다) 대화 요청에 대한 KDE 알림을 생성하는 시스템 구성 요소도 없습니다.
IM 클라이언트를 실행할 수 없다고 말씀하셨지만... 집에 있는 컴퓨터에서 실행되고 SSH를 통해 액세스되는 명령줄 IM 클라이언트가 작동할까요? 예를 들면 이런 게 있어요.위챗 위챗 설치 http://bit.ly/software-small. 귀하와 귀하의 아내를 연결하려면 일부 서버에 의존해야 하지만, 귀하의 전화기가 아닌 집에 있는 컴퓨터에서만 접속할 수 있습니다.
답변3
그녀가 터미널 창을 열어둔 경우("who"를 사용하여 찾으려면) "write"를 사용하여 해당 터미널에 쓸 수 있습니다. KDE가 이를 숨기므로 기본 터미널에서는 작동하지 않지만 모든 터미널 창은 작동해야 합니다(최소화되지 않은 현재 데스크탑에 있고 그녀가 보고 있는 경우...).
답변4
DISPLAY=:0.0
설정이 제대로 작동할지 100% 확신할 수 없습니다 . 아내의 PC에서 X 서버에 접속하려면 인증을 받는 방법이 필요할 것 같습니다. 이를 수행하는 도구는 xhost
및 xauth
이지만, 이를 사용하려면 이미 X 서버에 대한 액세스 권한이 있어야 하는 것 같으므로 아마도 아내만이 이 도구를 실행할 수 있을 것입니다. (닭이 먼저냐, 달걀이 먼저냐?)
실패하면 예를 들어 를 사용하여 두 번째 X 서버를 시작할 수도 X :1
있고 chvt
도움이 될 수도 있습니다.
예를 들어, 다음과 같습니다.
# X :1
# export DISPLAY=:1.0
# xmessage 'hello'
루트로 실행하면 내 시스템에서 작동하는 것 같습니다.
X :1
내 시스템의 vt7에서 부팅하므로 다음을 실행할 수도 있습니다.
# chvt 7
X 디스플레이가 현재 표시되는지 확인합니다.