我刚刚使用netInstall映像安装了一个干净的Debian(Wheezy)版本。
我觉得有很多缺less的软件包(当我使用完整的映像进行安装时,通常会默认安装)。 例如Python没有安装。
此外,当我安装lxc时,它安装了另一个版本(0.8.0 rc1)而不是当前的1.06版本。
如何让我的系统安装缺less的软件包并安装最新的软件包?
/etc/apt/sources.list的内容:
deb http://ftp.ca.debian.org/debian stable main contrib non-free deb http://ftp.debian.org/debian/ wheezy-updates main contrib non-free deb http://security.debian.org/ wheezy/updates main contrib non-free
netinstall真的很less,你只需要添加你需要的东西,而不是得到一个共同的分母,其中包括你可能不需要的东西,真的是一件好事。
0.8的lxc版本对于Debian stable,Wheezy也是正确的。
更新的版本的软件包需要不同的版本 ,如testing(jessie提供lxc 1.0.6-3)或不稳定(sid提供lxc 1.0.6-4)。
您可能还想要添加backports包存储库。 它包含debian stable的一些软件包的更新版本,或者还没有稳定的软件包(例如nodejs)。
http://backports.debian.org/Instructions/
但是,在那里也没有新的lxc。
在Debian Wheezy上运行LXC 1.0.7的说明:
lxc-attach正常工作 – Kernel> 3.8:
apt-get -t wheezy-backports install linux-image-amd64
(当前的3.2 Wheezy Kernel,容器也运行得很好)
添加到/etc/fstab :
cgroup /sys/fs/cgroup cgroup defaults,blkio,net_cls,freezer,devices,cpuacct,cpu,cpuset,memory,clone_children 0 0
编辑/etc/default/grub内核选项:
GRUB_CMDLINE_LINUX_DEFAULT="quiet cgroup_enable=memory,namespace"
& 跑:
update-grub
安装用于构buildlxc和准备源代码的软件包:
apt-get install checkinstall libcap2-dev wget https://linuxcontainers.org/downloads/lxc/lxc-1.0.7.tar.gz tar -zxvf lxc* cd lxc* ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc --with-distro=debian make -j4 checkinstall --install=no
&你将在源目录中有一个Debian软件包。
您还需要将/etc/init.d/lxc第18行更改为:
if [ ! -x /usr/bin/lxc-start ]
添加到/var/lib/lxc/name/rootfs/config :
lxc.start.auto = 1
重启。
笔记
运行./configure之前,您可能需要安装GnuTLS / AppArmor / SELinux / SecComp的开发包以添加对它们的支持。 另外, checkinstall会呻吟一些缺less的目录,在成功构build一个包之前需要创build它们。 通过上述configuration,您仍然可以删除function,现在可以在Debian Wheezy中运行Unprivileged Containers 。
Debian Wheezy与LXC 1.0.7