ホームサーバーを設定していますが、次の問題が発生しました。
- 使用
tiger-vnc
- CentOS Stream 8の使用
- rootユーザーの使用
サーバーを起動するとまだ接続されているディスプレイが表示されますが、localhost login:
vncmulti-user.target
を介して接続するとrootユーザーのデスクトップ環境が表示されます。だから本当に必要なときにデスクトップ環境を手動で起動したいと思います。私は何が間違っていましたか? VNCがセッションを開始できないように設定systemctl set-default
したようですが、将来注意して変更する必要がありますか?multi-user.target
graphical.target
これがget-default
結果です
[root@localhost ~]# systemctl get-default
multi-user.target
ここでは、パラメータを使用してvncサービスを有効にします。:1
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/libexec/vncsession-start %i
PIDFile=/run/vncsession-%i.pid
SELinuxContext=system_u:system_r:vnc_session_t:s0
[Install]
WantedBy=multi-user.target
結果は次のとおりです。systemctl status vncserver@\:1.service
vncserver@:1.service - Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2021-12-12 12:03:05 CET; 21min ago
Process: 1139 ExecStart=/usr/libexec/vncsession-start :1 (code=exited, status=0/SUCCESS)
Main PID: 1157 (vncsession)
Tasks: 0 (limit: 100263)
Memory: 2.4M
CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service
‣ 1157 /usr/sbin/vncsession root :1
Dec 12 12:03:00 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)...
Dec 12 12:03:05 localhost.localdomain systemd[1]: Started Remote desktop service (VNC).
答え1
あなたのsystemdデバイスはVNCサーバーをrootとして実行しており(ユーザーが定義されていないため)、multi-user.targetを使用して起動するように指示したので、起動します。あなたのサービスにgraphic.targetに関連するものはありません。
/usr/share/doc/tigervnc/HOWTO.md
systemdサービスを正しく設定する方法についての記事を読んでください(オンライン版はこちら)。
デフォルトでは、特定のディスプレイ/ユーザーマッピングを設定して/etc/tigervnc/vncserver.users
から、systemctl start vncserver@:1
ディスプレイ1に関連付けられているユーザーセッションの開始を実行して開始します。