vnc

Ceci est une ancienne révision du document !


VNC ou Virtual Network Computing en 3 étapes

Cette solution est à utiliser si on a besoin d'accéder à des applications installées sur les serveurs du CMI/LATP.

La définition est à prendre ici: http://fr.wikipedia.org/wiki/Virtual_Network_Computing
Cette méthode a été testée derrière une borne Wifi et une connexion ADSL 2M, et la fluidité est très bonne.
En attendant de faire une documentation plus simple, voici les notes que j'utilise:

Pour aller vite

  • recuperer ce script et modifier la ligne 9 (USER doit contenir votre login)
  • un client VNC doit etre installe sur votre machine

Laurent Battisti a développé un outil pour faciliter l'utilisation du VNC du CMI sur les macs:

Details

pour utiliser Vnc, il faut procéder en 3 étapes:

  1. lancer le programme vncserver sur mombasa ou calypso (cf ci-dessous)
  2. établir un tunnel ssh entre votre machine personnelle et le programme vncserver lancé sur un des serveurs
  3. lancer sur votre machine personnelle le programme client vnc (vnc viewer ou Chicken of the VNC)

à ne faire qu'une seule fois:
Exécuter les commandes suivantes, en utilisant le Copier-Coller de la souris:

  • créer le dossier .vnc:
    mkdir .vnc
  • recopier le fichier xstartup dans .vnc/
  • donner les droits d'exécution:
    chmod a+x .vnc/xstartup
  • créer un mot de passe: utiliser la commande vncpasswd

à faire si vncserver n'est pas déjà lancé:

  • lancer la commande suivante:
    vncserver -name gnome -geometry 1280x1024


Par exemple:

calypso-henry% vncserver -name gnome -geometry 1280x1024
New 'gnome' desktop is calypso:52
Starting applications specified in /home/henry/.vnc/xstartup
Log file is /home/henry/.vnc/calypso:52.log

retenez le chiffre affiché, il correspond au DISPLAY à fournir au client vnc. Ici, c'est 52, mais ça peut être un chiffre quelconque supérieur à 0

Lorsque vous êtes sur votre machine personnelle (linux ou macosx), il faut commencer par se connecter sur les serveurs du CMI, avec la commande suivante:

moi@ma_machine_a_ma_maison:~$ ssh henry@protis.univ-mrs.fr

Soit vous arrivez sur calypso, soit sur mombasa. A partir de là, il faut lancer vncserver comme expliqué ci-dessus

Pour des raisons de sécurité, il faut utiliser un tunnel sécurisé entre le poste personnel et calypso/mombasa, et donc créer ce tunnel

henry@ma_machine_a_ma_maison:~$ ssh -c blowfish -N -f henry@PARAM1 -L 5901:PARAM2:PARAM3 sleep 60

:!: Attention :!: Dans la commande ci-dessus, les paramètres sont à adapter à votre environnement:

  • PARAM1: vaut 147.94.64.48 pour calypso et 147.94.64.49 pour mombasa
  • PARAM2: calypso (resp. mombasa) si, pendant l'étape 1, vous avez lancé vncserver sur calypso (resp. mombasa)
  • PARAM3: 5900 + DISPLAY, ce chiffre est donné au moment du démarrage du programme vncserver.

Exemples:

ssh -c blowfish -N -f laurent@147.94.64.48 -L 5901:calypso:5952 sleep 60

ssh -c blowfish -N -f henry@147.94.64.49 -L 5901:mombasa:5903 sleep 60

Enfin, on lance le viewer (sur le Mac, on utilisera Chicken of the VNC), dans lequel apparaîtra une fenêtre terminal de calypso/mombasa.

henry@ma_machine_a_ma_maison:~$ vncviewer localhost:1

Le mot de passe attendu est celui que vous avez défini avec la commande vncpasswd ci-dessus, et n'a rien à voir avec votre mot de passe habituel.


A partir de maintenant, on peut lancer firefox, texmaker, maple, matlab (après s'être connecté sur slatp ou shrek).

Ne pas oublier d'arrêter le programme serveur sur calypso, avec la commande:

vncserver -kill :52

:!:Attention au chiffre, prendre celui donné au lancement de la commande :!:
Les programmes serveurs seront automatiquement supprimés dans la nuit de vendredi à samedi, ou plus souvent, si cela s'avère nécessaire. Donc, pensez à les arrêter si vous ne les utilisez pas.

Le problème classique est d'oublier d'arrêter le programme Firefox qui tourne dans Vnc, et lorsqu'on se connecte à nouveau sur son poste au CMI (sunray), on aura un message indiquant que Firefox est déjà lancé. Dans ce cas:

  • on tue firefox:
    pkill -9 firefox

Retrouver le numero de display (DISPLAY):

ps -fu <mon-login> | grep Xvnc
  • vnc.1259152215.txt.gz
  • Dernière modification: 2017/08/25 09:55
  • (modification externe)