Mini-PC : Gnu/Linux : Utiliser un interpréteur Python en déport graphique par SSH Par X. HINAULT – Novembre 2014 – www.mon-club-elec.fr Ce qu'on va faire ici... Nous allons voir ici comment accéder graphiquement sur le poste fixe (le client SSH) à un interpréteur lancé sur le mini-PC (serveur SSH) via la connexion SSH. En clair, par exemple, une fois connecté à SSH, en lançant l'interpréteur Dreampie, celui-ci va s'ouvrir sur le poste fixe, tout en permettant de travailler sur le miniPC, avec les fichiers locaux du mini-PC, etc.... Ceci, sous réserve que ledit soit installé sur le poste fixe. Utiliser un interpréteur Python de cette façon peut s'avérer extrêmement puissant comme solution pour contrôler totalement le mini-PC de façon interactive à distance, notamment grâce à la librairie Pyduino qui permettra entre autre de contrôler les broches E/S. Dans quelles situations cette procédure est-elle utile ? La procédure présentée ici sera utile à chaque fois que l'on souhaite contrôler le mini-PC à partir de son poste fixe de façon sécurisée. Pré-requis On présuppose ici que le serveur et le client SSH sont opérationnels et configurés correctement. Voir la procédure détaillée dans le document dédié séparé. Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 1 / 10 Le réseau utilisé Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 2 / 10 Configuration du serveur SSH sur le mini-PC pour le déport graphique Ce que l'on va faire ici... Nous allons configurer le serveur SSH sur le mini-PC pour activer le déport graphique du mini-PC. Fichier à éditer Pour configurer le service SSH, on édite le fichier /etc/ssh/ssh_config avec les droits administrateur : sudo geany /etc/ssh/ssh_config Dans le fichier obtenu, configurer : ForwardX11 yes ou bien : X11Forwarding yes Relancer SSH Une fois fait, relancer SSH avec la commande : /etc/init.d/ssh reload ou bien : sudo service ssh reload Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 3 / 10 Connexion au serveur SSH (le mini-PC) depuis le client SSH (le poste fixe) avec déport graphique Ce que l'on va faire ici... Nous allons nous connecter au serveur SSH (= le mini-PC) à partir du serveur SSH (=le poste fixe), en utilisant une identification par mot de passe et en activant le déport graphique. Connexion On suppose évidemment ici que l'on connaît le login et le mot de passe du mini-pc. Il suffit de saisir simplement une commande de la forme : ssh -X user@ip_du_serveur_ssh ce qui donne par exemple : ssh -X [email protected] Ici, c'est le paramètre -X qui active le déport graphique. Résultat obtenu On obtient alors l'invite du mini-PC ubuntu@ubuntu:~$ Remarquer que l'on est à ce moment là connecté en ligne de commande sur le poste « serveur SSH » (le login à changé) autrement dit dans notre cas, connecté au mini-PC en SSH. Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 4 / 10 Utilisation de l'interpréteur Dreampie en déport graphique L'interpréteur Dreampie est installé avec la librairie Pyduino. Si ce n'est pas le cas, on l'installera avec la commande : sudo apt-get install dreampie Une fois fait, le lancement se fait avec la commande : dreampie ce qui donne : Là où les choses deviennent particulièrement intéressantes : l'utilisation de la librairie Pyduino se fait très simplement avec : Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 5 / 10 Et dès lors, il devient possible de contrôler totalement le mini-PC : Je pense que là, c'est pas la peine de vous faire un dessin : mesure, contrôle de broche, etc... tout pourra être contrôlé de manière interactive à distance, par le réseau tout en étant totalement sécurisé. Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 6 / 10 Utilisation de l'interpréteur IPython en déport graphique La procédure d'installation est un petit peu conséquente. L'installation de Ipython sur un système Gnu/Linux est la suivante (Lubuntu 12.04 LTS): • • • • commencer par installer les paquets suivants : ◦ sudo apt-get install ipython ◦ sudo apt-get install ipython-qtconsole et quelques dépendances utiles : ◦ sudo apt-get install python-matplotlib une fois fait, pour disposer de la dernière version, je conseille fortement de mettre à jour avec « pip », l'installateur du dépôt de paquets Python Pypi (https://pypi.python.org/pypi ). Commencer par installer pip : ◦ sudo apt-get install python-pip puis faire la mise à niveau avec : ◦ sudo pip install ipython --upgrade L'intérêt majeur de cette façon de faire est d'installer simplement les dépendances grâce à apt-get plutôt que de les installer 1 à 1 sinon. Une fois fait, on est paré. Utilisation On lance la console graphique Ipython avec : ipython qtconsole ce qui donne : Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 7 / 10 On peut tester la sortie graphique : Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 8 / 10 Le tout avec une réactivité de « ouf »... ! L'affichage de ce graphique par exemple ne génère qu'un simple « pic » CPU instantané. Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 9 / 10 Déconnexion Pour quitter une application lancée : fermer l'application ou bien raccourci CTRL+C Pour quitter la connexion ssh : saisir exit puis valider, ou bien raccourci CTRL + D Conclusion Une solution robuste, sûre, bien que moins complète que l'accès VNC et qui permet de d'économiser de la bande passante, puisque les échanges entre le mini-PC et le poste fixe sont alors minimes. Ressources utiles http://unix.stackexchange.com/questions/12755/how-to-forward-x-over-ssh-from-ubuntu-machine Mini-PC : Gnu/Linux : SSH : Utiliser le déport graphique par SSH - Par X. HINAULT – Octobre 2014 – www.mon-club-elec.fr – p. 10 / 10