chiark / gitweb /
importd: create a loopback btrfs file system for /var/lib/machines, if necessary
authorLennart Poettering <lennart@poettering.net>
Tue, 24 Feb 2015 16:23:53 +0000 (17:23 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 24 Feb 2015 16:27:53 +0000 (17:27 +0100)
commit113b3fc1a8061f4a24dd0db74e9a3cd0083b2251
tree603c98f39bdc563151446157e37400505f2b94ff
parent15e80c7b75c3a3188bfaaa0baddccf31ae661a7a
importd: create a loopback btrfs file system for /var/lib/machines, if necessary

When manipulating container and VM images we need efficient and atomic
directory snapshots and file copies, as well as disk quota. btrfs
provides this, legacy file systems do not. Hence, implicitly create a
loopback file system in /var/lib/machines.raw and mount it to
/var/lib/machines, if that directory is not on btrfs anyway.

This is done implicitly and transparently the first time the user
invokes "machinectl import-xyz".

This allows us to take benefit of btrfs features for container
management without actually having the rest of the system use btrfs.

The loopback is sized 500M initially. Patches to grow it dynamically are
to follow.
Makefile.am
src/import/importd.c
units/systemd-importd.service.in