paapereira.xyz

System backups with BorgBackup and BorgBase

Since my last post on BorgBackup and BorgBase, I have subscribed to a 1 TB annual plan and have my daily and weekly /home backups running.

The next thing to setup is my system backups. For this (for now) I’m using a more weekly manually approach.

Installation

1sudo pacman -S borg

Setup

1sudo ssh-keygen -o -a 100 -t ed25519
1sudo cat /root/.ssh/id_ed25519.pub

Here you must choose a strong password.

1sudo borg init --encryption=repokey-blake2 XXXXX@XXXXX.repo.borgbase.com:repo

Backup

Every time you want to create a new backup just execute:

1sudo borg create --list --progress --info --log-json --json --filter=AM -C lz4 --exclude '/root/.ssh/' XXXXX@XXXXX.repo.borgbase.com:repo::desktop-system-{now:%Y-%m-%dT%H:%M:%S} /etc /var /root /opt

Checking your archives

You can list the archives or files you have and mount them to explore the backed up files.

1sudo borg list XXXXX@XXXXX.repo.borgbase.com:repo
1sudo borg list XXXXX@XXXXX.repo.borgbase.com:repo::desktop-system-2020-09-23T17:38:52
1mkdir /tmp/mount
2sudo borg mount XXXXX@XXXXX.repo.borgbase.com:repo::desktop-system-2020-09-23T17:38:52 /tmp/mount
3sudo ls /tmp/mount
4sudo ls -l /tmp/mount/etc/fstab
5sudo borg umount /tmp/mount

Cleaning your archives

It’s also a good idea to prune your repository to clean out older files.

1sudo borg prune -v --list --stats --keep-within=10d --keep-weekly=4 --keep-monthly=6 --keep-yearly=2 XXXXX@XXXXX.repo.borgbase.com:repo

#Linux #Arch Linux #BorgBackup #BorgBase