It goes without saying that data backup is important. I think most people are aware of this in some way, regardless of whether they actually do it or not. With the advent of Dropbox, Google Drive et al., backup and folder syncing have become synonymous for many. For the latter, I think its key advantage is that it happens automatically — as long as a user develops the habit of putting important files into the right folder, they can trust that the helper app for whatever service they use will dispatch it to the cloud.
For system-wide backups, folder-syncing services start to become a little unwieldy. It's impractical to try putting every file you want backed up into one giant folder (especially if your service of choice pretends symlinks don't exist, Google Drive…). Here, something like Time Machine on macOS, or services like BackBlaze and CrashPlan are much better-suited to the task. These are all easy to set up, but come with disadvantages. For Time Machine, you don't generally get an offsite backup. Additionally, if used it with a hard drive that isn't always connected, it's not nearly as automatic as backups need to be. Online backup services alleviate these issues, mostly. Depending on your upload speeds, though, there might be an uncomfortable delay in large files getting backed up. This is especially true for laptops, or computers that aren't left on for extended periods of time.
For my own needs, and peace of mind, I've settled on a combination of software and services: BackBlaze, Time Machine, Carbon Copy Cloner, and Resilio Sync, all running on a 'Hackintosh' server with ~10.5TB of storage. I'll go into more detail on why I use each of these below1, but first my requirements.
I have a pretty diverse set of file management needs, which is why I've given my backup solution this much thought.
I'll start with a quick summary of the services I do use:
And why I don't use some others:
The central component of my setup is a Skylake-based Hackintosh running macOS Server, that sits in a cupboard, running 24/7. It's basically the lowest-spec Hackintosh I could build with modern components, running 8GB of RAM, an i3 Skylake CPU, two 5TB hard drives, a 500GB SSD, and a MicroATX case. I basically wanted the equivalent of a Mac Mini with current-gen, low-power components, in a case that can hold a few 3.5-inch hard drives internally. It's still running El Capitan (I built it mid-2016 and haven't updated to Sierra), but it's been extremely reliable; it hasn't crashed once.
There are a few reasons I wanted the central component of my setup to run macOS (vs Linux, proabably Ubuntu, as a second choice). I wanted to be able to run BackBlaze on it, easily set up Time Machine and Resilio Sync, and also to easily and regularly run a few macOS utilities and scripts I've written.
Finally it's time to actually summarise what goes on, software-wise:
It might seem a little complex, or over-engineered, but this combination of things means that all of my data is backed up at least twice, onsite and offsite. It also means all my data is available anywhere, whenever I need it, and that the most important things continue to get backed up whenever I'm on another network and Time Machine isn't available.5
This setup has been working really well for me, for almost a year now. I regularly check things to make sure everything is running as planned, and every so often I pull down random files from BackBlaze, or my backup drive, and check that all is well. I think the key aspect of this, and any effective backup setup, is that it all happens automatically. Once the planning and initial setup was complete, I haven't needed to intervene, nor have I had to actually trigger any backups. If you have a backup that requires plugging something in, or pressing a button, or anything that isn't just happening automatically, it's probably not as effective as you would want it to be in a real emergency.