backup script for btrfs
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
emily fd1216f961
added disclaimer
5 months ago
LICENSE add license 1 year ago added disclaimer 5 months ago
btrbk added disclaimer 5 months ago
btrbk.conf minor changes 1 year ago
btrbk.service typo 1 year ago
btrbk.timer service modified 1 year ago fixed spacing 1 year ago

btrbk - btrfs backup and restore script

This is horrible don't use this

This is a bash script I made to create simple, incremental, PGP encrypted backups of your btrfs subvolumes.
Rclone is used to support a wide variety of Storage Backends. Encryption is done by the Standard gpg commandline tool.


  • Create incremental Backups of btrfs filesystem
  • Keep local btrfs snapshots
  • Customizable retention of Backups
  • PGP encryption
  • Rclone used for Storage Backend
  • Full System restore from Live USB


  • Snapshots can't be restored on the fly from Remote Storage
  • PGP encryption is not optional
  • No implementation of possible Features when Remote Storage is also a btrfs
  • Backup retention settings have limited options of freedom
  • Might interfere with digint/btrbk
  • Testing is needed to verify reliabilty
  • I don't recommend anyone to use this


To install the tool just clone this Repository and run the script.

git clone
cd btrbk


Configuration is done in /etc/btrbk.conf

Documentaion for all variables you have to set is availabe in that file.


Get help with btrbk --help

Usage: btrbk [options]
A script to automatically or manually backup your btrfs subvolumes.
  -b, --backup                runs backup manually if not already run today
  -f, --force                 force backup to override today's backup
      --date=YYYY-MM-DD       define a date from which to restore when using -r
      --restore=VOLNAME       restores the latest snapshot of a given subvolume
      --full-restore=PATH     this walks you through an complete config restore
                              and will restore the whole system to a given directory
  -h, --help                  display this help and exit


BSD 2-Clause License