Projet

Général

Profil

Paste
Télécharger (3,44 ko) Statistiques
| Branche: | Révision:

root / bin / purge_des_sauvegardes.sh @ af601f8c

1 170eac77 jenselme
#!/bin/sh
2
PATH=/usr/local/bin:/usr/bin:/bin:/users/guest/assos/bin
3
4
##############
5
# nlehuby - 05 juillet 2012
6
# ce script permet de nettoyer p?riodiquement les diff?rents r?pertoires o? sont enregistr?s les sauvegardes de base de donn?es, afin de lib?rer de l'espace.
7
##############
8
9
######## sauvegardes individuelles ########
10
#compte le nombre de sites d7 (en excluant les liens symboliques)
11
cd /users/guest/assos/htmltest/sites
12
let "nbsitesd7 = `ls -lF | grep -v 'all' | grep -v @ | wc -l`" >/dev/null ;
13 af601f8c jenselme
#explications : l'option -F dans le ls permet de marquer les liens symboliques avec un @ ; le "grep -v @" permet donc d'ignorer les liens symboliques dans la liste fournie par ls. La commande wc permet de compter le nombre de lignes retourn?es. Le let permet de d?finir une variable qui soit un nombre (et pas une chaine de caract?res)
14 170eac77 jenselme
15
#va dans le dossier des sauvegardes individuelles
16
cd /users/guest/assos/Desktop/dump_individuels
17
18
#s'il y a plus de 2 x (le nombre de site d7) - 1 fichiers alors
19
let "c=2*$nbsitesd7 - 1" >/dev/null  ;
20
if [ $(ls -l | wc -l)  -gt  $c ] ; then
21 af601f8c jenselme
    echo "je supprime des sauvegardes isol?es"
22 170eac77 jenselme
#supprime (le nombre de site d7) plus vieux fichiers
23 af601f8c jenselme
    ls -tr | head -$nbsitesd7 | xargs rm;
24 170eac77 jenselme
25
#sinon, alerte
26 af601f8c jenselme
else
27
    echo "La purge des sauvegardes des sites individuelles d7 n'a pas pu ?tre effectu?e car il n'y avait pas assez de fichiers dans le dossier. Il faudrait v?rifier que le script de sauvegarde s'ex?cute correctement" | mail -s "[dump assos] On a des soucis avec les sauvegardes de bdd" assos@centrale-marseille.fr;
28 170eac77 jenselme
29
fi
30
echo `ls -l | wc -l `
31
######## sauvegardes compl?tes d6 ########
32
#va dans le site des sauvegardes compl?tes d6
33
cd /users/guest/assos/Desktop/dump_d6
34
35
#s'il y a plus de 15 fichiers alors
36
if [ $(ls -l | wc -l)  -gt 15 ] ; then
37 af601f8c jenselme
    echo "je supprime du d6"
38 170eac77 jenselme
#supprime les 3 fichiers les plus vieux
39 af601f8c jenselme
    ls -tr | head -3 | xargs rm;
40 170eac77 jenselme
41
#sinon, alerte
42 af601f8c jenselme
else
43
    echo "La purge des sauvegardes compl?tes des bases de donn?es drupal 6 n'a pas pu ?tre effectu?e car il n'y avait pas assez de fichiers dans le dossier. Il faudrait v?rifier que le script de sauvegarde s'ex?cute correctement" | mail -s "[dump assos] On a des soucis avec les sauvegardes de bdd" assos@centrale-marseille.fr ;
44 170eac77 jenselme
45
fi
46
echo `ls -l | wc -l `
47
######## sauvegardes compl?tes d7 ########
48
#va dans le site des sauvegardes compl?tes d7
49 af601f8c jenselme
cd /users/guest/assos/htmltest/sites
50
let "nbsitesd7 = `ls -lF | grep -v 'all' | grep -v @ | wc -l`" >/dev/null ;
51
#explications : l'option -F dans le ls permet de marquer les liens symboliques avec un @ ; le "grep -v @" permet donc d'ignorer les liens symboliques dans la liste fournie par ls. La commande wc permet de compter le nombre de lignes retourn?es. Le let permet de d?finir une variable qui soit un nombre (et pas une chaine de caract?res)
52
53
#va dans le dossier des sauvegardes individuelles
54 170eac77 jenselme
cd /users/guest/assos/Desktop/dump_d7
55
56 af601f8c jenselme
#s'il y a plus de 3 x (le nombre de site d7)
57
let "c=2*$nbsitesd7" >/dev/null  ;
58
if [ $(ls -l | wc -l)  -gt  $c ] ; then
59
    echo "je supprime des sauvegardes isol?es"
60
#supprime (le nombre de site d7) plus vieux fichiers
61
    ls -tr | head -$nbsitesd7 | xargs rm;
62 170eac77 jenselme
63
#sinon, alerte
64 af601f8c jenselme
else
65
    echo "La purge des sauvegardes automatiques des sites d7 n'a pas pu ?tre effectu?e car il n'y avait pas assez de fichiers dans le dossier. Il faudrait v?rifier que le script de sauvegarde s'ex?cute correctement" | mail -s "[dump assos] On a des soucis avec les sauvegardes de bdd" assos@centrale-marseille.fr;
66 170eac77 jenselme
67
fi
68
echo `ls -l | wc -l `