Java 응용 프로그램을 실행하여 모니터가 연결된 컴퓨터가 있습니다 startx
.
이제 VNC를 통해 원격으로 애플리케이션에 액세스하고 싶습니다. x11vnc
Xorg 창에 대한 세션을 열 수 있습니까 ? (창 관리자 없음)
# x11vnc -display :1
12/11/2019 13:31:53 x11vnc version: 0.9.13 lastmod: 2011-08-10 pid: 2759
No protocol specified
12/11/2019 13:31:53 XOpenDisplay(":1") failed.
12/11/2019 13:31:53 Trying again with XAUTHLOCALHOSTNAME=localhost ...
No protocol specified
12/11/2019 13:31:53 ***************************************
12/11/2019 13:31:53 *** XOpenDisplay failed (:1)
*** x11vnc was unable to open the X DISPLAY: ":1", it cannot continue.
*** There may be "Xlib:" error messages above with details about the failure.
/bin/sh /usr/bin/startx /usr/bin/java -jar my.jar -- :1
\_ xinit /usr/bin/java -jar my.jar -- /usr/bin/X :1 -auth /tmp/serverauth.XruRNQHDLk
\_ /usr/lib/xorg/Xorg :1 -auth /tmp/serverauth.XruRNQHDLk
\_ /usr/bin/java -jar my.jar
startx
편집: systemd 서비스 없이 명령을 실행하면 x11vnc에서 완벽하게 작동한다는 것을 알았습니다 . 이제 x11vnc 서버를 systemd startx 서비스에 연결하는 데 문제가 있습니다.
답변1
x11vnc
에 추가 ~/.xinitrc
하거나 에 추가하는 것이 더 좋습니다 ~/.xsession
.
답변2
문제는 systemd 서비스에 있습니다. runuser
명령에서 시작 하도록 서비스를 변경했습니다 . ( x11vnc
그리고 startx
)