Back up to the start#
Sat May 12 22:12:04 2018
My backup server runs! Since last week I plugged in my actual USB
external drive and added a DHCP client, USB support, ext[234]fs and a
few more useful busybox apps - cp, chmod, chown, that kind of
thing. Now it's running and my home desktop is backing up to it four
times a day.
Because the Nix store is world-readable, I didn't want to put passwords in it - so instead I chuck them in files elsewhere and read them at script exection time.
To get duplicity running in NixOS I added this stuff to my configuration.nix
services.cron.systemCronJobs = let script = pkgs.writeScript "run-duplicity" ''
#!${pkgs.bash}/bin/bash
export PASSPHRASE=$(cat /var/lib/backupwrt/duplicity)
export RSYNC_PASSWORD=$(cat /var/lib/backupwrt/rsync)
${pkgs.duplicity}/bin/duplicity / --include /home --include /etc --include /srv --exclude '**' rsync://backup@snapshto::srv/snapshots/loaclhost
''; in [
"18 */4 * * * root ${script}"
];
This blog entry is super-short because after writing a much longer one I extracted all the interesting bits and turned them into an FAQ document in the Git repo. So go and read that now.