Différences entre versions de « Rsnapshot »

De Cliss XXI
Sauter à la navigation Sauter à la recherche
imported>SylvainBeucler
m
imported>SylvainBeucler
 
(6 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
http://www.rsnapshot.org/
 
http://www.rsnapshot.org/
  
rsnapshot gère des sauvegarde basée sur rsync, et gère les techniques des liens durs (décrite dans [[sauvegarde incrémentielle]]) pour économiser l'espace disque.
+
rsnapshot gère des sauvegarde basée sur rsync, et gère les techniques des liens durs (décrite dans [[sauvegarde incrémentielle]]) pour économiser l'espace disque. Voir aussi [[rsync-incr]].
  
== Astuces utile ==
+
Version testée: 1.2.9
 +
 
 +
== Astuces utiles ==
  
 
rsnapshot gère les code d'erreur de rsync et ignore certaines erreurs qui surviennent lors d'une sauvegarde d'un système en fonctionnement (fichiers temporaire qui disparaissent entre les phases 'liste de fichiers' et 'copie' notamment).
 
rsnapshot gère les code d'erreur de rsync et ignore certaines erreurs qui surviennent lors d'une sauvegarde d'un système en fonctionnement (fichiers temporaire qui disparaissent entre les phases 'liste de fichiers' et 'copie' notamment).
Ligne 9 : Ligne 11 :
 
rsnapshot 'touch' les répertoires contenant les sauvegarde, ce qui permet de déterminer facilement la date de la sauvegarde.
 
rsnapshot 'touch' les répertoires contenant les sauvegarde, ce qui permet de déterminer facilement la date de la sauvegarde.
  
== Centralisation ==
+
== Problèmes ==
 +
 
 +
=== Centralisation ===
  
rsnapshot met l'ensemble des sauvegarde référencées par un fichier de configuration dans un seul répertoire (daily.0, daily.1, etc). Plus généralement une sauvegarde indépendante implique un fichier de configuration séparé. Pas moyen de centraliser l'ensemble des sauvegardes réalisées par une machine dans un seul fichier - si une sauvegarde échoue, l'ensemble de des autres sauvegardes est concerné.
+
rsnapshot met l'ensemble des sauvegarde référencées par un fichier de configuration dans un seul répertoire (daily.0, daily.1, etc). Plus généralement une sauvegarde indépendante implique un fichier de configuration séparé. Pas moyen de centraliser l'ensemble des sauvegardes réalisées par une machine dans un seul fichier - si une sauvegarde échoue, l'ensemble des autres sauvegardes est concerné.
  
== Sécurité en cas d'interruption ==
+
=== Sécurité en cas d'interruption ===
  
Par défaut rsnapshot commence par supprimer la sauvegarde la plus ancienne, faire la rotation, puis enfin synchronise. Si la synchronisation échoue plusieurs fois, ce sera autant de sauvegarde perdues. Dans le pire des cas, la dernière sauvegarde valide est essentiellement répliquée sur l'ensemble des emplacements de sauvegarde.
+
Par défaut rsnapshot commence par supprimer la sauvegarde la plus ancienne, faire la rotation, puis enfin synchronise. Si la synchronisation échoue plusieurs fois, ce sera autant de sauvegarde perdues. Dans le pire des cas, la dernière sauvegarde valide est essentiellement répliquée sur l'ensemble des emplacements de sauvegarde (via le "rollback" qui consiste en un <code>cp -al</code> de la dernière sauvegarde, qui vient de subir une rotation, d'où la réplication progressive sur les autres emplacements).
  
 
Lorsque 'use_lazy_deletes' est utilisé, il serait possible de faire une restauration sans perte en cas de mauvaise synchronisation. Ce n'est pas le cas pour le moment.
 
Lorsque 'use_lazy_deletes' est utilisé, il serait possible de faire une restauration sans perte en cas de mauvaise synchronisation. Ce n'est pas le cas pour le moment.
Ligne 23 : Ligne 27 :
 
== Mes modifs ==
 
== Mes modifs ==
  
  # plus --hard-links --sparse, moins --delete (superflu si --delete-excluded):
+
  # Erreur si le répertoire cible n'existe pas:
 +
no_create_root 1
 +
# Ajout de --hard-links --sparse, suppression de --delete (superflu si --delete-excluded):
 
  rsync_long_args --numeric-ids --relative --delete-excluded --sparse --hard-links
 
  rsync_long_args --numeric-ids --relative --delete-excluded --sparse --hard-links
 
  # Exclusions génériques:
 
  # Exclusions génériques:

Version actuelle datée du 4 décembre 2007 à 15:55

http://www.rsnapshot.org/

rsnapshot gère des sauvegarde basée sur rsync, et gère les techniques des liens durs (décrite dans sauvegarde incrémentielle) pour économiser l'espace disque. Voir aussi rsync-incr.

Version testée: 1.2.9

Astuces utiles

rsnapshot gère les code d'erreur de rsync et ignore certaines erreurs qui surviennent lors d'une sauvegarde d'un système en fonctionnement (fichiers temporaire qui disparaissent entre les phases 'liste de fichiers' et 'copie' notamment).

rsnapshot 'touch' les répertoires contenant les sauvegarde, ce qui permet de déterminer facilement la date de la sauvegarde.

Problèmes

Centralisation

rsnapshot met l'ensemble des sauvegarde référencées par un fichier de configuration dans un seul répertoire (daily.0, daily.1, etc). Plus généralement une sauvegarde indépendante implique un fichier de configuration séparé. Pas moyen de centraliser l'ensemble des sauvegardes réalisées par une machine dans un seul fichier - si une sauvegarde échoue, l'ensemble des autres sauvegardes est concerné.

Sécurité en cas d'interruption

Par défaut rsnapshot commence par supprimer la sauvegarde la plus ancienne, faire la rotation, puis enfin synchronise. Si la synchronisation échoue plusieurs fois, ce sera autant de sauvegarde perdues. Dans le pire des cas, la dernière sauvegarde valide est essentiellement répliquée sur l'ensemble des emplacements de sauvegarde (via le "rollback" qui consiste en un cp -al de la dernière sauvegarde, qui vient de subir une rotation, d'où la réplication progressive sur les autres emplacements).

Lorsque 'use_lazy_deletes' est utilisé, il serait possible de faire une restauration sans perte en cas de mauvaise synchronisation. Ce n'est pas le cas pour le moment.

'sync_first' est prévu pour parer à ce cas: d'abord la sauvegarde est synchronisée dans un répertoire temporaire, ensuit seulement la rotation se déroule. Malheureusement l'option 'link_dest', qui fait toute la force de rsnapshot, est ignorée dans ce cas.

Mes modifs

# Erreur si le répertoire cible n'existe pas:
no_create_root	1
# Ajout de --hard-links --sparse, suppression de --delete (superflu si --delete-excluded):
rsync_long_args	--numeric-ids --relative --delete-excluded --sparse --hard-links
# Exclusions génériques:
exclude	/dev/pts/*
exclude	/proc/*
exclude	/sys/*
exclude	/mnt/*/*
exclude	/var/cache/apt/archives/*
# Optimisation de l'espace disque par liens durs:
link_dest	1
# La sauvegarde, méthode "démon par connexion shell distante":
backup	root@mercure::root	mercure/	+rsync_long_args=-e 'ssh'