Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

ZFS autobackup

Tests Coverage Status Python Package CodeQL

Introduction

ZFS-autobackup tries to be the most reliable and easiest to use tool, while having all the features.

You can either use it as a backup tool, replication tool or snapshot tool.

You can select what to backup by setting a custom ZFS property. This makes it easy to add/remove specific datasets, or just backup your whole pool.

Other settings are just specified on the commandline: Simply setup and test your zfs-autobackup command and fix all the issues you might encounter. When you're done you can just copy/paste your command to a cron or script.

Since it's using ZFS commands, you can see what it's actually doing by specifying --debug. This also helps a lot if you run into some strange problem or errors. You can just copy-paste the command that fails and play around with it on the commandline. (something I missed in other tools)

An important feature that's missing from other tools is a reliable --test option: This allows you to see what zfs-autobackup will do and tune your parameters. It will do everything, except make changes to your system.

Features

  • Works across operating systems: Tested with Linux, FreeBSD/FreeNAS and SmartOS.
  • Low learning curve: no complex daemons or services, no additional software or networking needed.
  • Plays nicely with existing replication systems. (Like Proxmox HA)
  • Automatically selects filesystems to backup by looking at a simple ZFS property.
  • Creates consistent snapshots. (takes all snapshots at once, atomicly.)
  • Multiple backups modes:
    • Backup local data on the same server.
    • "push" local data to a backup-server via SSH.
    • "pull" remote data from a server via SSH and backup it locally.
    • "pull+push": Zero trust between source and target.
  • Can be scheduled via simple cronjob or run directly from commandline.
  • Also supports complex backup geometries.
  • ZFS encryption support: Can decrypt / encrypt or even re-encrypt datasets during transfer.
  • Supports sending with compression. (Using pigz, zstd etc)
  • IO buffering to speed up transfer.
  • Bandwidth rate limiting.
  • Multiple backups from and to the same datasets are no problem.
  • Resillient to errors.
  • Ability to manually 'finish' failed backups to see whats going on.
  • Easy to debug and has a test-mode. Actual unix commands are printed.
  • Uses progressive thinning for older snapshots.
  • Uses zfs-holds on important snapshots to prevent accidental deletion.
  • Automatic resuming of failed transfers.
  • Easy migration from other zfs backup systems to zfs-autobackup.
  • Gracefully handles datasets that no longer exist on source.
  • Complete and clean logging.
  • All code is regression tested against actual ZFS environments.
  • Easy installation:
    • Just install zfs-autobackup via pip.
    • Only needs to be installed on one side.
    • Written in python and uses zfs-commands, no special 3rd party dependency's or compiled libraries needed.
    • No annoying config files or properties.

Getting started

Please look at our wiki to Get started.

Or read the Full manual

Sponsor list

This project was sponsored by:

Metadata

Release files for zfs-autobackup 4.0rc2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zfs-autobackup 4.0rc2
File Size Uploaded
zfs_autobackup-4.0rc2.tar.gz 92.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for zfs-autobackup 4.0rc2
File Interpreter ABI Platform
zfs_autobackup-4.0rc2-py3-none-any.whl Python 3 none any Details

Total release size: 202.6 kB

Release files / zfs_autobackup-4.0rc2.tar.gz

Download URL zfs_autobackup-4.0rc2.tar.gz
Size 92.0 kB
Tags Source
SHA-256 checksum
How to use checksums
87d9abd0c1ed2cefe4e62a089c8929d1a53150b9ab228bfecf3986d92674a164
BLAKE2b-256 checksum
How to use checksums
0af520330026ca310b6b33b72354fabfb9db10ed6c1b7fd0b3b621038819cb90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / zfs_autobackup-4.0rc2-py3-none-any.whl

Download URL zfs_autobackup-4.0rc2-py3-none-any.whl
Size 110.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ce4c5de530123e0bf5ebaa23b45da84b85bb52e575f50ea8a1b67412cf099b95
BLAKE2b-256 checksum
How to use checksums
3f98aa13209664ef68764eee6e81b4e3a68b3b39542c5c1ffadc1314e1509892
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release history Release notifications | RSS feed

This release

4.0rc2 This release

2 release files

3.3

2 release files

3.2

2 release files

3.1.3

3 release files

3.1.2

3 release files

3.1.1

3 release files

3.1

3 release files

3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page