Backups are extremely important. Data exists n-1 times. If the data is in only 1 place, then it is really in 0 places. If data exists in 2 places, then you finally have 1 copy of the data. This is the case because any single copy of the data will disappear without any notice at a random time.
Choosing the exact method of backup will depend on several non-independent factors
- Cost (we don’t all have infinite money)
- Convenience (difficult backup schemes will not be followed)
- Size of the data to backup (1GB, a few TB, EBs)
- How quickly the data changes (daily backups, hourly, monthly, once?)
- Event to protect against (drive failure, house fire, large scale natural disaster, hostile action)
- Necessary speed of recovery (business losses by the minute, or are weeks to restore acceptable?)
Cloud based backups can satisfy many of these things. Non-independent factors, so cost will usually scale by data size, but will probably start in the low hundreds of dollars per year. If done right security is not an issue with cloud backups. Encryption is easy, key management is hard. Don’t loose your password. Avoiding localized events is easy with cloud backups, as long as you choose a cloud location that is remote to the other locations of the data.
An external hard disk is cheap. Low hundreds of dollars spread over the multi-year lifetime of the drive. There are lots of software choices to automate backing up to connected storage. However, if the drive is in the same location as the primary data, then it is vulnerable to local events.
Detaching and moving the external drive solves the local events problem, but decreases the convenience. In my experience, people who “plug-in and backup to an external drive occasionally” rarely do so. It becomes even more rare if you forget to bring the drive home. If you are disciplined, then rotating several drives through local and remote locations is doable, but I would not trust myself to do it.
My solution is a private cloud which is really just an external drive I bought plugged into my computer at work. I have a server at home which collects backups from various laptops and such around the house. That server then sends backups to the external drive attached to my work computer. If my house burns down, my data is safely at work. If work burns down, then my data is still at home. If an event destroys both locations 15 miles apart, then I loose data. Perhaps I need to think about adding a truly remote location.