lxc-clone(1) 既存のコンテナからの新しいコンテナのクローン

SYNOPSIS

lxc-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 arguments]

説明

lxc-clone は、新しいコンテナを既に存在するコンテナのクローンとして作製します。 クローンは 2 つのタイプをサポートします: コピーとスナップショットです。 コピータイプのクローンは元のコンテナから新しいコンテナへ root ファイルシステムをコピーします。 スナップショットファイルシステムは、バッキングストアのスナップショット機能を使い、元のコンテナの非常に小さな copy-on-write でのスナップショットを作製します。 スナップショットでのクローンは、新しいコンテナのバッキングストアとしてスナップショット機能のサポートが必要になります。 現時点では、このようなバッキングストアとしては aufs, btrfs, lvm, overlayfs, zfs のみをサポートします。 LVM デバイスはスナップショットのスナップショットはサポートしていません。

新しいコンテナのバッキングストアは、オーバーレイタイプのコンテナを除いては元のコンテナのタイプと同じになります。 ディレクトリバックエンドのコンテナのスナップショットを aufs もしくは overlayfs で作成することは可能です。 例えば、overlayfs の場合は -B overlayfs という引数を使って指定することが可能です。

元のコンテナと新しいコンテナの名前は、全てのオプションの後に順番に与えることも、-o-n オプションを使ってそれぞれ指定することも可能です。

オプション

-s, --snapshot
新しいコンテナの rootfs は、オリジナルの LVM か btrfs のスナップショットになります。
-K, --keepname
(root ファイルシステム内では) コンテナのホスト名を変更しません。
-M, --keepmac
新しい MAC アドレスをランダムに生成せずに、元のコンテナと同じ MAC アドレスを使用します。
-H, --copyhooks
全てのマウントフックを新しいコンテナのディレクトリにコピーします。 そして、lxcpath とコンテナ名を必要に応じて更新します。
-L, --fssize fssize
ブロックデバイスのバックエンドのコンテナの場合、新しいブロックデバイスのサイズ。 デフォルトでは、新しいデバイスは元のデバイスと同じサイズとなります。
-p, --lxcpath lxcpath
オリジナルのコンテナの lxcpath。デフォルトでは、システム全体で設定された lxcpath が使われます。
-P, --newpath newlxcpath
新しいコンテナの lxcpath。 デフォルトでは、オリジナルの lxcpath と同じものが使われます。 btrfs のスナップショットの場合は注意が必要で、lxcpath の変更はできない可能性があります。 これは subvolume のスナップショットが、同じ btrfs ファイルシステム上に存在しなければならないからです。
-B, --backingstore backingstore
新しいコンテナで元のコンテナと違うバッキングストアを使う場合のバッキングストアを選択します。 デフォルトでは元のコンテナと同じものが使われます。 現時点では、バッキングストアの変更は、ディレクトリバックエンドのコンテナに対する aufs と overlayfs のスナップショットに対してのみサポートされます。 有効なバッキングストアは dir(directory), aufs, btrfs, lvm, zfs, loop, overlayfs です。
-o, --orig orig
クローンしたい元のコンテナの名前。
-n, --new new
作製する新しいコンテナの名前。

CLONE HOOK

クローンされるコンテナに 1 つ以上の lxc.hook.clone の指定が存在する場合、指定されたフックは新しいコンテナに対して呼ばれます。 クローンフックに渡される最初の 3 つの引数は、コンテナ名、セクション ('lxc')、フックタイプ ('clone') となります。 lxc-clone に渡される追加の引数は、フックプログラムに渡される引数の 4 番目以降となります。 LXC_ROOTFS_MOUNT 環境変数には、コンテナの root ファイルシステムがマウントされるパスが与えられます。 設定ファイルのパス名は LXC_CONFIG_FILE に、新しいコンテナ名は LXC_NAME、古いコンテナ名は LXC_SRC_NAME に、rootfs のあるパスまたはデバイスは LXC_ROOTFS_PATH に保存されます。

作者

Serge Hallyn <[email protected]>