如果你希望,可以创建任何一种版本的Ubuntu容器,只要传递release参数。比如说,想创建Ubuntu 14.10容器: $ sudo lxc-create -n -t ubuntu -- --release utopic 它会下载并验证目标容器环境需要的所有程序包。整个过程可能需要几分钟或更长时间,具体取决于容器类型。所以请耐心点。 经过一系列的程序包下载和验证后,LXC容器映像最终创建完毕,你会看到默认的登录资料可供使用。容器存储在/var/lib/lxc/<container-name>,根文件系统则位于/var/lib/lxc/<container-name>/rootfs。 LXC创建过程中下载的所有程序包则缓存在/var/cache/lxc里面,那样使用同样的LXC模板创建额外的容器就不用花时间了。 现在不妨看一下主机上的LXC容器列表: $ sudo lxc-ls –fancy NAME STATE IPV4 IPV6 AUTOSTART ———————————— test-lxc STOPPED – - NO 想启动一个容器,请使用下面这个命令。“-d”选项将容器作为守护程序来启动。要是没有这个选项,你在启动容器后,会直接被连接到控制台。 $ sudo lxc-start -n -d 启动容器后,不妨再次检查容器状态: $ sudo lxc-ls –fancy NAME STATE IPV4 IPV6 AUTOSTART —————————————– lxc RUNNING 10.0.3.55 – NO 你会看到,容器处于“RUNNING”(运行)状态,已被赋予了一个IP地址。 你还可以证实,容器的接口(比如vethJ06SFL)自动连接到LXC的内部网桥(lxcbr0),如下所示。 $ brctl show lxcbr0 管理LXC容器既然我们已知道了如何创建及启动LXC容器,现在不妨看看我们可以如何处理运行中的容器。 首先,我们想要访问容器的控制台。为此,键入这个命令: $ sudo lxc-console -n 键入<Ctrl+a q>组合键,退出控制台。 想停止和销毁容器: $ sudo lxc-stop -n $ sudo lxc-destroy -n 想把现有容器克隆成另一个容器,使用这些命令: $ sudo lxc-stop -n $ sudo lxc-clone -o -n 故障排查如果你遇到了LXC方面的错误,下面是故障排查方面的几个要点。 1. 你无法创建LXC容器,出现下列错误。 $ sudo lxc-create -n test-lxc -t ubuntu lxc-create: symbol lookup error: /usr/lib/x86_64-linux-gnu/liblxc.so.1: undefined symbol: cgmanager_get_pid_cgroup_abs_sync 这意味着你运行最新的LXC,却使用较旧的libcgmanager(libcg管理器)。想解决这个问题,你就需要更新libcg管理器。 $ sudo apt-get install libcgmanager0 |