1. commonize waitpid users to use a single helper. We frequently want
to run something in a clean namespace, or fork off a script. This
lets us keep the function doing fork:(1)exec(2)waitpid simpler.
2. start a blockdev backend implementation. This will be used for
mounting, copying, and snapshotting container filesystems.
3. implement btrfs, lvm, directory, and overlayfs backends.
4. For overlayfs, support a new lxc.rootfs format of
'bdevtype:<extra>'. This means you can now use overlayfs-based
containers without using lxc-start-ephemeral, by using
lxc.rootfs = overlayfs:/readonly-dir:writeable-dir
5. add a set of simple clone testcases
6. Write a new lxc_clone.c based on api clone.
Still to do (there's more, but off top of my head):
1. support zfs, aufs
2. have clone handle other mount entries (right now it only clones
the rootfs)
3. python, lua, and go bindings (not me :)
4. lxc-destroy: if lvm backing store, check for snapshots of it.
(what about directories which have overlayfs clones?)
Changes since v2:
Initialize random generator when picking new macaddr (reported
by caglar@10ur.org)
Fix wrong use of bitmask flags
On copy-clone of btrfs, create a subvolume
lxc_clone.c: respect the command line usage of the old script
lxc-clone(1): update documentation
Refuse to try changing backing stores expect to overlayfs, as
it is not implemented (yet) anyway.
Signed-off-by:
Serge Hallyn <serge.hallyn@ubuntu.com>
Conflicts:
src/lxc/utils.h
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| examples | Loading commit data... | |
| legacy | Loading commit data... | |
| rootfs | Loading commit data... | |
| FAQ.txt | Loading commit data... | |
| Makefile.am | Loading commit data... | |
| common_options.sgml.in | Loading commit data... | |
| lxc-attach.sgml.in | Loading commit data... | |
| lxc-cgroup.sgml.in | Loading commit data... | |
| lxc-checkconfig.sgml.in | Loading commit data... | |
| lxc-checkpoint.sgml.in | Loading commit data... | |
| lxc-clone.sgml.in | Loading commit data... | |
| lxc-console.sgml.in | Loading commit data... | |
| lxc-create.sgml.in | Loading commit data... | |
| lxc-destroy.sgml.in | Loading commit data... | |
| lxc-device.sgml.in | Loading commit data... | |
| lxc-execute.sgml.in | Loading commit data... | |
| lxc-freeze.sgml.in | Loading commit data... | |
| lxc-info.sgml.in | Loading commit data... | |
| lxc-kill.sgml.in | Loading commit data... | |
| lxc-ls.sgml.in | Loading commit data... | |
| lxc-monitor.sgml.in | Loading commit data... | |
| lxc-netstat.sgml.in | Loading commit data... | |
| lxc-ps.sgml.in | Loading commit data... | |
| lxc-restart.sgml.in | Loading commit data... | |
| lxc-shutdown.sgml.in | Loading commit data... | |
| lxc-start-ephemeral.sgml.in | Loading commit data... | |
| lxc-start.sgml.in | Loading commit data... | |
| lxc-stop.sgml.in | Loading commit data... | |
| lxc-top.sgml.in | Loading commit data... | |
| lxc-unfreeze.sgml.in | Loading commit data... | |
| lxc-unshare.sgml.in | Loading commit data... | |
| lxc-version.sgml.in | Loading commit data... | |
| lxc-wait.sgml.in | Loading commit data... | |
| lxc.conf | Loading commit data... | |
| lxc.conf.sgml.in | Loading commit data... | |
| lxc.sgml.in | Loading commit data... | |
| see_also.sgml.in | Loading commit data... |