Skip to main content
btrfs-sxbackup
**************

Btrfs snapshot backup utility

* Push/pull support via SSH
* Housekeeping
* Email notifications
* Compression of transferred data
* Syslog logging

System dependencies
===================
Required
--------
The following packages have to be available on both source and destination

* btrfs-progs

The system executing btrfs-backup requires

* python3

Optional
--------
* ssh (for remote push/pull, not required for local operation)
* lzop (for compression support if desired)
* pv (provides progress indication if installed)
* sendmail (for email notifications if desired)

Installation
============
.. code ::

pip install btrfs-sxbackup

Setup
=====
* when using ssh, public/private key authentication should be set up

Usage examples
==============

Pull snapshot backups of **/** on remote host **myhost.org** to local subvolume **/backup/myhost**

.. code ::

btrfs-sxbackup ssh://root@myhost.org:/ /backup/myhost

Push snapshot backups of local subvolume **/** to remote subvolume **/backup/myhost** on host **mybackupserver.org**

.. code ::

btrfs-sxbackup / ssh://root@mybackupserver.org:/backup/myhost

Cron
----

Cronhob performing a local and remote pull backup job

.. code ::

# /etc/cron.d/btrfs-sxbackup
PATH="/usr/sbin:/usr/bin:/sbin:/bin"
30 2 * * * root btrfs-sxbackup / /mnt/backup/localsystem/ -sk 3 -dk "1d = 4/d, 1w = daily, 2m = none"
0 3 * * * root btrfs-sxbackup ssh://root@remotesystem/ /mnt/backup/remotesystem/ -sk 3 -dk "1d = 4/d, 1w = daily, 2m = none"

Synopsis and options
====================

.. code ::

usage: btrfs-sxbackup [-h] [-c] [-q] [-sk SOURCE_KEEP] [-dk DESTINATION_KEEP]
[-ss SOURCE_CONTAINER_SUBVOLUME] [-m [MAIL]]
[-li LOG_IDENT] [--version]
source_subvolume destination_container_subvolume

positional arguments:
source_subvolume Source subvolume to backup. Local path or SSH url.
destination_container_subvolume
Destination subvolume receiving snapshots. Local path
or SSH url.

optional arguments:
-h, --help show this help message and exit
-c, --compress Enables compression during transmission, requires lzop
to be installed on both source and destination
-q, --quiet Do not log to STDOUT
-sk SOURCE_KEEP, --source-keep SOURCE_KEEP
Expression defining which source snapshots to
keep/cleanup. Can be a static number (of backups) or
more complex expression like "1d=4/d,1w=daily,2m=none"
literally translating to: "1 day from now keep 4
backups a day, 1 week from now keep daily backups, 2
months from now keep none". Default is 10
-dk DESTINATION_KEEP, --destination-keep DESTINATION_KEEP
Expression defining which destination snapshots to
keep/cleanup. Can be a static number (of backups) or
more complex expression (see --source-keep arguemnt).
Default is 10
-ss SOURCE_CONTAINER_SUBVOLUME, --source-container-subvolume SOURCE_CONTAINER_SUBVOLUME
Override path to source snapshot container subvolume.
Both absolute and relative paths are possible. Default
is 'sxbackup', relative to source subvolume
-m [MAIL], --mail [MAIL]
Enables email notifications. If an email address is
given, it overrides the default email-recipient
setting in /etc/btrfs-sxbackup.conf
-li LOG_IDENT, --log-ident LOG_IDENT
Log ident used for syslog logging, defaults to script
name
--version show program's version number and exit

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

btrfs-sxbackup-0.4.0.tar.gz (12.5 kB view details)

Uploaded Source

File details

Details for the file btrfs-sxbackup-0.4.0.tar.gz.

File metadata

File hashes

Hashes for btrfs-sxbackup-0.4.0.tar.gz
Algorithm Hash digest
SHA256 73a29f3782031443934b37e3af236992458707f9f38a74bc28921552208bd929
MD5 954864fe619c7af453533acef2904033
BLAKE2b-256 e02972a6e77ee8c2160e3746c139adf8c3ee01f8b434ce22bb8cf6c7263264cc

See more details on using hashes here.

Release history Release notifications | RSS feed

0.6.11

1 file

0.6.10

1 file

0.6.9

1 file

0.6.8

1 file

0.6.7

1 file

0.6.6

1 file

0.6.5

1 file

0.6.4

1 file

0.6.3

1 file

0.6.2

1 file

0.6.1

1 file

0.6.0

1 file

0.5.9

1 file

0.5.8

1 file

0.5.7

1 file

0.5.6

1 file

0.5.5

1 file

0.5.4

1 file

0.5.3

1 file

0.5.2

1 file

0.5.1

1 file

0.5.0

1 file

0.4.5

1 file

0.4.4

1 file

0.4.3

1 file

0.4.2

1 file

0.4.1

1 file

This release

0.4.0 This release

1 file

0.3.6

1 file

0.3.5

1 file

0.3.4

1 file

0.3.3

1 file

0.3.2

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page