TigerVNCとnoVNCを使用してLinuxボックス(Ubuntu 20.4)にVNCを設定しました。ターミナルで起動すると正常に動作しますが、起動時に自動的に起動できるようにサービスで起動したいのですが、動作しません。
私のサービスファイル名[Eメール保護]/etc/systemd/system の ' は次のようになります。
[Unit]
Description = VNC server
After=syslog.target network.target
[Service]
Type=forking
User=taisafmr15
ExecStartPre=-/usr/bin/vncserver -kill :2
ExecStart=/usr/bin/vncserver :2 -geometry 1600x900 -depth 24 -localhost no
ExecStop=/usr/bin/vncserver -kill :2
[Install]
WantedBy=multi-user.target
以下を使用してサービスを有効にできます。
sudo systemctl enable [email protected]
起動時と同様に、エラーなしで起動します。
sudo systemctl start [email protected]
しかし、私のVNCサーバーは起動せず、実行中です。
sudo systemctl status [email protected]
失敗したと表示される(コード=終了、ステータス=255 / EXCEPTION)ログを見ると、ExecStartで失敗したことがわかります。表示される唯一のエラーコード/メッセージは次のとおりです(コード=終了、ステータス=255 / EXCEPTION)。
ただし、端末で正常にコマンドを実行すると、サービスではなくvncサーバーが正常に起動します。
数日間苦労しました。助けやアドバイスが役に立ちます。
編集:私のxstartupファイルは〜/ .vnc / xstartupにあります。
#!/bin/sh
[-x /etc/vnc/xstartup] && exec /etc/vnc/xstartup
[-r $HOME/.Xresources] && xrdb $HOME/.Xresources
私のxstartupファイルは/etc/vnc/xstartupにあります。
#!/bin/sh
export DISPLAY=:2
test x"$SHELL" = x"" && SHELL=/bin/bash
test x"$1" = x"" && set -- default
vncconfig -iconic &
"$SHELL" -l << EOF
export XDG_SESSION_TYPE=x11
export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
export XDG_CONFIG_DIRS=/etc//xdg-ubuntu:/etc/xdg
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export DESKTOP_SESSION=/usr/share/xsessions/ubuntu.desktop
export GNOME_SHELL_SESSION_MODE=ubuntu
dbus-launch --exit-with-session /usr/bin/gnome-session --session=ubuntu
EOF
vncserver -kill $DISPLAY
両方のxstartupファイルには次の権限があります。
sudo chmod +x /etc/vnc/xstartup
sudo chmod 777 /etc/vnc/xstartup
完全なエラーメッセージ vncserver[7143]: 2023 年 4 月 13 日木曜日 16:26:40 vncserver[7143]: ComparingUpdateTracker: 0 ピクセル入力/0 ピクセル出力 vncserver[7143]: ComparingUpdateTracker: (1:-nan 比) vncserver 7143]: Xtigervnc プロセス ID 6921 終了中... デッドロックのようです。 SIGKILLを使ってください!
vncserver[6912]: /home/tai79/.vnc/xstartup で指定されたアプリケーションの起動に失敗しました。 vncserver[6912]: まず、vncserver[6912] のような簡単なことを試してみてください。 Tigervncserver -xstartup /usr/bin/xterm systemd[1]:[Eメール保護]: 基本プロセスが終了しました。コード=終了、ステータス=255/EXCEPTION systemd[1]:[Eメール保護]:結果的に「終了コード」が発生し、失敗しました。