Btrbk: Difference between revisions

From NixOS Wiki
imported>Onny
Add note lz4 must be installed on remote host
imported>Onny
mNo edit summary
Line 23: Line 23:
</syntaxhighlight>
</syntaxhighlight>


Note that for transport stream compression using <code>lz4</code>, the package must also be installed on the target host.
Note that for transport stream compression using <code>lz4</code> to work, the package must also be installed on the target host.
== Usage ==
== Usage ==



Revision as of 03:01, 5 February 2023

Btrbk, a tool for creating snapshots and remote backups of btrfs subvolumes.

Configuration

Following example configuration will create a weekly incremental backup of a local Btrfs subvolume called nixos and sends it compressed to a remote host myhost via ssh using provided authentication credentials.

services.btrbk = {
  extraPackages = [ pkgs.lz4 ];
  instances.remote = {
    onCalendar = "weekly";
    settings = {
      ssh_identity = "/etc/btrbk_key";
      ssh_user = "btrbk";
      stream_compress = "lz4";
      volume."ssh://myhost/mnt" = {
        target = "/mnt";
        subvolume = "nixos";
      };
    };
  };
};

Note that for transport stream compression using lz4 to work, the package must also be installed on the target host.

Usage

Manually dry running and testing a btrbk configuration

btrbk -c /etc/btrbk/remote.conf --dry-run --verbose run

The filename remote.conf references the instance name choosen in the example configuration above.