I've recently become obsessed with obtaining the perfect backup strategy. I've previously used Backblaze, but a few things have always prevented me from being fully satisfied.
First, you only have 4 weeks to realize you're missing something. A few months ago I noticed I had fewer pictures in my iPhoto than I used to. I don't regularly review my pictures, so there was no telling when those pictures got removed. Luckily it turned out to be 3 weeks prior. I would not have been a happy camper had it been a week later and those files were gone forever.
The second reason is the fact that I have a ton of hard drive space on my network, yet I'm paying Backblaze yearly to store files that would take a fraction of the space on my NAS.
Lastly, I've tried to be overall less reliant on third party companies. I want to be the only one with access to my files.
From these woes, the new setup was born. Let's get into it.
- Macbook Pro - This is my everyday computer. It's with me all over the city, and I don't often turn it on when I get home. I wanted a way to get the files from this to my home server throughout the day, without having to leave it open overnight to transfer files.
- MacMini (at home) - This serves as the brain to the Presley network. It handles my personal VPN, automated downloads, and now my backups.
- ReadyNAS (at home) - My NAS does what it does best: holds all my goods. I've got a total of 9TB, with 6TB currently free. It's connected to my home network via a 1GB ethernet router (along with my MacMini).
- Choose what to backup
The benefit of Backblaze is that it can back up my entire drive, not just specific folders. I've realized that this is a bit overkill, as I'm very organized with my files and very rarely have anything out of place for long. I only have a few folders that I would be devastated to lose, so that made things a bit easier.
- Setup BitTorrent Sync
This does a majority of the work by continuously syncing the files from my MacBook Pro to my home MacMini. I don't even have to think about it, it's just always up to date. It creates a p2p connection, so it doesn't rely on a central server. If there's an internet connection, my files are being pushed to "backup" directory on the MacMini.
- Create weekly archive of backup directory
I wrote a simple script for the MacMini that runs every Monday morning. It creates a tar of my Backup directory and moves it to my ReadNAS. This allows me to have a historical archive in case I ever remove something I didn't intend to.
- Setup Arq
On top of it all, I use Arq to have a remote copy of my files. This is mostly in case my apartment building catches on fire, but it's nice to have. Yes, technically AWS is a third-party vendor, but all of my data is encrypted.
I've been really pleased with this setup. I'm sure it will change over time, but it's been serving me really, really well so far.