Systemd TightVNC 多用户

Systemd TightVNC 多用户

这个问题可能之前已经回答过了,但如果已经回答过了,那我的 google foo 也不够强大,找不到它。我正在运行一个 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

相关内容