VNC 서버가 즉시 충돌합니다

VNC 서버가 즉시 충돌합니다

그래서 최근에 Arch Linux에 tigervnc패키지(uname -r )를 설치했습니다 . SSH 터널을 통해 VNC 서버를 실행하려고 하므로 4.18.10-arch1-1-ARCHlocalhost에서 -localhost서버를 시작합니다 vncserver.

문제는 vncserver 를 시작하는 .service 파일을 사용한 후 systemctl start vncserver@:1VNC 서버가 응답하지 않고 실제로 Xvnc 프로세스가 실행되고 있지 않다는 것입니다.

나는 이 문제를 해결하려고 시도했고 먼저 systemctl status vncserver@:1다음을 제공했습니다.

● vncserver@:1.service - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Wed 2018-10-10 20:57:46 EEST; 10min ago
  Process: 4936 ExecStop=/usr/bin/vncserver -kill :1 (code=exited, status=2)
  Process: 4897 ExecStart=/usr/bin/vncserver :1 -fg -alwaysshared -localhost :1 (code=exited, status=0/SUCCESS)
  Process: 4891 ExecStartPre=/usr/bin/dbus-launch (code=exited, status=0/SUCCESS)
  Process: 4885 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill :1 > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
 Main PID: 4897 (code=exited, status=0/SUCCESS)

Oct 10 20:57:41 JUHANPELIKONE-L systemd[1]: Starting Remote desktop service (VNC)...
Oct 10 20:57:42 JUHANPELIKONE-L systemd[4885]: pam_unix(login:session): session opened for user juha by (uid=0)
Oct 10 20:57:42 JUHANPELIKONE-L systemd[4891]: pam_unix(login:session): session opened for user juha by (uid=0)
Oct 10 20:57:42 JUHANPELIKONE-L systemd[1]: Started Remote desktop service (VNC).
Oct 10 20:57:42 JUHANPELIKONE-L systemd[4897]: pam_unix(login:session): session opened for user juha by (uid=0)
Oct 10 20:57:46 JUHANPELIKONE-L systemd[1]: vncserver@:1.service: Control process exited, code=exited status=2
Oct 10 20:57:46 JUHANPELIKONE-L systemd[1]: vncserver@:1.service: Failed with result 'exit-code'.

그런 다음 으로 진단을 시도 journalctl -xe하고 일부 pam 오류를 발견한 다음 Xvnc에 대한 segfault 추적을 찾았습니다.

(현재 존재하는) 서비스 파일에 dbus 시작 명령을 추가하고, 창 관리자를 변경하고, 서비스 파일에서 vncservice 호출을 제거하고 서비스 파일에 매개변수를 추가하고, 터미널 에뮬레이터에서 직접 실행한 다음 TigerVNC를 다시 설치해 보았습니다. .

.service 파일이 시작되었습니다.페이스트빈journalctl -x, 혼란을 방지하기 위한 내 출력 및 기타 항목 도 포함됩니다 .

답변1

나는 이것이 약간 오래되었다는 것을 알고 있으며 OP가 이것을 포기했을 수도 있습니다. 그러나 나는 또한 이 문제에 직면했고 (시행 착오를 통해) "-fg"(전경에서 실행) 플래그까지 추적했습니다. vncserver를 수동으로 실행하는 경우(또는 시작 시 다른 방식으로 vncserver를 실행하는 경우) vncserver는 문제가 없습니다.

그러나 fg 플래그를 제거해도 systemd의 문제는 해결되지 않습니다. 세그폴트의 원인이 정확히 무엇인지 모르겠습니다.

systemd 없이 문제를 복제하려면 수동으로 실행할 수 vncserver -fg있으며 즉시 충돌이 발생하고 vncserver 로그에 동일한 segfault 문제가 발생하지만 fg 플래그를 제거하고 vncserver전경 플래그 없이 실행하면 서버는 괜찮을 것입니다.

포그라운드에서 vncserver를 실행하려고 하면 Xvnc가 충돌하게 됩니다. 나는 그것이 무엇인지 잘 모르겠습니다.

관련 정보