linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > article > 新闻与认证 > Linux认证 >
栏目导栏
资料搜索
热门文章
·Linux认证复习题100道含答案
·2005年十大最热门IT认证
·Red Hat Linux认证RHCE课程
·GRUB引导进单用户模式的三种方
·RedHat Linux中国地区认证培训
·菜鸟必读:RHCE课堂学习笔记(1
·Linux认证基本知识介绍
·Linux认证考试练习题
·RHCE认证考试介绍
·2006国际10大IT认证排行榜中,
·红旗linux认证工程师考题
·Linux编译内核
·一级理论Linux认证试题
·世界4个头号Linux认证浅析
·国内Linux认证类型详解
最新文章
·学习园地:关于RHCE考试的30个
·Linux面试题大全,测测你的水平
·linux认证试题
·Linux认证测试题含答案
·Linux 职业认证考试必考知识点
·RHCE认证考试分数计算和成绩公
·LINUX认证推出 掀新一轮技术认
·RHCE考试的31个重点
·RHCE考试Troubleshooting
·软考LINUX操作系统的概念和特点
·分析Linux管理知识认证的最佳解
·Web开发员需要Linux认证吗
·Linux认证大比拼
·Linux及开放源码的前景探讨
·Red Hat增加了一个必需的RHCT认
Google
 
Linux编译内核
[ 作者:Linux联盟收集  加入时间:2006-06-11 11:36:23  来自:Linux联盟收集 ]
准备工作 ud6Linux联盟
ud6Linux联盟
通常要运行的第一个命令是: ud6Linux联盟
#cd /usr/src/linux;make mrproper ud6Linux联盟
ud6Linux联盟
该命令确保源代码目录下没有不正确的.o文件以及文件的互相依赖 ud6Linux联盟
ud6Linux联盟
配置 ud6Linux联盟
ud6Linux联盟
接下来的内核配置过程比较烦琐,但是配置的适当与否与日后Linux的运行直接相关,有必要了解一下一些主要的且经常用到的选项的设置。 ud6Linux联盟
配置内核可以根据需要与爱好使用下面命令中的一个: ud6Linux联盟
ud6Linux联盟
#make config(基于文本的最为传统的配置界面,不推荐使用) ud6Linux联盟
#make menuconfig(基于文本选单的配置界面,字符终端下推荐使用) ud6Linux联盟
#make xconfig(基于图形窗口模式的配置界面,Xwindow下推荐使用) ud6Linux联盟
#make oldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦) ud6Linux联盟
ud6Linux联盟
这三个命令中,make xconfig的界面最为友好,如果你可以使用Xwindow,那么就推荐你使用这个命令. ud6Linux联盟
ud6Linux联盟
ud6Linux联盟
ud6Linux联盟
在繁杂的配置工作完成以后,下面你就可以自己到杯茶耐心等候了。与编译有关的命令有如下几个: ud6Linux联盟
#make dep ud6Linux联盟
#make clean ud6Linux联盟
#make zImage ud6Linux联盟
#make bzImage ud6Linux联盟
#make modules ud6Linux联盟
#make modules_install ud6Linux联盟
#depmod -a ud6Linux联盟
ud6Linux联盟
第一个命令make dep实际上读取配置过程生成的配置文件,来创建对应于配置的依赖关系树,从而决定哪些需要编译而那些不需要; ud6Linux联盟
第二命令make clean完成删除前面步骤留下的文件,以避免出现一些错误; ud6Linux联盟
第三个命令make zImage和第四个命令make bzImage实现完全编译内核,二者生成的内核都是使用gzip压缩的,只要使用一个就够了, ud6Linux联盟
它们的区别在于使用make bzImage可以生成大一点的内核,比如在编译2.4.0版本的内核时如果使用make zImage命令,那么就会出现system too big的错误提示。 ud6Linux联盟
建议大家使用make bzImage命令。 ud6Linux联盟
后面三个命令只有在你进行配置的过程中,在回答Enable loadable module support (CONFIG_MODULES)时选了"Yes"才是必要的, ud6Linux联盟
make modules和make modules_install分别生成相应的模块和把模块拷贝到需要的目录中。 ud6Linux联盟
严格说来,第七个命令和编译过程并没有关系,它是生成模块间的依赖关系,这样你启动新内核之后,使用modprobe命令加载模块时就能正确地定位模块。 ud6Linux联盟
ud6Linux联盟
ud6Linux联盟
更新 ud6Linux联盟
ud6Linux联盟
经过以上的步骤,我们终于得到了新版本的内核。为了能够使用新版本的内核,我们还需要做一些改动: ud6Linux联盟
ud6Linux联盟
#cp /usr/src/linux/System.map /boot/System.map-2.4.0test8 ud6Linux联盟
#cp /usr/src/linux/arch/i386/bzImage /boot/vmlinuz-2.4.0test8 ud6Linux联盟
ud6Linux联盟
以上这两个文件是我们刚才编译时新生成的。下面修改/boot下的两个链接System.map和vmlinuz,使其指向新内核的文件: ud6Linux联盟
ud6Linux联盟
#cd /boot;rm -f System.map vmlinuz ud6Linux联盟
#ln -s vmlinuz-2.4.0test8 vmlinuz ud6Linux联盟
#ln -s System.map-2.4.0test8 System.map ud6Linux联盟
ud6Linux联盟
#shutdown -r now ud6Linux联盟
ud6Linux联盟
正常启动.您的机器现在就使用你的新内核了. ud6Linux联盟
ud6Linux联盟
下面是RH 推荐的编译方式. 注意edit Makefile ud6Linux联盟
老话新说,RedHat 公司 推荐编译内核方法 ud6Linux联盟
本文部分取自于RH300(RHCE Rapid Track Course)课本. ud6Linux联盟
本文假定你用的是Redhat 7.2,用grub 管理启动.准备编译7.2 自带的内核 ud6Linux联盟
cd /usr/src/linux-2.4 ud6Linux联盟
make mrproper ud6Linux联盟
edit Makefile 文件 ud6Linux联盟
把EXTRAVERSION= 改成有你特色的文字, 比如: ud6Linux联盟
EXTRAVERSION=-10me ud6Linux联盟
make menuconfig or make xconfig ud6Linux联盟
make dep ud6Linux联盟
make bzImage ud6Linux联盟
make modules ud6Linux联盟
make modules_install ud6Linux联盟
cp System.map /boot/System.map-2.4.7-10me ud6Linux联盟
cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.7-10me ud6Linux联盟
new-kernel-pkg --install --mkinitrd --depmod 2.4.7-10meud6Linux联盟
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息