So I love that ZFS allows automated snapshots and that my FreeNas box is set up with a 3 disk Raid. However, I’m paranoid. What if the house burns down, or someone breaks in and steals all our computers? A smart guy would have a remote backup somewhere. So, I decided it was time to get my remote backup groove on.
I know that you can do a ZFS replication to another FreeNas box. The issue I have with that approach is that you have to replicate the entire ZFS volume. I needed something more granular. So, I busted out some python and started working on a remote backup script. To give credit where it is due, my brother helped me get started…so thanks big brother.
I am not a programmer. This code and instructions are provided “as is” with no warranty, promise that it works, promise that is won’t melt your computer or even cause the end of the World. Use at your own risk.
The general overview of how the remote backup program works is like this. First the program connects to the remote computer and rsync’s all of your files. It’s setup so that you can have four different sets of remote backups all running on different days if you want. I personally am only using one backup that runs every day. Next, it determines the disk usage of the remote backup disk. It then calculates how long the backup took. Once it has all of that done, it compiles an email with a general status at the top and the details at the bottom. Continue reading