免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2039 | 回复: 3
打印 上一主题 下一主题

linux 编译内核步骤 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-10-01 18:51 |只看该作者 |倒序浏览
step 1 备份旧版kernel
#cd /usr/src
#mv linux linux.old
将旧版的kerne备份成linux.old
#mv /boot/vmlinuz vmlinuz.old
将存放在/boot的系统核心文件 vmlinuz,备份成vmlinuz.old.

step 2.取得kernel源程序代码

step 3. 将kernel source的tarball压缩文件解压缩
将kernel的源程序代码,在/usr/src这个目录解压缩,会产生目录
linux/,看一下这个目录里面的readme文件非常有帮助
#tar zxvf linux-*-*.tar.gz或#gzip -cd linux-*-*.tar.gz|tar -xfv
step 4. make mrproper
清除工作,清除旧的.o等文件

step 5. make config
在/usr/src/linux/目录执行make config ,make menuconfig或
make xconfig中的任何一个.如果执行make oldconfig系统会自动
由旧的配置文件来配置内核.

step 6. make dep
在/usr/src/linux/目录下执行make dep 来正确的设置所有的附属
文件,以确保所有includes file的相依关系

step 7. make clean
执行make clean p 这个命令清除以前编译出来旧的系统核心与旧的
driver,这个步骤也可以不做,因为我们拿新源代码编译,
若是以前编译过了,再次编译此步骤不能忘

step 8.make zImage
执行make zImage可以造出一个系统核心文件zImage.若是核心过大,可以执行make bzImage

step 9.取得Linux核心文件zImage
编译成功后,真正的系统核心文件kernel Image放在
/usr/src/linux/arch/i386/boot/zImagez或bzImage应将/usr/src/
linux/arc/i386/boot这个目录的zImage复制到/boot/vmlinux
在/usr/src/linux的vmlinux是未经压缩的核心image因为省掉了解压缩的操作,所以启动速度会稍快一点,但它的文件大小都比较大,浪费内存,所以采用zImage来开机会比较好
# cd /usr/src/linux/arch/i386/boot
#cp zImage /boot/vmlinuz-*-*-8
#cd /boot
#ln -s /boot/vmlinuz-*-*-*/boot/vmlinuz
或#cp vmlinux /boot/vmlinux-*-*-*

step 10. 编译系统模块
如果在make config中设置将某些功能或硬件驱动程序编译成模块且想安装这些模块,可继续执行这个步骤,编译模块执行make modules
编译成功后执行make modules_install安装模块.编译好的模块放在
/lib/modules/*.*.*/目录,若以后想载入模块就执行
insmod /lib/modules/*.*.*/xxx.o(xxx.o是模块名称)
#modprobe /lib/modules/*.*.*   (xxx.o是模块名称)
若想在开机时就载入想要的模块,可以将上述的指令直接加在
/etc/rc.d/rc.local,或依redhat的载入模块语法,在
/etc/conf/modules文件加入启动模块,以后开机就会自动载入模块

step 11.更新System.map
每一版本的系统核心都有其特有的系统映射文件System.map,用以定义该版本核心的所有功能信息
#cp /usr/src/linux/System.map/boot/System.map-*.*.*
#cd /boot
#ln -s System.map-*.*.* System.map

step 12.编辑lilo.conf
使开机时能够选择用新kernel或旧的kernel启动,然后执行lilo -v-v-v将编辑好的lilo.conf设置写入系统核心文件,最后执行sync;sync;sync将在内存的数据写回硬盘,再重启linux

论坛徽章:
0
2 [报告]
发表于 2005-10-01 20:11 |只看该作者

linux 编译内核步骤

1、这个文章是哪个朝代的?
2、这个朝代的文章是从哪里 copy 过来的?

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
3 [报告]
发表于 2005-10-01 21:51 |只看该作者

linux 编译内核步骤

原帖由 "platinum" 发表:
1、这个文章是哪个朝代的?
2、这个朝代的文章是从哪里 copy 过来的?


看起来象 2.2 kernel 的.    

论坛徽章:
0
4 [报告]
发表于 2005-10-01 22:29 |只看该作者

linux 编译内核步骤

是啊
若是原创,2.6 已经不这样了,而且谁还用 lilo 啊
若是转贴,连个出处都没有
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP