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

posted on 2012-04-13 17:47  lisperl  阅读(23227)  评论(0编辑  收藏  举报