Son Wiki est truffé d'autres articles intéressants.
BorgBackup est un logiciel de sauvegarde. Cette page est un mémo rapide des principales commandes.
Avantages de Borg:
Borg est présent dans la plupart des dépôts des distributions. Sous Debian/Ubuntu/LinuxMint:
sudo apt install borgbackup
Mais Borg étant un simple exécutable sans dépendances lourdes, 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 curl -L https://github.com/borgbackup/borg/releases/latest/download/borg-linux-glibc231 -o /usr/local/bin/borg sudo chmod 755 /usr/local/bin/borg
/repo
borg init --encryption=repokey-blake2 /repo
borg init --encryption=none /repo
borg create /repo::{now} /source
-v --progress
borg create /repo::{now} /source1 /source2 /source3
--exclude
. Vous pouvez lister les dossiers ou fichiers à exclure. Exemple: --exclude={'dossierA/','dossierB/dossierB2/','dossierC/','*.vdi'}
--exclude-caches
: Borg ignorera alors tout répertoire (et ses sous-répertoires) s'il contient un fichier nommé CACHEDIR.TAG
et contenant exactement le texte Signature: 8a477f597d28d172789f06886806bc55
. Très pratique: Copiez ce fichier dans tout répertoire que vous voulez exclure du backup sans avoir à toucher à votre script de backup.{now}
permet d'horodater automatiquement les backups, mais vous pouvez remplacer par le texte de votre choix (sans les accolades).nommachine-{now}
), ce qui permet par la suite de purger sélectivement les backups ( avec --prefix
).--prefix
sera remplacée par --glob-archives
. Exemple: Au lieu d'écrire --prefix=nestor
il faudra écrire --glob-archives='nestor*
'--compression lzma
ou intermédiaire: --compression zlib
. Mais je vous recommande --compression zstd
: Il est presque aussi rapide que lz4 et il compresse mieux que zlib.--list --filter=AM
pour voir les fichiers que borg considère comme potentiellement ajoutés(A)/modifiés(M). Ce sont concrètement les fichiers dont borg va aller lire le contenu pour voir s'il faut l'ajouter au backup.
--files-cache=ctime,size
. Par défaut borg utilise ctime,size,inode
mais dans le cas d'un point de montage temporaire les inodes peuvent ne pas être constants, ce qui oblige borg à aller relire le contenu des fichiers pour rien.
borg list /repo
.checkpoint
sont des sauvegarde intermédiaires, par exemple lorsque vous interrompez le backup avec CTRL+C. Ces archives seront automatiquement supprimées lors d'un prochain prune
.borg list /repo::archive
| less
pour naviguer dans les résultats (touche B/ESPACE)borg check -v --progress /repo
mkdir archive borg mount /repo archive
ls
risque de prendre plusieurs minutes. C'est tout à fait normal. Ne soyez pas surpris.-o ignore_permissions
.borg umount archive
borg extract /repo::archive
cd
avant d'utiliser extract
.--progress
pour voir la progression si vous extrayez beaucoup de fichiers.--list
pour voir la liste des fichiers extraits.--dry-run
permet de voir ce qui va être extrait, mais sans réaliser l'extraction elle-même.borg extract /repo::archive chemin/à/extraire/
borg prune -v --list --stats --keep-daily=7 --keep-weekly=4 --keep-monthly=6 /repo
--keep-last=5
--prefix=nommachine
borg delete /repo::2017-12-11T12:25:38
borg compact --progress --cleanup-commits /repo
--cleanup-commits
permet de supprimer les petits fichiers de 17 octets laissé par les anciennes version de Borg (<1.2.0). Cette option n'a besoin d'être utilisée qu'une seule fois pour “nettoyer” le repo.--compression zstd,7
. La compression lzma est plus forte, mais elle ralentira votre sauvegarde./repo::2017-12-11T12:25:38
désigne l'archive 2017-12-11T12:25:38
dans le repo /repo
.--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. (Vous ne perdrez pas de place car borg détectera qu'il a déjà les données, mais il perdra du temps à relire le contenu des fichiers.)~/.config/borg/security
. Si vous êtes dans le second cas, pensez à bien sauvegarder ce répertoire ailleurs, car perdre les clés contenues dans ce répertoire équivaut à perdre votre repo.
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 ------------------------------------------------------------------------------
Les logiciels de backup peuvent posséder plusieurs de ces 4 propriétés: compression, incrémental, différentiel et dédupliqué.
Si j'aime autant BorgBackup, c'est qu'il possède justement ces 4 propriétés. En particulier, la dé-duplication vous permet de déplacer vos fichiers ou renommer les répertoires sans risquer de faire enfler inutilement les sauvegardes. Dans le cas de sauvegardes multi-utilisateurs ou multi-machines, le gain est encore plus important.