Hey. I regularly do the following with btrfs, which seems to work pretty stable since years: - having n+1 filesystems MASTER and COPY_n - creating snapshots on MASTER, e.g. one each month - incremental send/receive the new snapshot from MASTER to each of COPY_n (which already have the previous snapshot)
so for example: - MASTER has - snapshot-2020-11/ - snapshot-2020-12/ and newly get's - snapshot-2021-01/ - each of COPY_n has only - snapshot-2020-11/ - snapshot-2020-12( - with: # btrfs send -p MASTER/snapshot-2020-12 MASTER/snapshot-2021-01 | btrfs receive COPY_n/ I incrementally send the new snapshot from MASTER to each of COPY_n using the already available previous snapshot as parent. Works(TM) Now I basically want to swap a MASTER with a COPY_n (e.g. because MASTER's HDD has started to age). So the plan is e.g.: - COPY_1 becomes NEW_MASTER - MASTER becomes OLD_MASTER later known NEW_COPY_1 a) Can I then start e.g. in February to incrementally send/receive from NEW_MASTER back(!!) to OLD_MASTER? Like: # btrfs send -p NEW_MASTER/snapshot-2021-01 NEW_MASTER/snapshot-2021-02 | btrfs receive OLD_MASTER/ b) And the same from NEW_MSTER to all the other COPY_n? Like: # btrfs send -p NEW_MASTER/snapshot-2021-01 NEW_MASTER/snapshot-2021-02 | btrfs receive COPY_n So in other words, does btrfs get, that the new parent (which is no longer on the OLD_MASTER but the previous COPY_1, now NEW_MASTER) is already present (and identical and usable) on the OLD_MASTER, now NEW_COPY_1, and also on the other COPY_n ? By the way, I'm talking about *precious* data, so I'd like to be really sure that this works... and whether it's intended to work and ideally have been tested. Thanks, Chris.
