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:
- et aussi Vnc et Vino qui explique comment utiliser un client Java
Pour aller vite
Utilisateurs Linux/(Open)Solaris
- recuperer ce script et modifier la ligne 9 (USER doit contenir votre login)
- un client VNC doit etre installe sur votre machine
Utilisateurs MacOSX
Laurent Battisti a développé un programme pour faciliter l'utilisation du VNC du CMI sur les macs:
Mot de passe de la session VNC
il suffit d'utiliser la commande vncpasswd sur protis.univ-mrs.fr
Details
Principe
pour utiliser Vnc, il faut procéder en 3 étapes:
- Sur calypso (ou mombasa): lancer le programme vncserver (cf ci-dessous)
- Sur votre machine perso: établir un tunnel ssh entre votre machine personnelle et calypso (ou mombasa)
- Sur votre machine perso: lancer le programme client vnc (vncviewer ou Chicken of the VNC)
Etape 1: lancer vncserver
depuis le CMI
à 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
depuis votre machine personnelle
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
Etape 2: tunnel ssh
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
Etape 3: vncviewer
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).
On peut grouper l'étape 2 et 3 grâce à la commande suivante:
vncviewer -via 147.94.64.48 calypso:<DISPLAY>
Arrêter VNC
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.
Problèmes
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