J'essaie de configurer le serveur TigerVNC pour qu'il s'exécute sur buntu GNOME 16.04. . J'ai installé la dernière version ( 1.8 ) de TigerVNC en utilisant ce post . Si je démarre un serveur en utilisant:
vncserver :4 -geometry 1920x1080 -depth 24 -nolisten tcp -localhost
cela fonctionne parfaitement. Je peux me connecter à écran 4 via SSH et avoir un accès complet à mon ordinateur, sans déverrouiller les écrans réels (physiques) de mon laboratoire. De plus, je peux adapter la géométrie à l'écran de mon ordinateur portable, pour que tout soit parfait.
Ensuite, j'ai essayé de faire démarrer le serveur au démarrage, en utilisant systemd
, et j'ai trouvé ce post pour m'aider. Cependant, j'utilise le bureau GNOME et les paramètres du blog s'appliquent à Unity. Unity n'est pas installé sur ma machine et je préférerais l'éviter.
Comment modifier les étapes 7 et 8 de cette publication pour utiliser le bureau GNOME au lieu de Unity? Je sais que cela ne fonctionne pas s'ils sont ignorés, car je reçois juste un écran noir lorsque je me connecte à distance.
En fait, s'il existe un autre moyen de s'assurer que vncserver
est démarré au démarrage, cela sera également accepté comme réponse. TigerVNC installe un script appelé vncserver
dans /etc/init.d/
, mais je ne parviens pas à le lancer à l'aide de update-rc.d
.
Ce fichier systemd
Unit a fonctionné pour moi:
[Unit]
Description=Start TigerVNC Server at startup
After=syslog.target network.target
[Service]
Type=forking
User=user
PAMName=login
PIDFile=/home/user/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver :%i -depth 24 -geometry 1920x1080 -nolisten tcp -localhost
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
Assurez-vous de remplacer user
par votre nom d'utilisateur actuel sur les lignes correspondant à User
et PIDFile
sous [Service]
.
[email protected]
dans /etc/systemd/system/
systemctl enable [email protected]
qui crée un fichier de lien symbolique [email protected]
dans /etc/systemd/system/multi-user.target.wants/
pointant vers [email protected]
dans /etc/systemd/system/
systemctl start vncserver@4
Pour l'adapter à vos besoins, veuillez utiliser votre numéro d'affichage préféré au lieu de 4 (comme je l'ai fait) lors de l'activation. Assurez-vous également que vous avez initialisé le serveur vncserver en dehors du fichier de cette unité de service avant de démarrer le service. Cela garantirait le mot de passe et les fichiers nécessaires (xstartup
, etc.) sont créés. Le moyen le plus simple consiste à exécuter la commande contre ExecStart
sous [Service]
dans le fichier Unit. Pour mon cas, cela se traduit par:
vncserver :4 -depth 24 -geometry 1920x1080 -nolisten tcp -localhost
Source: J'ai adapté le fichier Unit de ce guide .