Commit Graph

14 Commits

Author SHA1 Message Date
Kevin McCormick
3bb83e8029 ssh mode: stage snapshots on ssh server
Turn backup-zfs into a two-step process:
1. Send snapshots to a server over SSH
2. Receive those snapshots over SSH

Supports a disconnected backup environment where the backup storage host
and the system being backed up don't have to be online at the same time.

Use case: Send snapshots from my home server to my work server while I'm
asleep, then read them over the LAN from my work server to my external
drive while I'm at work.
2017-03-07 15:24:22 -08:00
Kevin McCormick
6d906ad640 When verbose, make zfs send/recv verbose as well 2016-10-10 09:56:22 -07:00
Kevin McCormick
cf353fafd4 Allow matching any snapshot between src & dest
Previously we looked for the specific tagged snapshot, but that doesn't
actually work properly. Now simply find the most recent snapshot on dest
and compare to src. It must exist on src.
2016-09-16 16:10:33 -07:00
Kevin McCormick
0850e82df3 exit on failure of critical zfs commands
Execution should not continue upon failure of certain zfs commands. In
particular, cleanup/rotation of the oldest snapshots will no longer
occur upon a failure to send/receive.
2016-09-12 11:39:29 -07:00
Kevin McCormick
12f7666a2f fail early if destination fs doesn't exist
zfs receive will fail, but the source snapshot has already been created,
and the rotation/cleanup of old snapshots will be triggered
2016-09-12 11:28:48 -07:00
Kevin McCormick
48f905f0e2 Fix README statement about destination
Using zfs recv -e, not -d
2016-08-04 16:33:36 -07:00
Kevin McCormick
4e065b7433 Write README 2016-08-04 16:30:45 -07:00
Kevin McCormick
481212e5e6 Improve usage statement 2016-08-04 16:29:28 -07:00
Kevin McCormick
f2b40a2ce8 save only last component of src fs in dest
Change zfs receive command to use -e (was -d).

Allow greater control of dest placement. srcpool/a/really/long/path
should not force me to deal with destpool/backupdest/a/really/long/path.
2016-08-04 16:26:07 -07:00
Kevin McCormick
473e51d89c split snapshot/syslog "tag" to independent values 2016-08-04 16:24:08 -07:00
Kevin McCormick
2eb6a5644e change dateformat to more generic date options
Allow switching to UTC or any other full control of date(1)
2016-08-04 16:23:02 -07:00
Kevin McCormick
c7dc56255e add quiet mode 2016-08-04 15:02:33 -07:00
Kevin McCormick
c6a82a7ccd Import scripts
* supports either local or remote usage
* always uses sudo
* getopts for a few settings
* keeps its own snapshots for send/recv purposes, independent of others
2016-08-04 15:01:54 -07:00
Kevin McCormick
26c78dff3e Initial commit 2016-08-04 14:59:40 -07:00