Systemd TightVNC マルチユーザー

Systemd TightVNC マルチユーザー

これはすでに回答されているかもしれませんが、もし回答されていたとしても、私の Google 検索ではそれを見つけるのに十分ではありません。私は TightVNC サーバーを実行しており、複数のユーザーが接続できるようにしたいと考えています。init.d を使用した従来のランレベルではこれが実行できることはわかりましたが、systemd では実行できませんでした。

私は、ポートと実行を制御したいので、ユーザーが実行する責任があるユーザー固有のスクリプトを用意するのではなく、さまざまなユーザーに対してサービスを開始するための引数を持つシステム サービスを作成しようとしています。

以下のように考えましたが、if ステートメントが機能しません。このような単一のサービスを持つ方法はありますか? それとも、ユーザーごとに複製する必要がありますか?

ありがとう。

[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
if [ 1 == %i]; then
 User = user1
 Group = user1
 WorkingDirectory=/home/user1
 PIDFile = /home/user1/.vnc/%H:%i.pid
elif [2 == %i]; then
 User = user2
 Group = user2
 WorkingDirectory=/home/user2
 PIDFile = /home/user2/.vnc/%H:%i.pid
fi

ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 -localhost :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

関連情報