Provided by: lxc1_2.0.11-0ubuntu1~16.04.3_amd64
NAME
lxc-clone - 존재하는 컨테이너를 새로운 컨테이너로 복제
SYNOPSIS
lxc-clone [-s ] [-K ] [-M ] [-H ] [-B backingstore] [-L fssize] [-p lxcpath] [-P newlxcpath] [-R ] {-o orig} {-n new} [-- hook arguments] lxc-clone [-s ] [-K ] [-M ] [-H ] [-B backingstore] [-L fssize] [-p lxcpath] [-P newlxcpath] [-R ] {orig} {new} [-- hook arguments]
설명
lxc-clone는 존재하는 컨테이너를 복제하여 새로운 컨테이너를 생성한다. 복사, 스냅샷의 두가지 형태의 복제가 지원된다. 복사는 원본 컨테이너의 루트 파일시스템을 그대로 새 컨테이너로 복사한다.. 스냅샷은 저장소의 스냅샷 기능을 이용하여 원본 컨테이너의 copy-on-write 형태로 매우 작은 스냅샷을 생성한다. 스냅샷을 사용하기 위해서는 새 컨테이너의 저장소가 스냅샷 기능을 지원하여야 한다. 현재 스냅샷 기능을 지원하는 것은 aufs, btrfs, lvm, overlayfs, zfs 정도이다. lvm은 스냅샷의 스냅샷은 지원하지 않는다. 오버레이 컨테이너들을 제외하면, 새 컨테이너의 저장소는 원본과 같은 종류를 사용한다. aufs와 overlayfs의 스냅샷은 디렉토리로 구성된 컨테이너로 생성할 수 있다. overlayfs의 경우 -B overlayfs 인수를 통해 이를 지정할 수 있다. 원본 컨테이너와 새 컨테이너의 이름은 모든 옵션 뒤에 원본, 새 컨테이너 순으로 지정할 수 있다. 또는 -o과 -n 옵션을 사용하여 지정할 수 있다.
옵션
-s, --snapshot 새로 생성하는 컨테이너의 루트 파일시스템은 원본의 스냅샷으로 한다. 이 옵션은 저장소가 lvm, btrfs, zfs 일때 지정할 수 있다. 또한 aufs나 overlayfs를 이용한 스냅샷을 원할때만 지정해야 한다. -K, --keepname (루트 파일시스템에서) 컨테이너의 호스트 이름을 변경하지 않는다. -M, --keepmac 새로 무작위한 주소를 만들지 않고, 원본과 같은 MAC 주소를 사용한다. -H, --copyhooks 모든 마운트 훅들을 새 컨테이너의 디렉토리로 복사한다. 그리고 lxcpath와 컨테이너 이름을 필요에 따라 갱신한다. -L, --fssize fssize 블록장치로 구성된 컨테이너의 경우, 새로운 블록 장치의 크기. 기본으로 새 디바이스는 원본과 같은 크기로 만들어진다. -p, --lxcpath lxcpath 원본 컨테이너의 lxcpath. 기본값은 시스템 전역으로 설정되어 잇는 lxcpath를 사용한다. -P, --newpath newlxcpath 새로 생성될 컨테이너의 lxcpath. 기본값은 원본 컨테이너의 lxcpath와 같다. btrfs의 스냅샷의 경우 lxcpath 변경이 불가능 할 수 있음을 주의해야 한다. 왜냐하면 서브볼륨 스냅샷이 같은 btrfs 파일시스템 내에 있어야 하기 때문이다. -B, --backingstore backingstore 새 컨테이너의 저장소를 선택한다. 기본 값은 원본 컨테이너가 쓰던 것과 같은 것으로 되어 있다. 현재 저장소를 다른 것으로 변경하는 것은 디렉토리로 구성된 컨테이너의 aufs와 overlayfs 스냅샷에서만 지원된다. 가능한 값은 dir(디렉토리), aufs, btrfs, lvm zfs, loop 그리고 ovelayfs 이다. -R, --rename 컨테이너의 이름을 변경한다. orig를 new로 이름을 바꾼다. -o, --orig orig 복제할 원본 컨테이너의 이름. -n, --new new 생성할 새 컨테이너의 이름.
CLONE HOOK
만약 복제되는 컨테이너가 1개 이상의 lxc.hook.clone을 지정했다면, 지정된 훅은 새 컨테이너가 생성될 때 실행될 것이다. 먼저 컨테이너 이름, 섹션('lxc'), 훅 종류('clone') 3개의 인수가 복제 훅에 전달 된다. 그리고 4번째 인수 부터는 lxc-clone로 넘겨줄 수 있다. LXC_ROOTFS_MOUNT 환경변수는 컨테이너의 루트 파일시스템이 마운트되어 있는 경로를 넘겨준다. 새 컨테이너의 이름은 LXC_NAME 변수에, 이전 컨테이너의 이름은 LXC_SRC_NAME 환경변수에 담겨 있다. 그리고 루트 파일시스템이 위치하고 있는 곳은 LXC_ROOTFS_PATH로 넘겨준다.
주의
lxc-clone는 lxc-copy로 대체되었으며, 제거될 예정이다.
참조
lxc(7), lxc-create(1), lxc-copy(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)
저자
Serge Hallyn <serge.hallyn@ubuntu.com> 2019-04-09 lxc-clone(1)