Outils pour utilisateurs

Outils du site


borgbackup

BorgBackup

BorgBackup est un logiciel de sauvegarde. Cette page est un mémo rapide des principales commandes.

Avantages de Borg:

  • Sauvegardes incrémentales (il historise les anciennes versions des fichiers)
  • Compression (lz4 extrêmement rapide par défaut, mais peu aussi faire gzip ou lzma)
  • Dé-duplication (les fichiers identiques ne seront pas sauvegardés en double)
  • Chiffrement (optionnel)
  • Sauvegardes vers un répertoire local ou ssh.
  • Les backups peuvent être interrompus et repris.
  • Les backups sont accessibles en FUSE (sous forme de simples répertoires)

Vocabulaire

  • repo : Un “repo” borg est un répertoire dans lequel borg va stocker ses sauvegardes.
  • archive : Correspond à une sauvegarde. Un repo borg contient une ou plusieures “archives”.

Installation

Borg est présent dans la plupart des dépôts des distributions. Sous Debian/Ubuntu/LinuxMint:

sudo apt install borgbackup

Mais vous pouvez aussi télécharger juste l'exécutable (voir cette page) et l'installer à la main.

Exemple pour un Linux 64 bits:

sudo wget https://github.com/borgbackup/borg/releases/download/1.1.3/borg-linux64
sudo cp borg-linux64 /usr/local/bin/borg
chmod 755 /usr/local/bin/borg

Utilisation

  • En supposant que vous voulez faire vos sauvegardes dans le répertoire /repo
  • Initialiser le repo Borg (à faire une seule fois):
    borg init /repo
    • Par défaut, c'est chiffré avec mot de passe. Pour faire sans chiffrement, faire:
      borg init --encryption=none /repo
    • Les “repos” peuvent être locaux ou distants.
  • Faire un backup:
    borg create /repo::{now} /source
    • Pour afficher plus d'informations, ajouter -v --stats --progress
    • {now} permet d'horodater automatiquement les backups, mais vous pouvez remplacer par le texte de votre choix (sans les accolades).
  • Lister les backups:
    borg list /repo
  • Vérifier l'intégrité des backups:
    borg check -v /repo
  • Accéder aux backups:
    mkdir archive
    borg mount /repo archive
    • Chaque backup est alors accessible comme un sous-répertoire dans le répertoire archive:
      • Note: Si vous avez beaucoup de fichiers, quand vous allez entrer dans le sous-répertoire d'un backup précis, le premier ls risque de prendre plusieurs minutes. C'est tout à fait normal. Ne soyez pas surpris.
    • Puis démonter par:
      borg umount archive
  • Purger 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.
      borg prune -v --list --keep-daily=7 --keep-weekly=4 --keep-monthly=6 /repo

Notes

  • Bien entendu, le premier backup sera long (il va compresser tous les fichiers). Les backups suivants seront beaucoup plus rapides.
  • La compression par défaut est lz4 qui est extrêmement rapide (capable de compresser 500 Mo/seconde sur un processeur moyen).
  • Un backup précis est nommée par repo::archive.
    • Exemple: /repo::2017-12-11T12:25:38 désigne l'archive 2017-12-11T12:25:38 dans le repo /repo.
  • Borg est bon dans les cas suivants:
    • backup fichiers locaux ⇒ repo local
    • backup fichiers locaux ⇒ repo distant
  • Borg est moins bon pour:
    • backup fichiers distant ⇒ repo local.
    • Dans ce cas, vous devrez utiliser sshfs (ou autre) pour aller chercher les fichiers, et les performances seront nettement moins bonnes.
    • Si vous allez chercher des fichiers distants par sshfs, je vous recommande d'utiliser l'option --files-cache=ctime,size (ou --ignore-inode sur Borg<1.1) car les inodes d'un montage sshfs ne sont pas constants, et vous risquez de re-sauvegarder des fichiers qui n'ont pas été modifiés.

Stats

Quand vous avez fini un backup (avec --stats), vous aurez un rapport sur votre sauvegarde:

------------------------------------------------------------------------------
                       Original size      Compressed size    Deduplicated size
This archive:                4.51 GB              2.77 GB              1.06 MB
All archives:               13.53 GB              8.32 GB              1.87 GB

                       Unique chunks         Total chunks
Chunk index:                   70292               567669
------------------------------------------------------------------------------
  • This archive correspond à la sauvegarde que vous venez de faire.
    • Original size : Taille totale des fichiers dans ce backup.
    • Compressed size : Taille de ces fichiers une fois compressés.
    • Deduplicated size : Comme certains de ces fichiers étaient déjà présents à l'identique dans des sauvegardes antérieures, ils n'ont pas été re-sauvegardés. La taille affichée ici correspond à la quantité de données réellement nouvelles qui ont été ajoutées au repo borg (ici: 1,06 Mo).
  • All archives : correspond à la taille totale de données stockées dans les différents backups.
    • Deduplicated size : C'est la taille totale de votre repo borg, après compression et déduplication (repérage des fichiers identiques entre sauvegardes).

Liens

borgbackup.txt · Dernière modification: 2017/12/14 10:28 par sebsauvage