[linux-lvm] how to copy a snapshot, or restore snapshot without deleting it

Marian Csontos mcsontos at redhat.com
Thu Jan 3 14:09:16 UTC 2019


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 at team.telstra.com
> 
> 
> 
> _______________________________________________
> linux-lvm mailing list
> linux-lvm at redhat.com
> https://www.redhat.com/mailman/listinfo/linux-lvm
> read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/
> 




More information about the linux-lvm mailing list