Outils pour utilisateurs

Outils du site


linux:rsnapshot (lu 2142 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux:rsnapshot [28-06-2014 18:59]
edmc73 [Activation]
linux:rsnapshot [03-09-2023 18:36] (Version actuelle)
edmc73 [Démarrer le service]
Ligne 164: Ligne 164:
 Recherchez **RsyncServer**. Par défaut il est en **Manuel**, double-cliquez dessus, mettez le type de démarrage en automatique pour qu'il se lance à l'ouverture de Windows puis cliquez sur Démarrer pour lancer le service. Recherchez **RsyncServer**. Par défaut il est en **Manuel**, double-cliquez dessus, mettez le type de démarrage en automatique pour qu'il se lance à l'ouverture de Windows puis cliquez sur Démarrer pour lancer le service.
  
-<note important>Pensez à ouvrir le port 873 de votre firewall</note>+<note important>Pensez à ouvrir le port 873 de votre firewall  \\ 
 +"Pare-feu Windows Defender" / "Paramètres avancés"\\ 
 +"Règles de trafic entrant" 
 + 
 +"RsyncServer" \\ 
 +"Protocoles et ports" : TCP : 873 \\ 
 +"Etendue" : ajouter l'adresse ip de votre serveur 
 +</note>
  
  
Ligne 250: Ligne 257:
  
  
 +===== Utiliser les snapshots de btrfs =====
 +
 +Inspiré du tuto http://it.werther-web.de/2011/10/23/migrate-rsnapshot-based-backup-to-btrfs-snapshots/
 +
 +Le tuto ci-dessus part d'un disque de backup en ext4 qu'il convertit ensuite en btrfs, donc lisez le si vous êtes dans ce cas.\\
 +Ici on fait déjà nos backups sur une partition btrfs, on va modifier les appels aux commandes ''cp'' et ''rm'' en les remplaçant par ''btrfs subvolume snapshot'' et ''btrfs subvolume delete''
 +L'avantage est la rapidité de la création d'un snapshot par rapport à la création de liens physique et aussi que le snapshot conserve toutes les meta-données des fichiers contrairement aux liens physiques.
 +
 +Si vous partez de rien, You must create hourly.0 as a BTRFS subvolume from the outset, otherwise it will be created as a directory and propogate itself. You lose the advantage of BTRFS.
 +  # btrfs subvolume create daily.0
 +  # btrfs subvolume create monthly.0
 +  # rsnapshot -c /etc/rsnapshot.conf daily
 +==== Script de gestion des snapshots ====
 +
 +Script **rsnapshot_plug_cp_btrfs** qui remplacera la commande **cp**
 +<file bash rsnapshot_plug_cp_btrfs>
 +#!/bin/bash
 + 
 +# Arg 1: -al
 +# Arg 2: /testbtrfs/backups/hourly.0
 +# Arg 3: /testbtrfs/backups/hourly.1
 + 
 +/sbin/btrfs subvolume snapshot $2 $3
 +</file>
 +
 +Script **rsnapshot_plug_rm_btrfs** qui remplacera la commande **rm**
 +<file bash rsnapshot_plug_rm_btrfs>
 +#!/bin/bash
 + 
 +# Arg 1: -rf
 +# Arg 2: /testbtrfs/backups/hourly.4/
 + 
 +# echo 1: $1  2: $@
 + 
 +# Essaie de supprimer le répertoire donné avec la commande btrfs subvolume delete en premier
 +# Si la commande échoue, on supprime le répertoire avec la commande rm
 +if [  "$1" = "-rf"  -a  "$3" = ""  ]; then
 +        # "on essaie de supprimer avec btrfs"
 +        /sbin/btrfs subvolume delete $2
 +        error=$?
 +        if [ $error -eq 13 ]; then
 +                # EC 13 => Le répertoire spécifié n'est pas un sous volume
 +                rm $@
 +        elif [ $error -ne 0 ]; then
 +                echo Erreur en supprimant avec btrfs $?
 +        fi
 +else
 +        rm $@
 +fi
 +</file>
 +
 +Copier ces fichiers ou vous le souhaitez et rendez les exécutables avec **chmod 755**
 +
 +==== Migration ====
 +
 +Maintenant il faut migrer nos répertoires de sauvegarde en sous volume btrfs. Un script plus poussé est fourni dans le tuto en lien au début de ce chapitre. Ici nous le prenons le cas de backup uniquement journalier (daily)
 +
 +D'abord on créer un répertoire **old** pour y stocker tous nos backup daily
 +  mkdir old
 +  mv daily.* old
 +
 +Maintenant nous allons créer un sous volume du plus vieux des backups et y copier son contenu
 +  btrfs subvolume create daily.29
 +  rsync -avi --numeric-ids old/daily.29/ daily.29/
 +
 +Ensuite nous allons créer un snapshot de ce sous volume et synchroniser celui avec le backup suivant et remonter ainsi jusqu'au dernier backup le plus récent.
 +<code bash>
 +btrfs subvolume snapshot daily.29 daily.28
 +rsync -avi --delete --numeric-ids old/daily.28/ daily.28/
 +
 +btrfs subvolume snapshot daily.28 daily.27
 +rsync -avi --delete --numeric-ids old/daily.27/ daily.27/
 +
 +...
 +
 +btrfs subvolume snapshot daily.1 daily.0
 +rsync -avi --delete --numeric-ids old/daily.0/ daily.0/
 +</code>
 +
 +On doit aussi pouvoir faire un petit script avec une boucle
 +<code bash>
 +for (( c=29; c>0; c-- ))
 +do
 +  btrfs subvolume snapshot daily.$c daily.$(($c - 1))
 +  rsync -avi --delete --numeric-ids old/daily.$(($c - 1))/ daily.$(($c - 1))/
 +done
 +</code>
 +
 +On supprime ensuite les vieux backups
 +  rm -fr old
 +
 +==== Configuration ====
 +
 +Maintenant il faut modifier votre fichier de config **rsnapshot.conf**\\
 +Je ne sais pas si l'option suivante est nécessaire, mais dans le doute
 +  no_create_root  1
 +
 +Maintenant nos 2 scripts. Adapter suivant le chemin ou vous avez placé vos scripts
 +  cmd_cp    /bin/rsnapshot_plug_cp_btfrs
 +  cmd_rm    /bin/rsnapshot_plug_rm_btfrs
 +
 +A tester aussi
 +  one_fs          1
  
  
linux/rsnapshot.1403974792.txt.gz · Dernière modification: 28-06-2014 18:59 de edmc73