QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1401|回复: 2

关于上次《菜鸟编译内核》贴的更正

[复制链接]
发表于 2005-4-24 12:26:40 | 显示全部楼层 |阅读模式
2.6内核的编译安装过程

记得上次写过一篇关于内核安装的帖子,不过前几天看了《Linux Kernel Development 2nd Edtion》后,
发现,在编译和安装方面2.6的内核要比2.4的简单一些,针对上次帖子的一些问题,这次做一些修正。

1. 关于/usr/src/linux更正
记得在上次的帖子里我说了要改动/usr/src/linux的指向,在这里更正一下,大家不要这么做,也没必要
这么做,因为根据内核编译的C库会链接到这个目录树来,修改后就会造成版本不一致,存在这潜在的问题。

2. 内核配置方法的补充
首先是配置内核方面出了上次说的那些方法外,还有一种是make defconfig,这是根据你的机器的类型
对内核进行默认的配置,免去了你配置内核的烦恼,有人说这是Linus本人默认的配置,我不知道是不是。
另外这个配置中没有对NT文件系统的支持,各位想自己动手的,还是要执行完这个命令后手动改一下。

另外,在你进行了内核配置后,编译内核前一定要先执行make oldconfig

3. 编译的一些技巧
如果你不想看到编译内核时的很多输出,但仍想关注警告和错误,你可以把输出重定向到一个文件里
make > your_own_dir_and_file。这样,当你想关心一下编译过程的是后,去看那个文件就是了。其实
一般情况下,我们不许要关心那些警告和错误,把它们重定向到 /dev/null就OK了。
make > /dev/null

另外,你可以利用make进行并行编译,这样可以提高你编译内核的速度,由于内核文件并不存在着由于编译
先后顺序带来的错误,所以你可以放心的使用并行编译,基本原则是一个CPU可以分配两个jobs
make -j2
开启两个job同时编译内核。

第三,在编译内核前,我们不再用执行make dep,也不用区分什么bzImage,modules等问题,默认的Makefile
规则会为我们处理,我们只要简单的执行make就OK了

4.安装
对于模块的安装,和上次说的一样,make modules_install,这样所有的模块就会被安装到/lib/modules/<kernel version>
目录中,但是对于内核本身的安装,我们完全可以自己来。
首先,把编译好的arch/i386/boot/bzImage复制到/boot中,并命名为vmlinuz-<your own version>,例如vmlinuz-2.6.11.7
之后,执行
mkinitrd initrd-2.6.11.7.img 2.6.11.7
这样,你的/boot目录下就会有个名为initrd-2.6.11.7.img的文件了。
最后,按照上次说的编辑grub.conf就OK了

reboot
让你的新内核顺利工作吧。
发表于 2005-4-25 00:06:58 | 显示全部楼层

Re: 关于上次《菜鸟编译内核》贴的更正

[quote:c8e2aa411b="puretears"]

2. 内核配置方法的补充
首先是配置内核方面出了上次说的那些方法外,还有一种是make defconfig,这是根据你的机器的类型
对内核进行默认的配置,免去了你配置内核的烦恼,有人说这是Linus本人默认的配置,我不知道是不是。
另外这个配置中没有对NT文件系统的支持,各位想自己动手的,还是要执行完这个命令后手动改一下。

另外,在你进行了内核配置后,编译内核前一定要先执行make oldconfig

[/quote]
看来也许make defconfig也许不是一个好选择
我的机器是个amd 独龙+vi kt133a的老机器。用ml1.2默认的内核源码执行make defconfig的结果就是这个样子。我的机器成了p4.
选项是剔除了一些,不过好像数量有些多了。要是按照这个内核编译,我的摄像头和u盘都没有戏了
而我的笔记本是mdv 2005,执行之后的结果是那是一个奔腾pro
而且好像在那个下面所有的选项都没有被剔除

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2005-4-25 06:46:50 | 显示全部楼层
的却是这样的,make defconfig的却不是一个好的选择,我用这东西配置完内核也是问题多多,所以建议大家还是自己动手比较好。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-26 10:19 , Processed in 0.044087 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表