天天看點

LXC(Linux containers)常用指令介紹

lxc-version 用于顯示系統LXC的版本号(可以通過此指令判斷系統是否安裝了lxc)

用法:lxc-version

例如:lxc-version

 lxc-checkconfig 用于判斷linux核心是否支援LXC

用法:lxc-checkconfig

例如:lxc-checkconfig

lxc-create用于建立一個容器

用法:lxc-create -n name [-f config_file]

         -n 後面跟要建立的容器名字 例如:-n foo

         -f 後面跟容器配置檔案的路徑

注:1.采用lxc-create建立的容器,在停止運作後,不會被銷毀,要采用lxc-destroy指令才能銷毀

       2.容器指令空間是全局的,系統中不允許存在重名的容器,如果-n 後面跟一個已經存在的容器名,建立會失敗

例如:lxc-create --n foo --f foo.conf

lxc-execute 用于在一個容器執行應用程式

用法: lxc-execute -n name [-f config_file] [ -s KEY=VAL ]command

           -n 後面跟容器名字(容器名字用于管理容器)例如:-n foo

           -f 後面跟容器配置檔案的路徑(如果沒有配置檔案,可以直接用-s指定配置選項,如果什麼都沒有,系統采用預設政策)例如:-f foo.conf

           -s 後面跟配置鍵值對 例如:lxc.cgroup.cpu.shares=512

       command 為要執行的指令 例如:/bin/bash

 注:1.如果容器還不存在,lxc-execute會自動建立一個,容器停止運作後會被自動銷毀

        2.用lxc-execute啟動應用程式,配置優先級如下:

          如果指定-f選項,那麼之前建立容器(如果容器是已存在的)的配置檔案不會被使用

          如果沒有指定-f選項,那麼将采用之前建立容器(如果容器已存在)的配置檔案

          如果指定-s選項,則在指令行中的配置鍵值對會覆寫配置檔案(無論之前的還是-f指定的)相同配置

例如:lxc-execute --n foo --s lxc.cgroup.cpu.shares=512 /bin/bash

 lxc-start 用于在容器中執行給定指令

用法:lxc-start  -n name [-f config_file] [-c console_file] [-d] [-s KEY=VAL]

          [command]

      -d 将容器當做守護程序執行

     -f  後面跟配置檔案

     -c 指定一個檔案作為容器console的輸出,如果不指定,将輸出到終端

    -s 指定配置

例如:lxc-start -n foo -f foo.conf -d /bin/bash

注:1.如果容器還不存在,lxc-start會自動建立一個,容器停止運作後會被自動銷毀

       2.lxc-start配置優先級與lxc-execute相同

       3.lxc-start 與lxc.execute的異同:

        lxc-start 和 lxc-execute都可以在容器中啟動程序,差別在于lxc-start直接建立程序,lxc-execute先建立lxc-init程序,然後在lxc-init中fork一個程序來執行。

       The orphan process group and daemon are not supported by this  command,

       use the lxc-execute command instead.

       If no command is specified, lxc-start will use the default "/sbin/init"

        command to run a system container.

      4.lxc-start用于在容器啟動system,lxc-execute用于在容器執行應用程式

 lxc-kill 發送信号給容器中的第一個使用者程序(容器内部程序号為2的程序)

用法:lxc-kil -n name SIGNUM

      -n 後面跟容器名

      SIGNUM  信号 (此參數可選,預設SIGKILL)

例如:lxc-kill -n foo

lxc-stop 用于停止容器中所有的程序

用法:lxc-stop -n name

       -n後面跟要停止的容器名

例如:lxc-stop --n foo

lxc-destroy 用于銷毀容器

用法:lxc-destroy -n name

       -n後面跟要停止的容器名

例如: lxc-destroy --n foo

lxc-cgroup 用于擷取或調整與cgroup相關的參數

用法:lxc-cgroup -n name subsystem value

        -n 後面跟要調整的容器名

例如: lxc-cgroup -n foo devices.list

           lxc-cgroup -n foo cpuset.cpus "0,3"

lxc-info 使用者擷取一個容器的狀态

 用法:lxc-info -n name

       -n後面跟操作的容器名

例如: lxc-info --n foo

注:容器的狀态有:STARTING RUNNING STOPPING STOPPED ABORTING

lxc-monitor 監控一個容器狀态的變換,當一個容器的狀态變化時,此指令會在螢幕上列印出容器的狀态

用法:lxc-monitor -n name

例如:lxc-monitor -n foo

 lxc-ls 列出目前系統所有的容器

用法:lxc-ls

例如:lxc-ls

lxc-ps 列出特定容器中運作的程序

用法:lxc-ps

例如:lxc-ps -n foo

更多的指令介紹可以再man page獲得

http://manpages.ubuntu.com/manpages/lucid/man7/lxc.7.html

LXC(Linux containers)常用指令介紹

繼續閱讀