自己编译archlinux内核

发布: 2013-11-23 14:11

在测试lxc(linux container)的过程中,发现arch 自带linux内核3.12缺少一个模块user_namespace功能。
在lxc-checkcontainer时显示为miss。

在搜索了下关于archlinux对这个模块的打包问题,原来是由于可能存在一个安全问题而没有带到官方的包里。

可以自己在arch linux打包的基础上添加这个功能就可以,因此,考虑使用官方的PKGBUILD文件。

下载最新的archlinux包文件,

git clone git://projects.archlinux.org/svntogit/packages.git

cd packages/linux/trunk/
vim config # 或者config.x86_64
修改一行配置,把# CONFIG_USER_NS is not set替换为CONFIG_USER_NS=y

然后执行正常的编译,
makepkg --skipchecksums

编译出来的包为,linux-3.12.1-1-i686.pkg.tar.xz
pacman -U linux-3.12.1-1-i686.pkg.tar.xz

安装完成后重启机器,再执行lxc-checkconfig时,所有的检测都通过了。

注,这个功能据arch linux官方回应,应该会在linux-3.13版本默认开启,到时不需要再自已编译了。



原文: http://qtchina.tk/?q=node/774

Powered by zexport