Script de vérification de présence de fichiers
Bonjour,
Actuellement je fais un dump de plusieurs de mes bases MySQL, mais je désire envoyer un mail pour vérifier la présence de mes fichiers.
Pour cela je fais un if sur des commandes find mais il me signale des problèmes de droit sur l’accès à mes dossiers, même executé en root et avec l'utilisateur administrateur alors que la commande find seule exécutée fonctionne.
Mon Script
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #!/bin/bash
cd /home/administrateur/mon_dossier_de_stockage_de_mes_backups
for i in base1 base2 base3 base4; do
mysqldump --user=root --password='mon_passe' $i > ${i}_`date +%D | sed 's;/;-;g'`.sql
tar jcf ${i}_`date +%D | sed 's;/;-;g'`.sql.tar.bz2 ${i}_`date +%D | sed 's;/;-;g'`.sql
rm ${i}_`date +%D | sed 's;/;-;g'`.sql
done
DATETITRE=$(date +%D | sed 's;/;-;g')
CMD1=$(find /home/administrateur/mon_dossier_de_stockage_de_mes_backups -name base1_$DATETITRE.sql.tar.bz2)
CMD2=$(find /home/administrateur/mon_dossier_de_stockage_de_mes_backups -name base2_$DATETITRE.sql.tar.bz2)
CMD3=$(find /home/administrateur/mon_dossier_de_stockage_de_mes_backups -name base3_$DATETITRE.sql.tar.bz2)
CMD4=$(find /home/administrateur/mon_dossier_de_stockage_de_mes_backups -name base4_$DATETITRE.sql.tar.bz2)
if $CMD1 -a $CMD2 -a $CMD3 -a $CMD4
then mail -s "Sauvegarde BDD terminee avec succes" monmail@mail.fr <<< "Les sauvegardes des bases de donnees ont ete effectuees avec succes"
else mail -s "ERREUR Sauvegarde " monmail@mail.fr <<< "Les sauvegardes des bases de donnees n'ont pas ete effectuees, il y a un probleme. \n voir les scripts de sauvegarde et les sauvegardes dans \home\administrateur\mon_dossier_de_stockage_de_mes_backups"
fi |
J'ai essayé aussi avec if [[cmd1 && cmd2... ]] mais rien, je pense que ma manière de faire n'est pas bonne.
Par la suite le script sera exécuté du crontab de root
Merci d'avance