Tuesday August 10 2021
Simple backup methodology
- Purchase two portable hard drives that can hold all of your data.
- Purchase drives from competing manufacturers ( Avoids a bad run of drives )
- Use drives that are less than 2 years old
- Utilize builtin tools if possible. ( MacOS, Windows )
- Run a backup on both drives when they’re new.
- Place one of the drives at a friends house, bank safe deposit box, or similar.
- Backup weekly, put a reminder on your phone/calendar.
- Unplug the drive when not actively backing up your machine
- Once a month, swap out your current drive with the other one
Most people don’t have much more than 4TB of data they really care about, which can be easily placed on an $85 portable hard drive at the time of writing.
Now you’re protected from hardware failure, malware, your house burning down and accidental deletion.
Large scale natural disaster is a little bit more tricky, especially if the whole area is impacted. Such as earthquakes, tsunamis, and hurricanes.
This is the one case where I think a cloud backup works well, something like Backblaze is very nice. Though Dropbox, OneDrive, iCloud and such work well too.
Tools for Linux, OpenBSD and other Unix like systems
If you’re running the GNOME desktop
Déjà Dup can be used. It apparently wraps Duplicity; both of which I have never used personally, they may work just fine.
Filesystem dumps:
Typically offer no encryption, keep this in mind if you need it. Often very difficult to use. Piecemeal restores often require mounting the image if at all possible
- Linux:
dumpe2fs
/xfsdump
work, but aren’t widely used or straightforward in my experience.btrfs send
works wonderfully, granted you have to already be usingbtrfs
zfs send
if you’re running ZFS On Linux, works fine.
- OpenBSD:
dump
/restore
Works fine, not easy to use
- FreeBSD:
dump
/restore
work well. Again, not easy to usezfs send
works fine- UFS File System snapshots are available as well
Archivers:
tar
works really well, but it’s slow and not the most space efficientcpio
Works, but not often used in the wild.dar
Extremely slow, seemed to work for the time I used it ( awhile ago now ) though.
Sync utilities:
rsync
can be turned into a backup with a little bit of care. You can use
filesystem snapshots to keep historical versions. This can be done on a mounted
hard drive or a remote system, getting the files over is a pretty
straightforward:
rsync --exclude-from=~/.exclude -avpHAX --delete ~/ /mnt/
This is my current backup strategy for offline backups.
Specific backup software
rdiff-backup is similar to rsync
, except that it
leaves hard links to previous versions around. It’s also quite quick.
I currently use restic for most of my cloud backups. It’s quite space efficient due to deduplication. Additionally they have a solid threat model.
It works with all of the major cloud storage providers too as a bonus. It aslo works with local hard drives if you wish.
Due to being written in Go it builds without issue on most major systems
and it lets me check the integrity of my backups periodically too with restic
-r <repo> check --read-data
or so.
Be smart about this, take some action today so you have your data tomorrow.