LXC-CLONE(1)LXC-CLONE(1)NAMElxc-clone - clone a new container from an existing one.
SYNOPSISlxc-clone [ -s ] [ -K ] [ -M ] [ -H ] [ -B backingstore ] [ -L
fssize ] [ -p lxcpath ] [ -P newlxcpath ] -o orig -n new [ -- hook
arguments ]
lxc-clone [ -s ] [ -K ] [ -M ] [ -H ] [ -B backingstore ] [ -L
fssize ] [ -p lxcpath ] [ -P newlxcpath ] orig new [ -- hook argu‐
ments ]
DESCRIPTIONlxc-clone Creates a new container as a clone of an existing container.
Two types of clones are supported: copy and snapshot. A copy clone
copies the root filessytem from the original container to the new. A
snapshot filesystem uses the backing store's snapshot functionality to
create a very small copy-on-write snapshot of the original container.
Snapshot clones require the new container backing store to support
snapshotting. Currently this includes only aufs, btrfs, lvm, overlayfs
and zfs. LVM devices do not support snapshots of snapshots.
The backing store of the new container will be the same type as the
original container, with one exception, overlay containers. aufs and
overlayfs snapshots can be created of directory backed containers. This
can be requested by using (for overlayfs) the -B overlayfs arguments.
The names of the original and new container can be given (in that
order) after all options, or can be specified with the -o and -n
options, respectively.
OPTIONS-s, --snapshot
The new container's rootfs should be a LVM or btrfs snapshot of
the original.
-K, --keepname
Do not change the hostname of the container (in the root
filesystem).
-M, --keepmac
Use the same MAC address as the original container, rather than
generating a new random one.
-H, --copyhooks
Copy all mount hooks into the new container's directory, and
update any lxcpaths and container names as needed.
-L, --fssize fssize
In the case of a block device backed container, a size for the
new block device. By default, the new device will be made the
same size as the original.
-p, --lxcpath lxcpath
The lxcpath of the original container. By default, the system
wide configured lxcpath will be used.
-P, --newpath newlxcpath
The lxcpath for the new container. By default the same lxcpath
as the original will be used. Note that with btrfs snapshots,
changing lxcpaths may not be possible, as subvolume snapshots
must be in the same btrfs filesystem.
-B, --backingstore backingstore
Select a different backing store for the new container. By
default the same as the original container's is used. Note that
currently changing the backingstore is only supported for aufs
and overlayfs snapshots of directory backed containers. Valid
backing stores include dir (directory), aufs, btrfs, lvm, zfs,
loop and overlayfs.
-o, --orig orig
The name of the original container to clone.
-n, --new new
The name of the new container to create.
CLONE HOOK
If the container being cloned has one or more lxc.hook.clone specified,
then the specified hooks will be called for the new container. The
first 3 arguments passed to the clone hook will be the container name,
a section ('lxc'), and the hook type ('clone'). Extra arguments passed
lxc-clone will be passed to the hook program starting at argument 4.
The LXC_ROOTFS_MOUNT environment variable gives the path under which
the container's root filesystem is mounted. The configuration file
pathname is stored in LXC_CONFIG_FILE, the new container name in
LXC_NAME, the old container name in LXC_SRC_NAME, and the path or
device on which the rootfs is located is in LXC_ROOTFS_PATH.
SEE ALSOlxc(7), lxc-create(1), lxc-destroy(1), lxc-start(1), lxc-stop(1), lxc-
execute(1), lxc-console(1), lxc-monitor(1), lxc-wait(1), lxc-cgroup(1),
lxc-ls(1), lxc-info(1), lxc-freeze(1), lxc-unfreeze(1), lxc-attach(1),
lxc.conf(5)AUTHOR
Serge Hallyn <serge.hallyn@ubuntu.com>
Thu Jul 3 13:01:56 PDT 2014 LXC-CLONE(1)