Introduction
Introduction Statistics Contact Development Disclaimer Help
### BORG: a powerful, deduplicating backup system ###
Today I discovered a new backuping program called BORG (or "borgbackup"). So
far, I was using rdiff-backup - an incremental backuping tool that worked very
well for me during a few years. But BORG is better.
BORG's homepage: https://www.borgbackup.org/
=== WHY ? ====================================================================
The main difference between the two is that rdiff-backup is an incremental
backup, while BORG is a deduplicating backup. Basically this means that if I
rename a 1 GB file, rdiff-backup will have to pull it entirely again, while
BORG won't. Also, BORG supports archive encryption, while rdiff-backup does
not - this is an important factor for me, since I keep my backups on a host
that I do not trust that much any more.
=== INSTALLATION: ENTER THE PYTHON'S WORLD OF PAIN ===========================
The installation process is highly annoying, since the software is a python
thing. As with such "modern" stuff, installing anything requires sorting out
lots of dependencies, incompatible versions etc, even using the presumably
easy "pip3 install" way... At the end of the day, installation of this 10 MiB
program required pulling hundreds of MiB of dependencies (gcc, g++, and lots
of libraries). Well, life I guess.
Anyhow - once the installation process is done, the program works flawlessly.
=== QUICK START USAGE ========================================================
These are the commands I use for my needs now. For convenience, I start by
defining the following two env variables on the backup-sending host:
export BORG_PASSPHRASE='HERE_MY_ENCRYPTION_PASSPHRASE'
export BORG_REPO='ssh://[email protected]/srv/borg'
...and then:
# Initialize a BORG repository on remote server (one time only)
$ borg init --progress --encryption=repokey "$BORG_REPO"
# Compute, compress, encrypt and send a backup of /root and /srv
$ borg create --progress --verbose --compression=zlib \\
"$BORG_REPO"::'{hostname}-{now}' /root /srv
# See the list of backups available on remote host
$ borg list "$BORG_REPO"
# Remove backups, keeping only one per day and no more than 30
$ borg prune --list --stats --keep-daily=30 "$BORG_REPO"
# See some nice stats about on-disk data usage of the BORG backups
$ borg info "$BORG_REPO"
===================================================================== EOF ====
You are viewing proxied material from gopher.viste.fr. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.