Checkout this https://github.com/mpalmer/lvmsync This can probably do what you are asking for. Regards Tomas Den tors 10 jan. 2019 kl 10:12 skrev Davis, Matthew < Matthew.Davis.2@team.telstra.com>: > Hi Marian, > > I'm trying to do it with thin snapshots now. It's all very confusing, and > I can't get it to work. > I've read a lot of the documentation about thin stuff, and it isn't clear > what's happening. > > I took a snapshot with > > sudo lvcreate -s --name mySnap1 centos/root > > Then I copied that snapshot with > > sudo lvcreate -s --name mySnap2 centos/mySnap1 > > When I try to restore mySnap1 it says: > > $sudo lvconvert --merge centos/mySnap1 > centos/mySnap1 is not a mergeable logical volume > > The same happens if I use `--mergethin`. > When I try to restore mySnap2 it just "merges" it into mySnap1. I'm trying > to merge it into root. I've looked through the man pages and can't find any > destination argument. > > $ sudo lvconvert --merge centos/fresh2 > Volume centos/fresh2 replaced origin centos/fresh. > > When I merged mySnap2 into mySnap1 and then merged that into root, and > rebooted, it didn't actually merge. The files are not as they were when I > made mySnap1, and `lvs` shows mySnap1 still exists. And if I try to run the > merge command again it says > > $ sudo lvconvert --merge centos/mySnap1 > Command on LV centos/mySnap1 is invalid on LV with properties: > lv_is_merging_origin . > Command not permitted on LV centos/mySnap1. > > What is `lv_is_merging_origin` ? It doesn't appear when I run `lvs`, > `lvdisplay`, `pvdisplay`, `man lvmthin` or `man lvm`. > The snapshot should have taken about 20 bytes of differences, so I don't > expect it would take very long to restore. > How can I check on the status of the merge? For thick volumes too, I > couldn't find a way to check, other than just polling the command to create > a new snapshot. > > What is a "thin snapshot"? I thought the whole point of LVM snapshots was > that they only store the changes in the data. > e.g. If I snapshot a 100GB volume and then add a 1GB file, my snapshot is > only 1GB big, not 100GB. So aren't snapshots already thin? > > Also, when I take any snapshot on my thinly provisioned system, I get some > warning about thresholds and auto-extending. > What is "auto-extending"? I thought the whole point of thin volumes/pools > is that the volume only takes up as much space as it needs. If more data is > added, it takes up more space automatically. > I think I've already allocated all my physical disks to this thin pool, so > what could "auto-extend" mean? > > Thanks, > Matt > > -----Original Message----- > From: Marian Csontos [mailto:mcsontos@redhat.com] > Sent: Friday, 4 January 2019 1:09 AM > To: LVM general discussion and development ; Davis, > Matthew > Subject: Re: [linux-lvm] how to copy a snapshot, or restore snapshot > without deleting it > > On 1/3/19 5:46 AM, Davis, Matthew wrote: > > Hi, > > > > I want to restore a snapshot without deleting the snapshot. > > Hi, I think this should be possible using thin snapshots - snapshot the > snapshot you want to restore, and merge the snapshot - may be not perfect, > but it is at least possible. This is fast, as there is no need to write > huge amounts of data, it is just a switching tree's root away (or very > close to it.) > > Perhaps more convenient alternative is to use boom boot manager (boom-boot > package available on rhel8+ and fedora27+). Not sure it is available in > ubuntu/debian. > > NOTE: > > *Thin pools* > > When using thin pools make sure you have enough space and you do not run > out of space in data and metadata devices, or you risk serious trouble. > > 1. you must enable monitoring and threshold for extending thin pool. > 2. using recent lvm2 2.02.* releases is recommended. > > *Boom* > > Boom also requires a minor change in initramfs to pass `-K` option to > lvchange to allow activation of volumes with skip activation flag. > > -- Martian > > > > > > My use case is that I'm experimenting with a lot of different drivers, > kernel modules, and file modifications all over my machine. > > I want to > > 1. take a snapshot of the working system 2. make changes 3. restore > > the snapshot (` sudo lvconvert --merge /dev/ubuntu-vg/$SNAPSHOT` then > > reboot) 4. make new changes 5. restore to the snapshot again > > > > The problem is that step 3 deletes the snapshot, so step 5 fails. > > > > My current workaround is: > > 1. take a snapshot of the working system 2. make changes 3. restore > > the snapshot (` sudo lvconvert --merge /dev/ubuntu-vg/$SNAPSHOT` then > > reboot) 4. Wait 1.5 hours, without making any changes to the machine > > 5. Take a new snapshot, with the same name as the original 6. make new > > changes 7. restore to the snapshot > > > > This is not great because: > > * I sometimes forget to do step 5 > > * I can't take a snapshot of the volume while it is still merging. > > This takes 1.5 hours. I want to be able to restore my snapshots > > multiple times per day > > > > > > Is there a flag I can add to `lvconvert` to make it not delete the > snapshot? > > Alternatively, is there a way I can make a copy of the snapshot before I > restore it? > > > > It looks like someone else asked this question 10 years ago. > > https://www.redhat.com/archives/linux-lvm/2008-November/msg00000.html > > Has this problem been solved since then? > > > > Thanks, > > Matt Davis > > > > Technical Specialist > > Telstra | Product Strategy & Innovation - Telstra Labs | Programmable > > Infrastructure E Matthew.Davis.2@team.telstra.com > > > > > > > > _______________________________________________ > > linux-lvm mailing list > > linux-lvm@redhat.com > > https://www.redhat.com/mailman/listinfo/linux-lvm > > read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/ > > > > > _______________________________________________ > linux-lvm mailing list > linux-lvm@redhat.com > https://www.redhat.com/mailman/listinfo/linux-lvm > read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/