xvfb-run을 사용하여 VNC를 통해 X 응용 프로그램에 연결하는 방법은 무엇입니까?

xvfb-run을 사용하여 VNC를 통해 X 응용 프로그램에 연결하는 방법은 무엇입니까?

Xvfb서버를 직접 실행 하면 x11vnc아래와 같이 모니터에 연결할 수 있습니다.위키피디아 페이지.

그러나 xvfb-run.

내 시도는 다음과 같습니다( wine explorer예로 실행).

$ xvfb-run -l --server-args="-screen 0 1024x768x24" wine explorer
$ ps x | grep Xvfb
19536 pts/2    Sl     0:00 Xvfb :99 -screen 0 1024x768x24 -auth /tmp/xvfb-run.nJKLnF/Xauthority

그러나 다음 을 실행하려고 하면 x11vnc실패합니다 .

$ x11vnc -display :99.0 -usepw -forever -autoport 5900
24/11/2016 22:51:29 XOpenDisplay(":99.0") failed.
24/11/2016 22:51:29 Trying again with XAUTHLOCALHOSTNAME=localhost ...
No protocol specified

24/11/2016 22:51:29 ***************************************
24/11/2016 22:51:29 *** XOpenDisplay failed (:99.0)

*** x11vnc was unable to open the X DISPLAY: ":99.0", it cannot continue.
*** There may be "Xlib:" error messages above with details about the failure.

나는 또한 제안된 명령을 시도했다x11vnc 문제 해결 페이지, 하지만 행운은 없습니다.

xvfb-run해당 디스플레이에 액세스할 수 있도록 X 명령을 어떻게 실행합니까 x11vnc?

답변1

출력에서 볼 수 있듯이 ps서버 Xvfb는 매개변수 -auth와 임시 파일 이름을 사용하여 실행됩니다. 따라서 이 서버에 연결하려면 이 파일에 저장된 MIT-MAGIC-COOKIE의 복사본을 제공해야 합니다. 일반적으로 이는 명령 환경에서 XAUTHORITY 변수를 설정하여 수행됩니다.

XAUTHORITY=/tmp/xvfb-run.nJKLnF/Xauthority x11vnc ...

단순화하기 위해 xvfb-run스크립트는 옵션 -f과 쿠키를 저장할 파일 이름을 허용할 수 있습니다.

관련 정보