My MacBook Pro typically backups to my iMac Time Machine server. I went on a year long trip, during which time I switched my MBP to instead back up to my router (which acts as a NAS and runs a Time Machine server of its own, which writes to a sparsebundle). Now that I'm back from my trip, I would like to resume backing up my MBP to my iMac.
I would like to "merge in" the backups from my NAS's sparsebundle, so that my iMac has the full history. Is this possible?
Original Time Machine destination: A sparsebundle hosted by my iMac
$tree -L 1 /Volumes/old_backup_sparse_bundle/Backups.backupdb/Alex's\ MacBook\ Pro
/Volumes/old_backup_sparse_bundle/Backups.backupdb/Alex's\ MacBook\ Pro
├── 2017-12-29-033257
├── 2018-01-06-141057
├── 2018-01-13-041417
⋮
├── 2018-03-03-094036
├── 2018-03-07-233939
├── 2018-03-08-001351
└── Latest -> 2018-03-08-001351
Temporary Time Machine destination: A sparsebundle hosted by my router
$ tree -L 1 /Volumes/newer_backup_sparse_bundle/Backups.backupdb/Alex's\ MacBook\ Pro
/Volumes/newer_backup_sparse_bundle/Backups.backupdb/Alex's\ MacBook\ Pro
├── 2018-10-14-091702
├── 2018-10-21-100253
├── 2018-11-01-202140
⋮
├── 2019-03-03-192937
├── 2019-03-04-142255
├── 2019-03-04-153448
└── Latest -> 2019-03-04-153448
Desired outcome: My iMac's sparebundle is backfilled with the router sparsebundle's snapshots:
$tree -L 1 /Volumes/newer_backup_sparse_bundle/Backups.backupdb/Alex's\ MacBook\ Pro
/Volumes/newer_backup_sparse_bundle/Backups.backupdb/Alex's\ MacBook\ Pro
├── 2017-12-29-033257 ┐
├── 2018-01-06-141057 │
├── 2018-01-13-041417 │
⋮ │ Already present in this sparsebundle
├── 2018-03-03-094036 │
├── 2018-03-07-233939 │
├── 2018-03-08-001351 ┘
├── 2018-10-14-091702 ┐
├── 2018-10-21-100253 │
├── 2018-11-01-202140 │
⋮ │ "Merged in" from the router's sparsebundle sparsebundle
├── 2019-03-03-192937 │
├── 2019-03-04-142255 │
├── 2019-03-04-153448 ┘
└── Latest -> 2019-03-04-153448
Best Answer
This is a really bad idea. How many files exist in one snapshot? Since you have hard links to contend with and protective permissions that prohibit most write operations, I would presume most attempts to construct a working hybrid will fail.
The failure modes likely are:
I would love for someone to prove me wrong, but please make a backup copy of your backups if your main goal is actually preserving their viability. It’s likely you will be able to recover data from any tampered backup, but less likely you’ll be able to continue using a merged backup to make new backups. If that happens you now have another set and are further forked.