[linux-lvm] faster snapshot creation?

Stuart D. Gathman stuart at gathman.org
Wed Feb 26 00:38:28 UTC 2020

On Sat, 22 Feb 2020, Eric Toombs wrote:

> Snapshot creation is already pretty fast:
>> $ time sudo lvcreate --size 512M --snapshot --name snap /dev/testdbs/template
>>   Logical volume "snap" created.
>> 0.03user 0.05system 0:00.46elapsed 18%CPU (0avgtext+0avgdata 28916maxresident)k
>> 768inputs+9828outputs (0major+6315minor)pagefaults 0swaps
> That's about half a second in real time. But I have a scenario that
> would benefit from it being even faster. I'm doing many small unit tests
> So, is there a sort of "dumber" way of making these snapshots, maybe by
> changing the allocation algorithm or something?

How about using a filesystem that supports snapshot, e.g. nilfs, or
(I think) btrfs?  That would be much faster than doing it at the LVM
level, which has to sync metadata and stuff.

a) load your template into work directory
b) tag snapshot
c) run test (possibly in container)
d) restore tagged snapshot
e) goto c

More information about the linux-lvm mailing list