日期:2011-05-17 16:06:00 来源:本站整理
将CentOS 5.4内核进级到2.6.38.5[服务器安全]
本文“将CentOS 5.4内核进级到2.6.38.5[服务器安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
Linux内核进级是学习内核的基本条件.假如自已编译的内核跑不起来,那谈linux内核学习就是镜花水月了.其实网上有很多相关的
内核编译进级教程.我这个纯粹是多余的,但是为什么很多同志进级还是老失利呢?其实网上有很多教程,撞到相关的问题问一下
谷歌或百度就基本是可以办理的.固然网上的办理办法很多时刻不是很好,但是要编译成功并运行起来是没有太大问题的.
好了,言归正传,把我的办法奉献给大家吧.
首先我的linux是centos5.4版的,内核版本是2.6.18.其实linux内核的学习和linux发行版的关系不是太大,大家喜好哪个版本都
工具,假如没有这些工具我们就编译不了内核.假如你不是熟行,对linux不是很熟你就直接按默许选项安装就是了,里包含这些基
本工具的,假如是玩过的同志,便可以定制一下.我是喜好定制,要的东西就装上,不要的东西就不装.
我们先从www.kernel.org上下载一份源码,本文下载的是目前最新安定版的2.6.38.5 .地址以下:
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.38.5.tar.bz2
有了源码后,我们就将源码拷到我们的linux的/opt目录下.我倡议大家在装linux的时刻不要挑选装虚拟机工具,即vmware_tools
.这会在我们背面的编译中带来不必要的麻烦.然后再履行解紧缩:
tar jxf linux-2.6.38.5.tar.bz2 //解压内核
cd linux-2.6.38.5 //进入解压后的目录
cp /boot/ config-2.6.18-164.el5 .config //将默许的内核配置文件拷贝过来
make menuconfig //进入的内核配置的界面
保存退出
然后手工翻开.config文件
查找# CONFIG_SYSFS_DEPRECATED is not set并将其改成CONFIG_SYSFS_DEPRECATED
保存退出
翻开脚本/sbin/mkinitrd
查找到函数:emit_modules.并在此中找到以下字符串:
emit "echo \"Loading $fullmodule module\""
emit "insmod /lib/$fullmodule $options"
找到后改成下面这个模样:
#add by wwhs for kernel modules load error
if [ "$fullmodule" != "dm-region-hash.ko" ] ; then
if [ "$fullmodule" != "dm-mirror.ko" ] ; then
emit "echo \"Loading $fullmodule module\""
emit "insmod /lib/$fullmodule $options"
fi
fi
接下来便可以进入我们常常用的一堆内核编译号令了:
cd /opt/linux-2.6.38.5
make
make modules_install
make install
在网上瞥见有很多同志加了一堆make dep什么的,其实是不需求的,你从内核官网上拿下来的是很干净的并且是2.6版的代码,没必
要加一些针关于2.4版大概是不干净代码的步骤.
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论