Почему бы vncserver не использовать скрипт xstartup?
Я использую Fedora 16, и я настроил vncserver, используя метод systemctl...
/lib/systemd/system/vncserver@:1.service:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
User=build
ExecStart=/usr/bin/vncserver :1 -geometry 1280x1024
ExecStop=/usr/bin/vncserver -kill :1
[Install]
WantedBy=multi-user.target
Я бегал:
systemctl --system daemon-reload
systemctl enable vncserver@:1.service
systemctl start vncserver@:1.service
Казалось, работает нормально.
Затем я отредактировал скрипт ~build/.vnc/xstartup. Посмотрев в него, я вижу, что "twm" используется. Я добавил "xhost +".
Когда я перезапустил vncserver через systemctl, изменения не вступили в силу. На самом деле, я вижу, что "twm" вообще не используется, но "gnome" есть, что по умолчанию в этой системе.
Почему система не использует сценарий xstartup? Что он использует вместо этого? Как я могу заставить systemctl / vncserver использовать этот скрипт xstartup?
1 ответ
Оказывается, что vncserver использовал сценарий, но к тому времени, когда он добрался до самого дна, он больше не обрабатывал строки, учитывая вызовы "exec" над ним.
GNOME был запущен, потому что GNOME был найден исполняемым скриптом /etc/X11/xinit/xinitrc.