Ask HN: What are your personal backup / sync strategies?
I have:
* Google Drive (100GB tier 2$/mo)
* Amazon Cloud Drive (Unlimited/any file tier)
EDIT: I also have my home Synology NAS
My workflow/strategy that failed:
* GDrive syncs only the root files and not all folders. I keep there notes mainly.
* I once in a while upload RAW image files from my Nikon DSLR to the Amazon Cloud Drive.
* I once in a month connect my external HDD to do Time Machine backup.
* Most of my personal projects are in Github and Bitbucket and I commit and push in a sane way.
* I have an 'experiments' and 'projects' folders in which I do most my work. 'Experiments' is a project that is incubating - it doesn't have a git repo or presence. A project is something that's fully maintained and has a Git repo, and I've decided to invest myself in officially.
During the HDD failure I've lost around 2-3 weeks of hard work, which i spent my vacation re-doing. Most of the work was POC's that I didn't consider a "project" and commits I hadn't pushed yet (no special reason). I worked on many projects in parallel.
My thoughts right now:
* Everything should live within a Git repo? (but then I need to force myself to push all the time)
* Everything should live on Google Drive? My entire home folder? anyone doing this?
* Then again - what should be on Amazon Cloud Drive? it is unlimited..
Please share your backup strategy if you can :)
Thanks!
20 comments
[ 2.1 ms ] story [ 35.5 ms ] threadI also have scheduled backups to an external drive, which enables file history as well.
So for me to lose my files, my main machine, my secondary machine, my external drive, Github, and Dropbox would all have to lose my data before I could get to the backups at any one of those locations (and all of them have incremental backups enabled, so I keep my entire history of changes).
Edit: Most of my clients and several of my organizations use Dropbox to send secret stuff, so Dropbox is already a single point-of-failure for my security. However, I am planning to move to something self-hosted and encrypted at some point. I'd love to put encrypted snapshots in Glacier from time to time and then have my main backups somewhere more accessible.
I don't actually know how Dropbox does with symlinks. I just put my workspace folder in my Dropbox folder.
Right now I only do a local backup to a usb HD. However, I'm considering getting an amazon EBS volume and setting up a Ruby script or something to put up a micro server, compress and encrypt my files and sent them out the the aws volume.
Backblaze/crashplan is cheaper, but they use a server side key, which is pretty pointless. Glacier would be cheaper but seems more complicated to set up.
* Monthly whole drive snapshots to an external HD
* Daily Time Machine backups to an external HD
* Everything backed up continually with CrashPlan
* All work stuff synced continuously in DropBox
* Monthly restore-a-random-file test to sanity check
However, for things like photos the cost (as little as Colin charges) start to really add up. I do my photos on Apple and recently dumped my library into iCloud (offsite backup I guess) and then I periodically rsync that to my NAS. Photos are also backed up to Time Machine on a separate disk. I figure this gives me a fair bit of redundancy and covers me if iCloud deletes all my photos too.
I've tried to do the Time Machine disk shuffling (swapping disks between home and office) but if it's not automated, it doesn't happen.
I've got the client side script tweaked so that you can run it as a standalone setup (backup to a local USB drive), or backup to a remote Linux server via a non-privileged account, or have the remote backup server pull backups from your clients. The features that are currently in development for the next version include client-side encryption, and pluggable backend replication, so you can replicate your backup sets to cloud providers, or tape, or to another Snebu installation.
I can definitely use some more feedback, probably need to do another round of documentation improvements, but overall the code seems quite stable. The project sites is up on github (github.com/derekp7/snebu) if you are interested in contributing.
The key is to keep it simple and easy.
I have cloud services for anything I share with clients or friends but I honestly don't trust them for anything critical. I actually back up Dropbox to the NAS too. Problem being that the sync strategy across multiple clients can wipe a folder shared between them. It's also a beast to recover from a cloud backup
The trick I'm most proud of is at the end of each year I buy a new external backup drive (now NAS), copy the old one to the new drive, and then label the old drive with the year and store it somewhere safe. It costs a few $$ each year to archive the drives but well worth it - they have saved my butt more than once. I also buy a new laptop workstation every 2 years or so and preemptively migrate everything to the new machine before the old machine dies, and keep the old one around as a spare.