Outils pour utilisateurs

Outils du site


rdiff-backup

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
rdiff-backup [2017/12/11 08:29]
sebsauvage supprimée
rdiff-backup [2017/12/11 09:29] (Version actuelle)
sebsauvage créée
Ligne 1: Ligne 1:
-====== rdiff-backup ====== +~~REDIRECT>​borgbackup~~
- +
-<​note>​Je suis finalement passé à BorgBackup, plus efficace (compression,​ déduplication). Je laisse tout de même la</​note>​ +
- +
-**[[http://​www.nongnu.org/​rdiff-backup/​|rdiff-backup]]** est un logiciel de sauvegarde. Dans sa fonction de base, il fait la même chose que //rsync//: Recopier un répertoire source vers une destination,​ à l'​identique. Quand on le relance, il transfère uniquement les fichiers modifiés (comme rsync). +
- +
-Mais il fait un peu plus: Il conserve les versions précédentes des fichiers en faisant un diff inverse (d'où le "​rdiff"​) compressé. +
- +
-**Avantages**:​ +
- +
-  * Le répertoire de destination contient une copie exacte de la dernière version du répertoire source (comme rsync). +
-  * On peut accéder aux versions précédentes des fichiers, ou aux fichiers effacés. +
-  * Avec les rdiff, ces anciennes versions occupent le moins de place possible. +
- +
-Je m'en sert pour faire des backups: +
-  * de mon site web vers ma machine locale (à travers ssh). +
-  * de ma machine locale vers un disque externe (par USB). +
-===== Packages à installer ===== +
- +
-  * **rdiff-backup** : l'​outils lui-même. +
-  * **rdiff-backup-fs** : système de fichiers en espace utilisateur qui permet de voir les anciennes versions des répertoires. +
- +
-===== Mémo des commandes principales ===== +
- +
-Si on suppose qu'on veut sauvegarder ''/​source''​ vers ''/​destination'':​ +
-  * **Faire un backup**:<​code>​rdiff-backup /source /​destination</​code>​ +
-    * Ajoutez l'​option ''​-v5''​ pour voir la progression fichier par fichier. +
-    * À relancer autant de fois que vous le voulez: +
-      * Le premier lancement fera une copie intégrale des données. +
-      * Les lancements suivants ne transfèreront que les données modifiées. +
- +
-  * **Lister les backups**:<​code>​rdiff-backup -l /​destination</​code>​ +
-  * **Lister la taille des backups**:<​code>​rdiff-backup --list-increment-sizes /​destination</​code>​ +
-  * **Retirer tous les backups plus vieux de 7 jours**:<​code>​rdiff-backup --remove-older-than 7D --force /​destination</​code>​ +
- +
-===== Utilisation par ssh ===== +
- +
-  * Syntaxe générale:<​code>​rdiff-backup utilisateur@serveurdistant::​répertoiredistant répertoirelocal</​code>​ +
-    * Bien sûr, il faut également que rdiff-backup soit installé sur le serveur distant. +
- +
-  * Pour utiliser un serveur ssh distant sur un port non-standard,​ créer le fichier ''​~/​.ssh/​config'':<​code>Host toto.com +
-Port 55555</​code>​ +
-  * Exemple: Backup distant vers local (avec verbosité suffisante pour afficher le fichier en cours de traitement):<​code bash>#​!/​bin/​bash +
-# Ces trois première lignes servent à se placer dans le répertoire du script, quand je le lance par le gestionnaire de fichiers. +
-SCRIPT=$(readlink -f "​$0"​) +
-DIR=$(dirname "​$SCRIPT"​) +
-cd "​$DIR"​ +
-rdiff-backup -v5 monutilisateur@sebsauvage.net::/​home/​www/​wiki ./​wiki</​code>​ +
-  * Note: Mon utilisation de rdiff-backup étant ponctuelle et à la demande, je ne me suis pas intéressé l'​utilisation des certificats ssh pour la connexion sans mot de passe. +
- +
-===== Consulter les backups ===== +
- +
-On peut utiliser ''​rdiff-backup --restore-as-of 3D ...''​ pour restaurer un fichier ou un répertoire tel qu'il était il y a 3 jours, mais il y a une solution plus simple: Utiliser **rdiff-backup-fs**. +
- +
-C'est très simple:<​code>​mkdir archive +
-rdiff-backup-fs archive /​destination</​code>​ +
- +
-Vos sauvegardes située dans ''/​destination''​ seront visibles dans le répertoire ''​archive'':​ +
- +
-<​code>​2017-12-07T08:​07:​57 +
-2017-12-07T08:​37:​19 +
-2017-12-07T08:​55:​39 +
-2017-12-07T09:​02:​04 +
-2017-12-07T13:​54:​05</​code>​ +
- +
-Chaque répertoire correspond à une date de sauvegarde. Ces répertoires sont des fenêtres sur le passé: Vous pouvez voir les répertoires et fichiers tels qu'ils étaient à ces différentes dates. Super pratique ! +
- +
- +
-Pour démonter ce répertoire:<​code>​fusermount -u archive</​code>​ +
- +
-On peut difficilement faire plus simple. +
-===== Interfaces graphiques ===== +
- +
-Différentes interfaces graphique pour rdiff-backup. Certains de ces outils sont conçus pour l'​utilisateur final, d'​autres pour l'​admin (ou les deux). Certains de ces outils ne sont pas conçus pour faire des backups distants. +
- +
-  * **JbackPack** (http://​www.nongnu.org/​jbackpack/​) : Backups locaux uniquement (''​sudo apt install jbackpack''​) +
-  * **SLBackup** : Backups locaux uniquement (''​sudo apt install slbackup''​). +
-  * **RdiffWeb** (http://​www.patrikdufresne.com/​fr/​rdiffweb/​) +
-  * **Rdiff-backup-web** (https://​github.com/​dalethestirling/​rdiff-backup-web) : Ne permet pas de faire des sauvegarde, mais uniquement consulter les anciens fichiers. +
- +
- +
-===== Liens à explorer ===== +
-  * https://​doc.ubuntu-fr.org/​rdiff-backup +
-  * https://​www.howtoforge.com/​linux_rdiff_backup +
-  * http://​denisrosenkranz.com/​tuto-faire-vos-sauvegardes-rdiff-backup/​ +
- +
-===== Et pourquoi pas... ? ===== +
- +
-Et pourquoi pas //​Timeshift//,​ //​rsnapshot//,​ //​duplicity//,​ //[outils de backup votre choix]// ? +
- +
-  * **Parceque rdiff-backup est plus économe en espace disque.** Beaucoup d'​outils de backup sauvegardent la totalité d'un fichier quand ce dernier est modifié. rdiff-backup ne sauvegarde que la partie modifiée du fichier. +
-  * **Parce que le répertoire de backup est une simple copie du répertoire source.** Je peux relire mon backup sans le logiciel de backup lui-même. +
- +
-Suite à des suggestions,​ j'irai aussi jeter un coup d’œil à [[https://​www.borgbackup.org|borg-backup]] et [[https://​github.com/​bup/​bup|bup]] qui ont l'air d'​être également très efficaces, et - tout comme rdiff-backup - les backups sont montables en fuse (système de fichiers), ce qui est très pratique. +
- +
- +
----- +
- +
-====== BorgBackup ====== +
- +
-Je suis finalement passé à BorgBackup +
- +
-Avantages:​ +
-  * Il fait également des sauvegarde incrémentales. +
-  * Compression (LZ4 très rapide par défaut, mais peu aussi faire gzip ou lzma) +
-  * Chiffrement (optionnel) +
-  * Dé-duplication (ce que rdiff-backup ne fait pas entre fichiers) +
-  * Les backups peuvent être interrompus et repris. +
-  * Tout comme rdiff-backup,​ les backups sont accessible en FUSE. +
- +
-  * **Créer un repo Borg**:<​code>​borg init /​destination</​code>​ +
-    * Par défaut, c'est chiffré avec mot de passe. Pour faire sans chiffrement,​ faire:<​code>​borg init --encryption=none /​destination</​code>​ +
-  * **Faire un backup**:<​code>​borg create /​destination::​{now} /​source</​code>​ +
-  * **Lister les backups**:<​code>​borg list /​destination</​code>​ +
-  * **Vérifier l'​intégrité des backups**:<​code>​borg check /​destination</​code>​ +
-  * **Accéder aux backups**: <​code>​mkdir archive +
-borg mount /​destination archive</​code>​ +
-    * Chaque backup est accessible comme un répertoire. +
-      * **Note**: Si vous avez beaucoup de fichiers, quand vous allez entrer dans le répertoire d'un backup précis, un simple ''​ls''​ risque de prendre plusieurs minutes. C'est tout à fait normal. Ne soyez pas surpris. +
-    * Puis démonter par:<​code>​borg umount archive</​code>​ +
- +
-  * **Supprimer les anciens backups**:​ +
-    * On va garder 1 backup par jour sur les 7 derniers jours, et 1 backup par semaine sur les 4 dernières semaines et 1 backup par mois sur les 6 derniers mois.<​code>​borg prune -v --list --keep-daily=7 --keep-weekly=4 --keep-monthly=6 /​destination</​code>​ +
- +
- +
-  * **Exemples**:​ +
-    * Sauvegarder local vers local (je sauvegarde vers une partition VeraCrypt stockée sur un disque dur externe):<​code>​nice -n 19 ionice -c 3 borg create -v --stats --progress --exclude-from="/​media/​veracrypt2/​excludes-backup-asus.txt"​ /​media/​veracrypt2/​backupasus-borg::​{now} /</​code>​ +
-    * Sauvegarder un site distant vers local: +
-      * Comme borg est trop lent à récupérer les fichiers distants, je fais d'​abord un rsync vers un répertoire local (très rapide), puis un borg du répertoire local pour garder l'​historique.<​code>​rsync --progress --delete -az user@sebsauvage.net:/​home/​www/​ /​backup/​site/​ +
-borg create -v --stats --ignore-inode --progress /​backup/​site-borg/::​{now} /​backup/​site/</​code>​ +
- +
- +
-===== Liens ===== +
-  * https://​www.blog-libre.org/​2016/​08/​21/​borgbackup-borg-pour-les-intimes/​ +
-  * https://​connect.ed-diamond.com/​Linux-Pratique/​LP-098/​Ne-procrastinez-plus-vos-sauvegardes-grace-a-Borg3 +
rdiff-backup.txt · Dernière modification: 2017/12/11 09:29 par sebsauvage