네 명의 서로 다른 사용자를 위해 Debian Buster 컴퓨터에서 네 개의 VNC 서버 인스턴스를 실행하고 있습니다.
Apache Guacamole 덕분에 사용자는 웹 브라우저를 통해 원격 컴퓨터에서 동시에 각자의 계정에 로그인할 수 있습니다.
각 VNC 인스턴스에는 자체 유닛 파일이 있습니다. 그것들은 다음과 같습니다:
[Unit]
Description=a wrapper to launch an X server for VNC
After=syslog.target network.target
[Service]
Type=forking
User=user2
Group=user2
WorkingDirectory=/home/user2
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -rfbport 5902 -depth 24 -geometry 1280x800 -localhost :%i
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
사용자, 사용자의 홈 디렉터리 및 VNC 서버의 포트가 명시적으로 지정됩니다. Guacamole의 사용자 매핑 파일에 있는 데이터와 일치해야 합니다.
<connection name="User1">
<protocol>vnc</protocol>
<param name="hostname">localhost</param>
<param name="port">5902</param>
<param name="password">user2's vnc password</param>
</connection>
</authorize
시작 시 한 번에 하나의 VNC 인스턴스만 시작하는 매우 간단한 스크립트가 있습니다.
그래서 이것은 나에게 효과가 있습니다. 나는 그것이 매우 우아하다고 생각하지 않습니다. systemd가 여러 사용자를 지원하도록 하는 더 좋은 방법이 있습니까? 무엇이 될 것인가?[이메일 보호됨]템플릿 파일이 사용자 이름과 포트 번호를 처리하는 것처럼 보일 수 있습니까?