Publié le 26 août 2021 - par

Un lanceur IP pour le Raspberry Pi

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. Je lui laisse la parole pour vous présenter sa réalisation…

 

UNE NOUVELLE VERSION DE CET UTILITAIRE EST DISPONIBLE ICI
AVEC EN PLUS UN LOGICIEL DE SAUVEGARDE :

https://www.framboise314.fr/un-lanceur-ip-version-2-et-une-sauvegarde-pour-le-raspberry-pi/

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.

Vous pouvez maintenant récupérer les programmes du lanceur et les dézipper dans un dossier.
Copiez Lanceur-IP-107.py et Cdpetit.gif dans le dossier de vos Scripts Python.
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)

Copiez également le fichier Lanceur-IP-1.pdf dans le dossier de Lanceur-IP-107.py également.

PREMIER LANCEMENT

Comme c’est la première utilisation du logiciel, il n’y a pas encore de fichier de configuration : Lanceur-IP-107.conf
On doit obtenir l’écran suivant  :

Screenshot du premier lancement de Lanceur_IP

Cliquez pour agrandir

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).  L’opération est assez longue, le TimeOut du SSH est fixé à 2s.

Screenshot du Lanceur_IP - Scan des machines présentes en ligne

Cliquez pour agrandir

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.

Screenshot du programme Lanceur_IP _ Enregistrement des Raspberry Pi

Cliquez pour agrandir

A chaque clic sur ENR/RAFFRAICHIR, le fichier de configuration est sauvegardé en .BAK

LES BOUTONS D’ACCES

Coche Browser
Lance Chromium sur l’IP avec le bouton VOIR
Peut contenir un port comme 192.168.1.xx:yyyy ou une adresse internet (exemple dans l dernière copie d’écran, plus bas dans l’article)
Le nom est alors en marron
Les boutons d’accès sont dévalidés
Bouton MAJ
Lance les mises à jour sur l’IP et enregistre la date
Envoie également un « autoremove »
Résultats affichés dans la zone texte
Bouton Voir
Lance VNC sur l’IP ou Chromium si Browser coché
Bouton CMD

Lance la commande définie dans la zone texte en bas en SSH

Boutons ReBoot et Arret

Comme le nom l’indique
Attendre…….Indication lorsque le Reboot est terminé

COMMANDES GENERALES

Nombre de Lignes

Ajuste le nombre de lignes donc le nombre de Raspberry Pi à contrôler

Faire ENR/RAFRAICHIR pour valider

La fenêtre est automatiquement re-dimensionnée

Attention, les lignes non visibles ne seront pas enregistrées

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
TEST-IP

Vérifie la présence des Raspberry Pi de la grille

Si non présent, le nom est en rose et boutons invalidés

Remet le nom du Raspberry Pi s’il a changé en colonne 1

Coche Auto

Lance le TEST-IP au démarrage et à chaque ENR-RAFFRAICHIR

SCAN-IP

Analyse des IP entre 192.168.1.2 et 192.168.1.100
Affiche les IP trouvés en zone texte

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

Utilise SCP version 1
Double click sur l’IP en colonne 2
Indique si disponible ou son Nom

Fichiers/Dossier Origine

Click-Droit pour choisir le fichiers
Faire Annuler pour passer au choix Dossier
Répéter l’opération pour chaque fichier à    copier (Affichés dans la liste)
Copie d’un seul dossier à la fois avec ses sous-  dossiers (Récursif)

Rentrer le Chemin de destination

Un clic Droit permet de lire ce dossier
pour vérification des Fichiers/Dossiers actuels

Bouton COPIER

Les erreurs seront affichées dans la zone texte
Bouton RAZ efface toutes les données ci-dessus

CAPTURE D’ÉCRAN

Utilise scrot

Clic Droit pour voir le chemin de destination

L’attente est réglée à 10s

Message dans la zone texte quand terminé

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.

ScreenShot du lanceur en cours d'utilisation

Cliquez pour agrandir

ATTRIBUER UNE ADRESSE IP FIXE AUX RASPBERRY PI

Pour être tranquille, il vaut mieux mettre des IP fixes sur tous les Raspberry Pi

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

Une horloge avec le Raspberry Pi et Pi Juice

Picam avec détecteur infrarouge – Câble HDMI vers le Raspberry Pi

Un ampli audio pour votre Raspberry Pi

Piloter un ventilateur de Raspberry Pi en PWM

Boîtier de commande I2C pour 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

 

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

5 réflexions au sujet de « Un lanceur IP pour le Raspberry Pi »

  1. doudy

    Faire un SCAN-IP pour trouver les Raspberry Pi disponibles en ligne (Analyse entre 192.168.1.2 et 100).

    Comment faire si les raspberry ont une adresse entre 192.168.1.177 et 192.168.1.182 ?

    Merci

    😉

    Répondre
  2. Pierre-Etienne

    Bonjour,
    super projet 🙂

    Moi qui suis fan de VS code ca serait super intéressant de reprendre le principe pour en faire une extension, mais c’est du JS. Il y a déjà quelques extensions pour gérer le SSH notamment la fonction remote qui est super pratique.

    En tout cas bravo

     

    Pierre-Etienne

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Complétez ce captcha SVP *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.