Jump to content
From ArchWiki
État de la traduction: Cet article est la version francophone de Borg backup. Date de la dernière traduction: 2023-08-27. Vous pouvez aider à synchroniser la traduction s'il y a eu des changements dans la version anglaise.

Related articles

- System backup
- Synchronization and backup programs

BorgBackup (abrégé : Borg) est un programme de sauvegarde par déduplication. En option, il prend en charge la compression et le chiffrement authentifié.

L'objectif principal de Borg est de fournir un moyen efficace et sûr de sauvegarder des données. La technique de déduplication des données utilisée rend Borg approprié pour les sauvegardes quotidiennes puisque seules les modifications sont stockées. La technique de chiffrement authentifié permet d'effectuer des sauvegardes vers des cibles qui ne sont pas entièrement fiables.

## Installation

Installez le paquet borg. La version de développement est disponible avec borg-gitAUR.

Pour des fonctionnalités supplémentaires, installez les paquets suivants :

python-llfuse
  pour le montage des archives
openssh
  pour se connecter à des hôtes distants
borgmatic
  un ensemble de scripts enveloppants pour contrôler Borg via des fichiers YAML au lieu de commandes de terminal.
pika-backupAUR
  une interface graphique basée sur libadwaia/GTK4 pour Borg
vortaAUR
  une interface graphique basée sur Qt pour Borg
borgtui-gitAUR
  une interface en console et en ligne de commande pour des sauvegardes planifiées

## Documentation

La documentation officielle propose un guide de démarrage. En supplément des exemples fournis dans ces liens, consultez également borg(1) et `apropos borg`.

Une aide est aussi disponible par les commandes, soit générale :

    $ borg help

soit circonstanciée :

    $ borg help command

## Utilisation

Le concept principal sur lequel se fonde Borg est la dé-duplication : plutôt qu'accumuler les fichiers comme dans l'archivage classique par TAR, la dé-duplication vérifie par hashage l'identité des fichiers, quels que soient leurs noms, pour ne les copier qu'une fois. Elle occupe ainsi, même sans compression, une place minimale pour des sauvegardes incrémentales répétées.

La compression des fichiers est facultative et prend en charge plusieurs algorithmes (zstd est recommandé) et intensités.

Les archives créées avec Borg peuvent être montées comme des systèmes de fichiers avec FUSE pour parcourir et restaurer des fichiers individuels.

Les archives peuvent être créées localement, ou sur des systèmes distants en utilisant SSHFS, NFS, Samba, ou des solutions de montage similaires. Le transfert via SSH est pris en charge, mais l'hôte distant doit avoir Borg disponible.

### Création de dépôts

Les dépôts Borg peuvent être chiffrés ou rendus inviolables. Pour plus d'informations sur les modes et les options, consultez la documentation officielle sur la configuration d'un dépôt.

Pour créer un dépôt Borg sans chiffrement ou authentification :

    $ borg init --encryption=none /path/to/repo

### Création d'archives

Des instances d'archives individuelles peuvent être créées dans le dépôt avec la commande `borg create`. Un nom unique doit être attribué à chaque archive. Borg inclut une liste de noms génériques pour faciliter l'ajout de chaînes telles que des dates, des heures, des noms d'utilisateur et des noms d'hôte.

Pour créer une archive du répertoire `archivable-dir` avec le nom d'hôte de la machine source et la date du jour :

    $ borg create /path/to/repo::{hostname}-{now:%Y-%m-%d} archivable-dir

Borg prend en charge de nombreuses options d'inclusion et d'exclusion. Pour exclure les fichiers `.pyc` de l'archive :

    $ borg create ... --exclude '*.pyc' /path/to/repo::archive-name

Plus d'informations peuvent être trouvées sur la page de documentation de `borg create`.

### Élagage des archives

La suppression des anciennes archives ne se fait pas automatiquement, mais peut être effectuée manuellement avec la commande `borg prune`. Le nombre d'archives à conserver doit être spécifié, et peut être limité par l'heure de création de l'archive.

Pour conserver uniquement les 7 dernières archives quotidiennes, les quatre dernières archives hebdomadaires et les trois dernières archives mensuelles :

    $ borg prune --keep-daily=7 --keep-weekly=4 --keep-monthly=3 /path/to/repo

Pour ne conserver que les 10 dernières archives, quelle que soit leur date de création :

    $ borg prune --keep-last=10 /path/to/repo

Pour conserver toutes les archives des 30 derniers jours, quel que soit le nombre d'archives qu'elles contiennent :

    $ borg prune --keep-within=30d /path/to/repo

Note: Cela supprimera les archives mais ne libérera pas réellement d'espace dans le dépôt. Pour libérer de l'espace, utilisez la commande `borg compact` sur le dépôt.
Attention: L'effacement est effectué sur toutes les archives du dépôt, à moins d'être limité par les paramètres `--prefix` ou `--glob-archives`.

Plus d'informations sont disponibles sur la page de documentation de `borg prune`.

### Restauration à partir d'une archive

Pour restaurer à partir d'une archive :

    $ borg extract /path/to/repo::archive-name' path/to/restore

Note: Borg extrait le chemin complet relatif au répertoire de travail actuel. Cela signifie que la restauration du chemin `/home/archuser/path/to/restore` à partir d'une archive se trouvant dans le répertoire personnel de l'utilisateur de l'archive aura pour résultat que le chemin complet restauré sera `/home/archuser/home/archuser/path/to/restore`.

Alternativement, un dép peut être monté pour une restauration interactive :

    $ borg mount /path/to/repo::archive-name::::: :.

## Trucs et astuces

### Exclusions des caches

La taille des archives peut être réduite en excluant les répertoires de cache. Les répertoires qui adhèrent à la Cache Directory Archiving Standard peuvent être automatiquement exclus en ajoutant `--exclude-caches` à la commande de création d'archives :

    $ borg create ... --exclude-caches /path/to/repo::nom-de-l'archive

### Lister les fichiers affectés

De nombreuses opérations dans Borg supportent l'indicateur `--list` pour lister les fichiers ou archives affectés. S'il est associé à `--dry-run`, l'utilisateur peut vérifier les effets d'une commande donnée.

## Voir aussi

- Documentation officielle (en)

Categories:

- System administration (Français)
- Backup (Français)