by jquast » Tue Jul 20, 2010 4:35 pm
Hi,
After a lot of effort, I was able to compile and install duplicity on my ReadNas NV+.
Two things drove me. Firstly, the built-in backup job to my USB disk works only once, and fails due to a "read-only" filesystem every day thereafter. It simply needs to mount and unmount the drive. It really shouldn't keep the USB disk mounted all the while when its not using it -- I did everything I could to NOT share it and so on, but it requires manual click of the 'disconnect' button? is that right?
Anyway that's when I decided I'd stop messing with this **** web gui and just cronjob the damn backups my damn self. I'm also thinking a lot about remote backups. Something off-site. I recently lost a lot of data to disk failures.
After looking at size limitations and cost of remote site backup solutions, including netgear's own, and a weekend of investigation, I decided to use Amazon's S3 storage.
Which also drove me to the decision to use duplicity, which, for files that grow in size, will only transfer and store the differences within the files -- something vanilla rsync won't do (or 's3sync', the original S3 rsync solution).
From the FUD spread above, I used --no-encryption for a long while, until I finalized my 'frequently', 'daily', and 'weekly' backup actions. I found they all ran in ample time, so I generated the GPG keys and enabled encryption, and it approximately doubled the backup time. That's it.
So no, I don't feel the encryption overhead is too much for the ReadyNas NV+.
This small linux kernel and debian environment is very difficult to monitor system throughput with, but I'm very sure from years of system programming experience, that your internet upload speed, usb disk write speed, and raid disk read speed will be your watermark for all backups, local or remote.
And its a very good idea to encrypt. I didn't really want to either until I thought about it a long while. At least for me, I netboot a lot of unix machines over NFS, and I'm storing files like /etc/passwd, and subsequently backing them up. Anybody who gains access or permission to the backup store has full access to all of these files. And its even more serious for USB: If a thieve or attacker steals my USB disk, I don't want all of my most personal data there free to read by all.
Anyway, I'd like to share this work with everyone, but it's not easy. My coworker who also has a ReadyNAS NV+ immediately asked if it was a .bin package he could install to use it. There isn't.
I'm thinking at minimum a tarball package for ssh-enabled machines to install. Unfortunately I don't think I can really provide a debian package because of the dependency mess.
It also requires a bit of documentation, though a few blogs out there have more or less covered the aspects of gpg keys and duplicity and s3 storage, a 200-line README would be greately appreciated by anybody new to duplicity.
Restore is stupid simple. You just reverse the "source" and "destination" and duplicity knows what to do.
Unfortunately, you need your GPG key to restore, and the documentation needs to make this clear, because the user should know where their GPG key is stored, and to know to keep it secure and recoverable in event of disaster.
Anyway, I'd be happy to make a .BIN package if users weren't such a *****. Though I could build a tarball and a README, anybody interested?