I am looking for a better approach of doing backups. Currently I use time machine each bunch of months, just to have a restore-compatible backup ready, if you need to reinstall macos. But for more regular backups, the work data, I’ve tried various software like CCC. It’s not bad, but hides a lot of details under a lot of sub menus.
What I am really missing is some kind of sync view, which shows me newer files on each side, which i can review before the actual backup starts. If then also an archive like mechanism was avaiable, to rotate-backup recently deleted or overwritten files, that would be nice. This all in a single comparison like view, showing all directory sub-structures.
If it’s about text files, like code, a actual content diff would be helpful, too?
I bet there are like 50 solutions for that in Linux world… Maybe I could those also use under macOS, using installation via brew?
What are you using, do you have any pro tips for me?
Or should I actually try git as backup solution? I guess its not so nice for binary files.
The key points of my approach are as follows. If you’re interested, since this involves critical operations, I recommend proceeding only after thorough research and testing.
For text-based files like configuration information, we use yadm. This is a dot file manager that uses git as its core system. https://yadm.io/
I use the btrfs filesystem. I enhance redundancy with RAID1 and improve availability using dup to treat multiple drives as a single drive. For metadata and the system, I use RAID1c3. https://btrfs.readthedocs.io/
btrbk takes snapshots of the entire local filesystem every minute (whenever the filesystem is updated). Unlike solutions like Time Machine or rsnapshot that rely on symbolic links and copying, this utilizes the filesystem’s subvolume functionality, enabling it to complete processing in just a few seconds even on large storage systems. btrbk - Summary
Each environment’s local drive creates a snapshot to remote storage every 30 minutes.
The remote storage synchronizes to another storage location every 12 hours using rsync.