В чем разница между командами lx c lx c start и lx c -start, et c? - PullRequest
1 голос
/ 03 августа 2020

Из документации не ясно, в чем разница между lx c start и lx c -start, а --help предоставляет разные варианты использования и переключатели. В учебниках используются оба варианта, но, если углубиться в документацию, кажется, что lx c -start подходит для приложений, работающих внутри контейнера, тогда как lx c start - для запуска контейнера. В любом случае это неясно, поскольку не объясняет, являются ли команды ссылками друг на друга или совершенно разными. Я ошибаюсь в том, что «они разные, как в разных двоичных файлах, разные пути кода, но в конечном итоге сходятся под капотом с некоторыми изменениями».

Документация: http://manpages.ubuntu.com/manpages/bionic/man1/lxc-start.1.html

$ lxc-start --help
Usage: lxc-start --name=NAME -- COMMAND

lxc-start start COMMAND in specified container NAME

Options :
  -n, --name=NAME        NAME of the container
  -d, --daemon           Daemonize the container (default)
  -F, --foreground       Start with the current tty attached to /dev/console
  -p, --pidfile=FILE     Create a file with the process id
  -f, --rcfile=FILE      Load configuration file FILE
  -c, --console=FILE     Use specified FILE for the container console
  -L, --console-log=FILE Log container console output to FILE
  -C, --close-all-fds    If any fds are inherited, close them
                         If not specified, exit with failure instead
                         Note: --daemon implies --close-all-fds
  -s, --define KEY=VAL   Assign VAL to configuration variable KEY
      --share-[net|ipc|uts]=NAME Share a namespace with another container or pid

Common options :
  -o, --logfile=FILE               Output log to FILE instead of stderr
  -l, --logpriority=LEVEL          Set log priority to LEVEL
  -q, --quiet                      Don't produce any output
  -P, --lxcpath=PATH               Use specified container path
  -?, --help                       Give this help list
      --usage                      Give a short usage message
      --version                    Print the version number

Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.

See the lxc-start man page for further information.

Документация: http://manpages.ubuntu.com/manpages/bionic/man7/lxc.7.html

$ lxc start --help
Usage: lxc start [<remote>:]<container> [[<remote>:]<container>...]

Start containers.

Options:
    --debug  (= false)
        Enable debug mode
    --force-local  (= false)
        Force using the local unix socket
    --no-alias  (= false)
        Ignore aliases when determining what command to run
    --stateful  (= false)
        Store the container state (only for stop)
    --stateless  (= false)
        Ignore the container state (only for start)
    --verbose  (= false)
        Enable verbose mode

1 Ответ

0 голосов
/ 04 августа 2020

From https://discuss.linuxcontainers.org/t/comparing-lxd-vs-lxc/24,

В нем указано:

lxd

lxd - демон LXD . Для взаимодействия с демоном (например, для создания контейнеров и управления ими) вы хотите использовать команду lx c. Обычно вы не хотите напрямую вызывать lxd - если только вам не нужно запускать lxd init или что-то в этом роде; проверьте man lxd или lxd --help для получения дополнительной информации о том, что вы можете сделать с запуском lxd напрямую, но как только вы запустите его из своей системы инициализации, вам, вероятно, не нужно будет снова вызывать его напрямую, если вы не отлаживаете сам LXD.

Команда lxc - это внешний интерфейс LXD («Клиент LXD» - это, как я думаю).

Однако, если вы пытаетесь используйте LXD, вам следует избегать использования любых команд, начинающихся с lx c - (это lx c, за которым следует короткий дефис)! Эти команды связаны с LX C.

lx c

LX C команды начинаются с lxc- (это lx c с коротким дефисом). Если дефиса нет, просто буквальная команда lx c, связанная с LXD.

...