Rsync backup incrémental sur un mois

tourdball Messages postés 152 Date d'inscription   Statut Membre Dernière intervention   -  
 adam -
Bonjour à tous,
j'utilise rysnc avec l'option backup, voici ma commande :
Code:

rsync -arvtgo --stats --delete --backup --backup-dir=/BACKUP/MENSUEL/INCREMENTAL/$DATEDUJOUR -e ssh IP_host:/home /BACKUP/MENSUEL/PRINCIPALE

ce qui me permet de mettre en place un backup incrémentiel journalier. Dans mon script, j'utilise une variable date pour créer les dossiers journaliers ou sont placés les sauvegarde incrémentale. Concrètement j'ai une architecture de ce genre :
/BACKUP/MENSUEL/PRINCIPALE
/BACKUP/MENSUEL/INCREMENTAL
avec dans le dossier /BACKUP/MENSUEL/INCREMENTAL :
Code:

/BACKUP/MENSUEL/INCREMENTAL 01avr07.23:30
/BACKUP/MENSUEL/INCREMENTAL 02avr07.23:30
/BACKUP/MENSUEL/INCREMENTAL 03avr07.23:30
/BACKUP/MENSUEL/INCREMENTAL 04avr07.23:30
etc...

comment faire pour que le mois d'après, à chaque jour de nouveau backup soit éliminer le backup incrémental le plus ancien pour laisser place au nouveau? Attention, je ne veux pas tout effacer, je veux constament avoir 30 jours de backup incrémental et je ne veux pas accumler au de données au delà. Comment gérer çà?

Merci d'avance pour votre
A voir également:

5 réponses

Guess
 
ATTENTION, si tu effaces les fichiers de plus de trente jours, tu va aussi effacer des fichiers que tu viens de backuper, mais qui on été créé il y a plus de 30 jours sur la machine que tu veux veux backuper.

Pour que ça marche, il faut que tu enlève l'option -t de ton rsync!! (option qui précise de garder la date de création lors de ton backup!!)
5
foobar47 Messages postés 13536 Date d'inscription   Statut Contributeur Dernière intervention   533
 
find /BACKUP/MENSUEL/INCREMENTAL -atime +30 -exec rm -rf {}

;-)
3
tourdball Messages postés 152 Date d'inscription   Statut Membre Dernière intervention   11
 
salut!
dis moi foobar, la commande "find /BACKUP/MENSUEL/INCREMENTAL -atime +30 -exec rm -rf {}" élimine de manière récurrente tous les dossiers précents dans la directory spécifiée qui ont plus de 30 jours?
0
jcv59
 
Bonjour,

J'ai vu que c'était assez ancien (2007 - 2008), mais bon j'utilise une solution qui pourrait vous intéresser:

find /BACKUP/MENSUEL/INCREMENTAL*  -maxdepth 0 -type d -mtime +60 -exec rm -rf {} \;


le -maxdepth 0 permet de limiter la recherche au dossier spécifié, ce qui est très rapide. seul le rm peut prendre du temps si le dossier contient beaucoup de fichiers.

Après le rsync , ne pas oublier de faire un touch /BACKUP/MENSUEL/PRINCIPALE

JCV
2
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
Trouver les fichiers crées il y plus de 30 jours avec la commande find:

find /dir -ctime 30 -ls
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
adam
 
-a, --archive archive mode; same as -rlptgoD (no -H)

donc

-arvtgo > -av ou -Pa

-P = Progress

Me trompe-je ? :)
1