Comment sauvegarder facilement votre Linux Box à l'aide de Rdiff-backup : 9 étapes
Comment sauvegarder facilement votre Linux Box à l'aide de Rdiff-backup : 9 étapes
Anonim

Cette instructable vous montrera comment exécuter un système de sauvegarde et de récupération simple et complet sur Linux à l'aide de rdiff-backup et d'une clé USB.

Étape 1: Hypothèses

Je vais supposer un système qui utilise yum pour l'installation et vous a monté une clé USB en tant que /mnt//backup. J'utilise fedora, mais vous pouvez utiliser n'importe quoi et installer simplement rdiff-backup comme vous le souhaitez. Il est également disponible en téléchargement ici:

Étape 2: Installer la sauvegarde Rdiff

Installez rdiff-backup[root@HOST scripts]# yum install rdiff-backup

Étape 3: Identifiez les répertoires que vous souhaitez sauvegarder

Vous pouvez sauvegarder l'ensemble du système, mais cela peut être excessif, je souhaite sauvegarder mon répertoire /etc/ pour toutes les modifications que j'ai pu apporter à named, sendmail, network, etc., /data et mes répertoires personnels.

Étape 4: Automatiser

Il est clair que vous ne voulez pas le faire à la main. Nous allons écrire un script. Première chose dans le script, nous allons vérifier si le lecteur USB est monté, et quitter si ce n'est pas le cas. #!/bin/bash#Script pour sauvegarder sur clé usbBACKUPBASE="/backups"#vérifier si la cible de sauvegarde est montée.if `df -h | grep $BACKUPBASE >/dev/null ` then echo "Starting $0 `date`" else echo "ERREUR: $BACKUPBASE non monté" echo "$0 exiting `date` " exit 1fi

Étape 5: Écrire une fonction

Ensuite, nous écrirons une fonction pour effectuer réellement la sauvegarde. function backup { DEST=$1$2 SOURCE=$2 echo "Src: $SOURCE" if [-d $DEST] then echo "Dest: $DEST" else mkdir -p $DEST echo "Dest: $DEST -created" OPTS=" --force" fi #Effectuer la sauvegarde rdiff-backup -v2 --exclude-special-files $OPTS $SOURCE $DEST #Nettoyer les fichiers de version de plus de 4 semaines rdiff-backup -v2 --remove-older-than 4W --force $ DEST #Imprimer un rapport de ce que nous avons sauvegardé et nettoyé rdiff-backup --list-changed-since 0D23h00m $DEST}

Étape 6: Dites au script quels répertoires sauvegarder

backup $BACKUPBASE /databackup $BACKUPBASE /etcbackup $BACKUPBASE /usr/localbackup $BACKUPBASE /home

Étape 7: le tout ensemble maintenant

#!/bin/bash#Script pour sauvegarder sur le lecteur usbBACKUPBASE="/backups"#Vérifiez si le lecteur de sauvegarde est monté. si `df -h | grep $BACKUPBASE >/dev/null `then echo "Starting $0 `date`" else echo "ERREUR: $BACKUPBASE non monté" echo "$0 exiting `date` " exit 1fifunction backup { DEST=$1$2 SOURCE=$2 echo "Src: $SOURCE" if [-d $DEST] then echo "Dest: $DEST" else mkdir -p $DEST echo "Dest: $DEST -created" OPTS="--force" fi #Effectuer la sauvegarde rdiff-backup -v2 --exclude-special-files $OPTS $SOURCE $DEST #Nettoyer les fichiers de version de plus de 4 semaines rdiff-backup -v2 --remove-older-than 4W --force $DEST #Imprimer un rapport de ce que nous avons sauvegardé et nettoyé rdiff-backup --list-changed-since 0D23h00m $DEST}backup $BACKUPBASE /databackup $BACKUPBASE /etcbackup $BACKUPBASE /usr/localbackup $BACKUPBASE /home

Étape 8: ajouter à Cron

[scripts root@HOST]# crontab -e10 1 * * * /usr/local/scripts/backup-rdiff.sh > /var/log/backup.log 2>&1

Étape 9: Restaurer

Pour restaurer la version la plus récente, vous pouvez simplement copier le fichier hors du répertoire de sauvegarde. Si vous voulez une version d'il y a 2 jours:rdiff-backup -r 2D /backup/etc/named.conf /etc/named.confSimple et très efficace.