Bonjour, j’apprends à coder et j’essaye de créer un script bash pour automatiser mes sauvegardes avec rdiff-backup (je sais il y a plein de script existant déjà performant, mais c’est une manière d’apprendre et mon périphérique de sauvegarde est chiffré ce qui modifie un peu tout…
voici mon début de script :
[code]#!/bin/sh
if [ -e $/dev/disk/by-uuid/ba9e76b3-2f65-4f7f-aa69-285223dbced6 ]
then
# ouverture du périphérique chiffré
cryptsetup luksOpen /dev/disk/by-uuid/ba9e76b3-2f65-4f7f-aa69-285223dbced6 R-diff
# cryptsetup demande à ce moment la passphrase de décryptage, comment la saisir ds le script ?
if [ -e $/dev/mapper/R-diff ]
then
# montage du disque externe contenant la sauvegarde
mount -t ext3 /dev/mapper/R-diff /media/r-diff/
# faire une liste des sauvegarde présentes avant la nouvelle sauvegarde et en écrivant les erreurs
nice -n 19 rdiff-backup -l /media/r-diff/backup > /home/rdiff-backup/oldbackup.txt 2>&1
# faire une nouvelle sauvegarde, sortie avec erreurs ds un nouveau fichier
nice -n 19 rdiff-backup --exclude-globbing-filelist /home/rdiff-backup/exclude.txt --exclude-sockets /home/lavilotte-rolle/Musique /media/r-diff/backup > /home/rdiff-backup/rdiffbackup.txt 2>&1
# effacer les sauvegardes vieilles de plus d'un mois, sortie avec erreurs completant le fichier existant
nice -n 19 rdiff-backup --remove-older-than 1M --force /media/r-diff/backup >> /home/rdiff-backup/rdiffbackup.txt 2>&1
# gérer l'effacement des vieilles sauvegardes en fonction de la place disponible sur le HDD ?
# faire une liste des sauvegarde présentes après la nouvelle sauvegarde et en écrivant les erreurs
nice -n 19 rdiff-backup -l /media/r-diff/backup > /home/rdiff-backup/backup.txt 2>&1
# démontage du volume de sauvegarde (sécurité)
umount /media/r-diff
# fermeture du volume chiffré
cryptsetup luksClose R-diff
else
echo "Erreur : le périphérique de sauvegarde n'est pas branché"
fi
else
echo "Erreur : le périphérique de sauvegarde n’est pas branché"
fi[/code]
Ma condition suivante :
if [ -e $/dev/disk/by-uuid/ba9e76b3-2f65-4f7f-aa69-285223dbced6 ]
then
# ouverture du périphérique chiffré
cryptsetup luksOpen /dev/disk/by-uuid/ba9e76b3-2f65-4f7f-aa69-285223dbced6 R-diff
# cryptsetup demande à ce moment la passphrase de décryptage, comment la saisir ds le script ?
else
echo "Erreur : le périphérique de sauvegarde n'est pas branché"
fi
Doit (si j’ai bien compris) me renseigner sur la présence du fichier /dev/disk/by-uuid/ba9e76b3-2f65-4f7f-aa69-285223dbced6, effectuer les commandes suivantes si il est présent et renvoyer le message d’erreur le cas échéant.
Or , premier problème il me renvoit toujours le message d’erreur même si le fichier en question est bien présent…
Une idée ? Erreur de syntaxe ?
D’autre part cryptsetup luksOpen me demande de taper ma passphrase dans la console où je lance le script, y a t il un moyen d’éviter celà (stocker la passphrase ds un fichier, ds le script ou autre) ?
Merci à vous !