J'ai créé un petit programme pour automatiser l'installation de Raspbian sur carte SD ou faire une sauvegarde de ma Carte SD sur un pc Linux. (Ubuntu et dérivé)
Le fonctionnement
Le programme va lire le dossier, choisir et lister les fichier .img et .iso
Le programme va vérifier les disques présent sur le système, et vous proposer le dernier montage pour travailler s'il est < à 64G .( votre clé usb )
Ensuite il va vous proposez d'installer ou de sauvegarder
Si on clique sur installation :
Le programme va vous demander si vous voulez formater la clé, si "oui", on formate, si "non" on passe à la suite
Une fois l'image choisie, le programme va lancer le sous programme dans un autre processus et lancer la copie de l'image sur la clé
Une fois la copie terminée, le programme et le sous programme se ferme
Si vous annulé pendant la copie, le sous programme va arrête le processus de copie et se fermer
Vous serez averti quand vous pourrez enlever la clé (environ 10s après avoir cliquer sur annulé )
Si vous annulé ailleurs dans le programme,il se fermera .
Si on clique sur sauvegarde :
Le programme va vous demander un nom pour l'image que l'on va créer (le backup de la sd)) ensuite il va lancer le sous programme et lancer la copie
Une fois la copie terminée, le programme et le sous programme se ferme
Si vous annulé pendant la copie, le sous programme va arrête le processus de copie et se fermer
Vous serez averti quand vous pourrez enlever la clé (environ 10s après avoir cliquer sur annulé )
Le programme
On le place ou on veut, moi je le met dans le dossier où se trouve les fichiers .img, .iso
Si vous n' en avez pas déjà un, on le crée :
mkdir /home/manu/Documents/Raspi
Adapter la commande en fonction du chemin ou vous voulez créer le dossier et sinon on peut le faire avec la souris ^^.
Ensuite téléchargez la distribution de votre choix sur votre PC , dézippez et placez l'image dans votre dossier Raspi
Ou placer y vos images disque si vous en avez déjà
J'utilise principalement Raspbian-lite mais cela fonctionne avec n'importe quelle distribution.
Puis on se rend dans le dossier nouvellement crée.
cd /home/manu/Documents/Raspi
Puis on y créer un nouveau fichier nommé SDTools.sh
nano SDTools.sh
Puis copiez - collez le programme suivant, pour cela cliquez avec la souris dans l'encadré du programme, puis Ctrl a pour tout sélectionner et Ctrl c pour copier
Ensuite dans nano, clique droit de la souris et coller . (cela peut prendre quelques secondes si le programme est long)
Une fois le fichier collé, appuyez sur Ctrl x pour fermer et enregistrer le fichier.
SDTools.sh :
On rend le fichier exécutable :
chmod +x SDTools.sh
Si le chemin de votre dossier, ou sont stocké les images disque, est différent vous pouvez changer le chemin par défaut dans le programme, c'est indiqué dans les commentaire du programme.
Le sous programme
Il est lancer par le programme juste avant la copie ( installation ou sauvegarde ), et sert a tuer le processus de copie si on annule pendant quelle s'exécute.
Il se ferme tout seul quand le programme est fini, que l'on annule ou pas.
On créer un nouveau fichier nommé killdd.sh
nano killdd.sh
Puis copiez - collez le programme suivant, pour cela cliquez avec la souris dans l'encadré du programme, puis Ctrl a pour tout sélectionner et Ctrl c pour copier
Ensuite dans nano, clique droit de la souris et coller . (cela peut prendre quelques secondes si le programme est long)
Une fois le fichier collé, appuyez sur Ctrl x pour fermer et enregistrer le fichier.
killdd.sh :
On rend le fichier exécutable :
chmod +x killdd.sh
Si vous annulez pendant la copie, attendez que le programme vous dise d'enlever la clé avant de le faire, ceci afin d'éviter d'enlever la clé pendant qu'elle est occupée.
Le lanceur
Pour lancer le programme :
Chez moi la commande donne :
gksudo /home/manu/Documents/Raspi/./SDTools.sh
Adapter la commande en fonction du chemin du programme s'il diffère
Vérifiez en le lançant, puis annuler.
j'ai créer un petit icône pour le programme, clique droit sur l'image et enregistrer l'image sous .. :
Ensuite on va copier cette image dans le dossier des icônes du système ( /usr/share/icons/ ).
sudo cp /home/manu/Bureau/SDTools.png /usr/share/icons/
Adapter la commande en fonction du chemin de votre image
On va maintenant créer le lanceur afin qu'il apparaisse dans notre menu application, la commande diffère suivant l'environnement utilisé ( gnome kde mate etc ...).
Pour connaître quelle est son environnement si on ne sait pas, tapez la commande suivante dans le terminal :
echo "${XDG_CURRENT_DESKTOP}"
Donc pour créer le lanceur on tape :
sudo mate-desktop-item-edit /usr/share/applications/ --create-new
bien sur on change mate par son environnement
Pour ubuntu 'classic' la commande est :
sudo gnome-desktop-item-edit /usr/share/applications/ --create-new
cette fenêtre s'ouvre :
Cliquez sur l'icône et changez le en remontant jusqu'au dossier /icons, et choisissez l'image du programme
Renseignez le nom du programme: SDTools
Puis la commande pour le lancer
gksudo /home/manu/Documents/Raspi/./SDTools.sh
Voici ce que cela donne chez moi :
Puis validez
Voilà vous avez un raccourci de votre programme dans le menu application :
Voilà c'est terminé, maintenant :
Si vous voulez supprimer ce lanceur du menu :
sudo rm /usr/share/applications/SDTools.desktop
Et si vous voulez le consulter :
sudo nano /usr/share/applications/SDTools.desktop
Depuis la version 18.04 d'Ubuntu, GKSU n'est plus supporté, pour y remédier on utilise pkexec :
cd /usr/local/bin && nano gksudo
On y colle cette ligne :
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY $@
On sauve et quitte, puis on rend ce fichier exécutable
chmod 755 gksudo