Ubuntu下编译Linux内核2.6.36-rc4[Linux安全]
本文“Ubuntu下编译Linux内核2.6.36-rc4[Linux安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
其实啥都不懂,因为师兄叮嘱做一个小任务,需求先编译内核,所以就百度谷歌了一堆编译内核的文章,然后就开始了人生的第一次内核打补钉和编译Linux内核.
首先声明下面所利用的号令,假如不是root用户登录,需求在前面加sudo
1.下载最新Linux内核源码http://www.kernel.org/,我下了2.6.36-rc4版本
2.解压到/usr/src下
tar -jxvf linux-2.6.36-rc4.tar.bz2
为便利后续操作,将解压后的文件夹名字改成linux-kernel
mv linux-2.6.36-rc4 linux-kernel
3.安装所需的软件包:
apt-get install kernel-package libncurses5-dev fakeroot build-essential
4.配置内核
cd linux-kernel
make menuconfig
终端会弹出一个配置界面
注意主菜单最后有两项:load a kernel configuration...
save a kernel configuration...
先选第一项load ....,意思是,操纵当前的内核配置详单来设置将要编译的内核,然后选save这一项保 存,最撤退出配置界面.
5.给内核源代码打补钉(可选)
(我的补钉是师兄自己改的一个,所以呈现的问题等,人情面形不一样,可以直接跳过此部份,别的有人是将打补钉放在配置内核之前的,我不知道二者能否次序随便的)
cd /usr/src/linux-kernel
patch -p1 < ../cpufreq_stat.patch (大概patch -p1 -i ../cpufreq_stat.patch)
不过我打了补钉有错误,一个近似于“Hunk #3 FAILED at 2387”之类的消息.网上说这意味着不能精确地打上这个补钉,并且patch程序也不能模糊地通过.这将产生一个招致patch失利的.rej文件并且产生一个.orig文件把一些不能改变的原始内容显示给你.
不知道是不是这个缘由招致的,师兄的补钉是这样产生的,他改正了2.6.32版本的cpufreq_stats.c,然后生成了一个patch,但是我的是2.6.36版本内核.不知道是不是这个缘由,反正后来我用meld工具对比了师兄的2.6.32版本改正后的cpufreq_stats.c和 2.6.36版本的cpufreq_stats.c文件,发现除了师兄改正部份,其他就查一个头文件包含,所以就加了那一行,直代替换了 cpufreq_stats.c.
6.编译
履行:sudo make mrproper (排除从前曾经编译过的旧文件,假如你是第一次编译,可不履行)
履行:sudo make (编译,可以加-j4,假如你CPU是双核心,够牛的话,因为可以提高速度)
(编译的时刻出错了,说是宏cputime64_add应当有两个参数,但实际只给了一个,本来是师兄把两个参数之间的逗号写错成了加号,改正后,重新编译)
(目前正在编译中..很慢..不知道后果若何,未完待续)
【然后:sudo make install
再:sudo make modules (编译模块)
再:sudo make modules_install (安装模块)
最后成立 initrd文件:
mkinitramfs -o /boot/initrd.img-2.6.36】
以上是“Ubuntu下编译Linux内核2.6.36-rc4[Linux安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |