Thanks again for all of the very helpful advice given in this thread — much appreciated!
Based on all that I've read here and my own further thoughts, here is my proposed backup strategy for my new LM21.1 system:
- Install a secondary internal SATA3 SSD drive as a quick (transfer speed and self-contained) repository for backups. I'll create one ext4 partition (owned by root) that is used exclusively for TimeShift backups and another ext4 partition (owned by me) for Home backups, including "mirrors" from rsync runs. I'll aim to edit
fstab
(another exercise in reading the manuals!) so that the latter partition is automatically mounted on startup at /mnt/IntBackup
and is therefore constantly available.
- At intervals depending on what I'm doing, I'll connect my external USB3 hard drive (auto-mounted at
/media/$USER/ExtBackup
) to carry out batches of backups from Home, including "mirrors" from rsync runs as above.
- I'll also carry out separate regular incremental backups (rsync without
--delete
option) of my individual (not "dotted") folders for documents/photos/other media to /mnt/IntBackup
, /media/$USER/ExtBackup
, DVDs and any other places that occur to me.
- Periodically run Clonezilla or Foxclone (probably the latter as I've tried it out and it looks good) to create images of my system drive onto another dedicated external hard drive.
As I understand it from this thread, my
rsync scripts for the internal and external "mirror" backups will look something like this:
-
rsync -avhx --delete --exclude .cache --exclude Unmirrored /home/ /mnt/IntBackup/Mirrors
<-- I believe this creates and maintains a "mirrored" folder hierarchy (starting with a $USER folder at the top, due to the slash after "/home") within the "Mirrors" folder on the internal backup partition
-
rsync -avhx --delete --exclude .cache --exclude Unmirrored /home/ /media/$USER/Mirrors
<-- Ditto but on the external backup drive
To explain the "Unmirrored" exclusion in the above, I have several GB of archive documents and photos that are heavily backed up and unchanging. I want to keep them available but I don't need to keep running
rsync over them, so I reason that I can achieve that by putting them all inside a top-level "Unmirrored" folder in my home directory and using the above script. Does that make sense?
If I've understood all this correctly, then I believe that my disaster recovery procedure (after failure of system drive) becomes:
- Populate replacement hard drive with drive partition images from most recent Clonezilla or Foxclone backup
- Run Timeshift (either from restored system drive or LM "live" USB stick — not sure which is better) and restore to most recent system snapshot
- Restore /home directory from latest mirror (either internal or external drive)
- If necessary, add any files that have been backed up incrementally but not included in the latest mirror
Is this a plausible approach? Thanks for any further pointers.