Я пытаюсь запустить сервер TightVNC на компьютере с Ubuntu, используя systemd. Файл модуля (/etc/systemd/system/tiger.service) выглядит следующим образом:

[Unit]
Description=Tiger VNC server
After=display-manager.service

[Service]
Type=simple
Environment=XAUTHORITY=/home/myusername/.Xauthority
ExecStart=/usr/bin/sudo -H -u myusername bash -c '/usr/bin/x0vncserver -rfbport 5901 -PasswordFile path-to-passwd-file -PollingCycle 30 -AlwaysShared -display :0'

Я не могу подключиться к серверу VNC, и статус systemctl возвращает systemctl status tiger.service :

Jun 01 03:12:49 ubuntu systemd[1]: Started Tiger VNC server.
Jun 01 03:12:49 ubuntu sudo[958]:     root : TTY=unknown ; PWD=/ ; USER=myusername ; COMMAND=/bin/bash -c /opt/rmm-agent/x0vncserver -rfbport 5901 -PasswordFile /opt/rmm-agent
Jun 01 03:12:49 ubuntu sudo[958]: pam_unix(sudo:session): session opened for user myusername by (uid=0)
Jun 01 03:12:49 ubuntu sudo[958]: /usr/bin/x0vncserver: unable to open display ":0"
Jun 01 03:12:49 ubuntu systemd[1]: tiger.service: Main process exited, code=exited, status=1/FAILURE
Jun 01 03:12:49 ubuntu systemd[1]: tiger.service: Unit entered failed state.
Jun 01 03:12:49 ubuntu systemd[1]: tiger.service: Failed with result 'exit-code'.

Если я запускаю его с systemctl start tiger.service с консоли, все работает нормально, я могу подключиться к серверу VNC.

Я попытался Requires= вместо After= и graphical.target вместо display-manager.service . Я получаю одинаково не могу unable to open display ":0" во всех случаях.

1 ответ1

0

Возможно, в вашем пользовательском каталоге нет XAuthority, пока вы не войдете в систему. На сайте документации по x11vnc есть некоторая информация . XAuthority существует только для root, в каталоге, который зависит от диспетчера отображения и версии Ubuntu, но есть несколько хороших подсказок.

В настоящее время я пытаюсь автоматически запустить VNC-сервер в Kubuntu 16.04, и мой файл авторизации находится по адресу:

/var/run/lightdm/root/:0

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .