Provided by: lxc-utils_4.0.12-0ubuntu1~20.04.1_amd64 

NAME
lxc-create - 컨테이너 생성
SYNOPSIS
lxc-create {-n name} [-f config_file] {-t template} [-B backingstore] [-- template-options]
설명
lxc-create는 설정정보와 사용자 정보가 저장되는 시스템 객체를 생성한다. name은 다른 lxc 명령어들에서 특정
컨테이너를 지정하는데 사용된다.
객체는 /var/lib/lxc에 작성되는 디렉토리이며, 자신의 name으로 구분되어 진다.
객체는 응용 프로그램이 사용할 수 있고 볼 수 있는 여러 자원들의 정의이다. 설정파일이 많은 정보를 담고
있을수록 컨테이너는 더욱더 고립될 수 있고, 응용 프로그램은 더욱더 격리될 수 있다.
만약 설정파일 config_file가 지정되지 않았다면, 컨테이너는 프로세스, sysv ipc, 마운트 포인트에 대한
기본적인 고립 상태로 만들어진다.
옵션
-f, --config config_file
컨테이너 가상화 및 고립 기능을 설정하는 설정파일을 지정한다.
-t, --template template
lxc-create 명령어는 'lxc-template' 스크립트를 호출한다. template은 'lxc-template' 스크립트의 짧은
이름으로, busybox, debian, fedora, ubuntu, sshd 등이 있다. 스크립트의 구조에 대해 궁금할 때는
/usr/share/lxc/templates에 있는 예제들을 참고하면 된다. template 대신 스크립트의 전체 경로를
지정할 수도 있다. "none"으로 지정하면 루트파일시스템 생성을 강제로 건너뛸 수 있다.
-B, --bdev backingstore
'backingstore'는 'dir', 'lvm', 'loop', 'btrfs', 'zfs', 'rbd', 'best'를 지정할 수 있다. 기본 값은
'dir'로 컨테이너 루트 파일시스템을 의미하며 /var/lib/lxc/container/rootfs이하 디렉토리를 가리킨다.
'dir'은 옵션으로 컨테이너 루트 파일시스템이 어느 경로에 위치할지 지정할 수 있으며, --dir ROOTFS로
가능하다. ('none'은 'dir'과 동일하다) 'btrfs'가 지정되어 있다면, 타겍 파일시스템은 반드시
btrfs여야 한다. 그리고 컨테이너 루트 파일시스템은 새로운 서브볼륨으로 생성된다. 이는 스냅샷된
복제물을 만들지만, rsync --one-filesystem는 분리된 파일시스템으로 취급하게 된다. 'lvm'으로
지정되있다면, lvm 블록 디바이스가 사용되며, 이때 사용가능한 옵션은 다음과 같다 : --lvname
lvname1는 이름이 lvname1인 LV를 만든다(기본값은 컨테이너 이름). --vgname vgname1는 이름이
vgname1인 볼륨그룹 안에 LV를 만든다(기본값은 lxc). --thinpool thinpool1는 thinpool1라는 풀 안에
있는 thin-provisioned 볼륨으로 LV를 만든다(기본값은 lxc). --fstype FSTYPE는 LV의 파일시스템을
FSTYPE으로 지정한다(기본값은 ext4). --fssize SIZE는 LV의 크기를 지정한다(기본값은 1G).
'loop'로 지정되어 있다면, 'lvm'과 비슷하게 --fstype FSTYPE과 --fssize SIZE를 사용할 수
있다(기본값은 'lvm'과 동일).
'rbd'로 지정되어 있다면, ceph.conf내 적절하게 설정사항이 있어야 하고 ceph.client.admin.keyring가
정의되어 있어야 한다. 아래 옵션을 지정할 수 있다 : --rbdname RBDNAME는 생성하는 블록 장치의
이름을 RBDNAME로 지정한다(기본값은 컨테이너의 이름). --rbdpool POOL는 블록 장치를 넣을 풀을
POOL로 지정한다(기본값은 'lxc').
'best'로 지정되어 있다면, lxc는 btrfs, zfs, lvm, dir의 순서대로 시도해본다.
-- template-options
이것은 template-options를 템플릿에게 인수로 넘긴다. 만약 어떤 인수를 템플릿에서 지원하는지 보고
싶다면, lxc-create -t TEMPLATE -h를 사용하면 된다.
공통 옵션
이 옵션들은 대부분의 lxc 명령어들에서 공통으로 쓰인다.
-?, -h, --help
사용법을 기존 출력하는 것보다 길게 출력한다.
--usage
사용법을 표시한다.
-q, --quiet
결과를 표시하지 않는다.
-P, --lxcpath=PATH
컨테이너 경로를 직접 지정한다. 기본값은 /var/lib/lxc이다.
-o, --logfile=FILE
로그의 경로를 FILE로 지정한다. 기본값은 로그를 출력하지 않는 것이다.
-l, --logpriority=LEVEL
로그 수준을 LEVEL로 지정한다. 기본값은 ERROR이다. 사용 가능한 값 : FATAL, ALERT, CRIT, WARN,
ERROR, NOTICE, INFO, DEBUG, TRACE.
이 옵션은 로그 파일에만 적용된다는 사실을 주의해야 한다. stderr로 출력되는 ERROR 로그에는 영향을
끼치지 않는다.
-n, --name=NAME
컨테이너 식별자로 NAME을 사용한다. 컨테이너 식별자의 형식은 알파벳-숫자 문자열이다.
--rcfile=FILE
컨테이너의 가상화 및 고립 기능들을 설정할 파일을 지정한다.
이전에 만들어졌던 컨테이너에 설정 파일이 이미 있더라도, 이 옵션이 지정되어 있다면 해당 파일을
사용한다.
--version
버전 정보를 표시한다.
진단
The container already exists
메시지에 나와있는 대로, 이미 같은 이름의 컨테이너가 존재하는 경우이다. lxc-ls 명령어를 사용하여
시스템에 이미 존재하는 컨테이너를 확인해볼 수 있다.
참조
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)
저자
Daniel Lezcano <daniel.lezcano@free.fr>
2022-02-04 lxc-create(1)