Christian possède de nombreux Raspberry Pi et il trouvait que lancer VNC manuellement, en se souvenant de l’IP de chaque machine, commençait à devenir pénible. Il s’est alors lancé dans la réalisation de ce lanceur IP qui répond à ce besoin, mais qui permet aussi de lancer des sites Web, ou de transférer des programmes en Python, créés sur le Raspberry Pi qu’il utilise pour le développement, vers les autres Raspberry Pi. Il a également créé un système pour réaliser plus facilement ses sauvegarde. Je lui laisse la parole pour vous présenter ses réalisations…
Au sommaire :
Lanceur IP pour le Raspberry Pi
Ce programme a été développé sous Python 3.7 et Buster (Debian10) pour les Raspberry Pi 3, PI4 et PI400.
Vu le nombre de Raspberry Pi que j’utilise, il devenait pénible de lancer VNC (en se souvenant de l’IP) pour des actions répétitives et courantes.
Le lanceur permet également de lancer des sites Internet et je m’en sers pour transférer les Scripts Python développés sur mon Raspberry Pi de développement vers mes autres Raspberry Pi. Avant, il fallait que je passe par le PC.
INSTALLATION
On commence par installer paramiko. Paramiko est une implémentation Python (2.7, 3.4+) du protocole SSH v2, fournissant à la fois des fonctionnalités client et serveur. Bien qu’il utilise une extension C de Python pour la cryptographie de bas niveau (Cryptography), Paramiko lui-même est une interface Python pure autour des concepts de réseau SSH.
1 |
sudo pip3 install paramiko |
Vous pouvez maintenant récupérer les programmes du lanceur et les dézipper dans un dossier.
Copiez Lanceur-IP-108.py, Lanceur-IP-108.pdf et Cdpetit.gif dans le dossier de vos Scripts Python. (Le numéro de version peut évoluer dans le temps, adaptez votre commande).
Créer un sous-dossier : Lib et copiez les 4 librairies suivantes dans ce dossier Lib
- clsCDBI : Librairie Générale
- clsSSH : Librairie SSH
- clsSCP : Librairie SCP pour transfert de Fichier/Dossier
- clsToolTip : Librairie pour les ToolTipTexte (n’existe pas dans tkinter)
PREMIER LANCEMENT
Comme c’est la première utilisation du logiciel, il n’y a pas encore de fichier de configuration : Lanceur-IP-108.conf
On doit obtenir l’écran suivant :
Cliquez sur le bouton OK et saisissez le mot de passe SSH et appuyez sur ENTRÉE.
Tous les Raspberry Pi doivent avoir le même mot de passe
Leurs noms seront automatiquement renseignés.
ENREGISTREMENT DES IP
Faire un SCAN-IP pour trouver les Raspberry Pi disponibles en ligne (Analyse entre 192.168.1.2 et 100 ou 200). L’opération est assez longue, le TimeOut du SSH est fixé à 2s.
Rentrer les IP des machines que vous voulez contrôler en colonne 2 de la grille. Le bouton ENR/RAFRAICHIR permet d’enregistrer les données. Le bouton TEST-IP est utilisé pour valider les connections et les boutons d’accès. Le nom des Raspberry Pi apparaît en colonne 1 si le programme les a trouvés.
A chaque clic sur ENR/RAFFRAICHIR, le fichier de configuration est sauvegardé en .BAK
LES BOUTONS D’ACCES
COMMANDES GENERALES
Nombre de Lignes |
Ajuste le nombre de lignes donc le nombre de Raspberry Pi à contrôler |
User SSH |
par défaut « pi » pour le SSH |
Passe SSH |
pour le SSH (le même pour tous) |
ENR/RAFRAICHIR |
Enregistre la configuration et rafraichit l’affichage |
TEMPÉRATURES |
Affiche les températures CPU des Raspberry Pi disponibles |
AIDE |
Clic Gauche => A propos Clic Droit => Affiche la notice en .PDF |
TEST-IP |
Vérifie la présence des Raspberry Pi de la grille Lance le TEST-IP au démarrage et à chaque ENR-RAFFRAICHIR |
SCAN-IP1 ou 2 |
1 > Analyse des IP entre 192.168.1.2 et 192.168.1.100 |
AIDE |
Clic gauche pour afficher Apropos dans la zone texte Clic droit pour lancer la notice (Lanceur-IP-107.odt) sous OpenOffice (gestion erreur si pas installé sur le Raspberry Pi) |
TRANSFERT DE FICHIERS ENTRE RASPBERRY PI
CAPTURE D’ÉCRAN
Utilise scrot Quand terminé Message dans la zone texte |
DOUBLE CLIC COLONNE 1 (NOM)
Infos CPU et Mémoire affichées en zone texte
SUPPRIMER UN RASPBERRY PI
Simplement en effaçant l’IP en colonne 2
Puis bouton ENR/RAFRAICHIR
AJOUTER UN RASPBERRY PI
Rentrer son IP en colonne 2
Puis bouton TEST-IP pour trouver son nom
Puis bouton ENR/RAFRAICHIR pour finaliser
Exemple
Voici le lanceur utilisé tous les jours par Christian. On a aussi l’affichage des infosCPU et mémoire du M-Center.
ATTRIBUER UNE ADRESSE IP FIXE AUX RASPBERRY PI
Pour être tranquille, il vaut mieux mettre des IP fixes sur tous les Raspberry Pi
1 2 3 4 5 6 7 8 9 10 11 12 13 |
sudo nano /etc/dhcpcd.conf # Example static IP configuration: interface eth0 static ip_address=192.168.1.xx/24 static ip6_address=fd51:42f8:caae:d92e::ff/64 static routers=192.168.1.1 static domain_name_servers=192.168.1.1 8.8.8.8 fd51:42f8:caae:d92e::1 |
LIAISON AVEC PC WINDOWS
Tous mes Raspberry ont SAMBA d’installé et les partages configurés
Écran de l’accès rapide du PC :
Vous pouvez télécharger tous les fichiers de ce lanceur IP ici :
https://codes-sources.commentcamarche.net/source/103302-lanceur-sur-ip-raspberry
Logiciel de sauvegarde
Voici un petit logiciel de Sauvegarde dont je me sert sans arrêt pour sauver mes sources ou autres…
CRÉATION D’UN PROFIL |
Choisir un numéro pour ce profil et rentrer son nom |
SAUVEGARDE |
Choisir un profil |
Faire « Fichiers Copiés » pour vérification
En gras si la date est plus récente
Vous pouvez télécharger les fichiers de ce logiciel de sauvegarde ici :
https://codes-sources.commentcamarche.net/source/103303-sauvegarde-raspberry
Conclusion
Voici un bel exemple de ce qu’un maker peut réaliser avec l’outil informatique, pour faciliter sa vie de tous les jours. En général ce sont les tâches répétitives qui déclenche l’envie d’automatiser des actions. Cette solution du lanceur IP pourra aussi être très utile à des entreprises qui mettent en œuvre de nombreux Raspberry Pi. avantage non négligeable, la solution est open source et vous avez accès à tous les programmes que Christian met à votre disposition… Merci à lui 😀
Les précédents articles de Christian sur le blog
Picam avec détecteur infrarouge – Câble HDMI vers le Raspberry Pi
Utilisation simultanée de PiFace 2 et SenseHAT sur un Raspberry Pi
https://www.framboise314.fr/utilisation-simultanee-de-piface-2-sensehat-raspberry-pi-retour/
https://www.framboise314.fr/utilisation-simultanee-de-piface-2-sensehat-raspberry-pi-episode-iii/
Sources
- http://www.paramiko.org/
- https://www.framboise314.fr/wp-content/uploads/2021/08/Lanceur.zip
- https://www.framboise314.fr/wp-content/uploads/2021/08/Lanceur-IP-1.odt
Ping : Un lanceur IP pour le Raspberry Pi - Framboise 314, le Raspberry Pi à la sauce française....
Bonjour,
J’ai fait l’installation comme prévue ci-dessus.
J’ai fait un » chmod +x clsToolTip.py »
Et ensuite ?
Si je fait :
sudo python clsToolTip.py
File « clsToolTip.py », line 28
self.fentip.geometry(f’+{event.x_root+2}+{event.y_root+2}’)
^
SyntaxError: invalid syntax
Si je fait :
pi@raspberrypi-182:~/scripts/python $ python3 clsToolTip.py
pi@raspberrypi-182:~/scripts/python $
Dans l’aide il y a :
PREMIER LANCEMENT
Il n’y a pas encore de fichier de configuration: Lanceur-IP-107.conf
On doit obtenir l’écran suivant :
Mais il n’est pas indiqué comment faire le premier lancement !
😳
J’ai trouvé
Il faut faire via VNC/Exécuter/sudo python3.7 Lanceur-IP-108.py
Ensuite suivre les instructions du fichier PDF
sudo chmod +x chemin/Lanceur-IP-108.py
Ensuite un double-click sur le fichier Lanceur-IP-108.py
ou Ouvrir dans le menu du click-droit
Les modules de classe ne sont pas des exécutables
merci pour le retour Doudy 🙂
Salut à tous et en particulier à Christian.
Bravo pour ta présentation !
Merci et à bientôt.
Artemus24.
@+
Mise à jour de la version 108 disponible sur commentcamarche