ZnapZend is a ZFS centric backup tool. It relies on snapshot, send and receive todo its work. It has the built-in ability to to manage both local snapshots as well as remote copies by thining them out as time progresses.
The ZnapZend configuration is stored as properties in the ZFS filesystem itself.
There are two ways to get going with znapzend. The way of the real sysadmin (as described below) or you can take the simple way out and download our prebuilt release. It comes with all the perlmodules required for running znapzend with a copy of perl as old as 5.10.1:
wget https://github.com/oetiker/znapzend/releases/download/v0.11.2/znapzend-prebuilt-0.11.2.tar.gz
tar zxvf znapzend-prebuilt-0.11.2.tar.gz
cp -rp znapzend-prebuilt-0.11.2 /opt/znapzend-0.11.2
Read on in the Configuration Section.
On the other hand if you are the proud owner of a properly setup unix box with all the tools and trimmings for building stuff, follow these zimple inztructionz below to get a cusom made copy of znapzend.
wget https://github.com/oetiker/znapzend/releases/download/v0.11.2/znapzend-0.11.2.tar.gz
tar zxvf znapzend-0.11.2.tar.gz
cd znapzend-0.11.2
./configure --prefix=/opt/znapzend-0.11.2
if configure complains about missing perl modules, run
./setup/build-thirdparty.sh /opt/znapzend-0.11.2/thirdparty
to install the missing modules into the specified directry. This will NOT messup your local perl installation!
Now you can run configure again and then
make install
Use the znapzendzetup program to define your backup settings. For remote backup, znapzend uses ssh. Make sure to configure password free login for ssh to the backup target host.
The znapzend demon is responsible for doing the actual backups.
To see if your configuration is any good, run znapzend in noaction mode first.
/opt/znapzend-0.11.2/bin/znapzend --noaction --debug
If you don't want to wait for the scheduler to actually schedule work, you can also force immediate action by calling
/opt/znapzend-0.11.2/bin/znapzend --noaction --debug --runonce=<src_dataset>
then when you are happy with what you got, start it in daemon mode.
/opt/znapzend-0.11.2/bin/znapzend --daemonize
Best is to integrate znapzend into your system startup sequence, but you can also run it by hand.
For solaris/illumos OSes you can import make configure install a znapzend
service manifest by calling configure with the option
--enable-svcinstall=/var/svc/manifest/site
. Since the manifest
contains the absolute path the the znapzend install directory, it is not
contained in the prebuilt version. But you can get a copy from github and
roll your own.
svccfg validate /var/svc/manifest/site/znapzend.xml
svccfg import /var/svc/manifest/site/znapzend.xml
and then enable the service
svcadm enable oep/znapzend
If you want to know how much space your backups are using, try the znapzendztatz utility.
If you find a problem with znapzend, please open an Issue on GitHub.
If you like to get in touch, you can find Dominik and Tobi on the IRC-Channel #znapzend on irc.freenode.net
And if you have a contribution, please send a pull request.
Enjoy!
Dominik Hassler & Tobi Oetiker 2014-08-07