编译2.6内核

Linux 2.6内核编译比以前方便多了

1. 首先从如下网址得到linux-2.6最新版本

http://www.kernel.org/

2. 然后untar这个包.

tar -xjfv linux-2.6.25.tar.bz2

拷贝/boot/config-"uname -r"  配置文件到.config下

3. 配置内核
cd /usr/src/linux-2.6.25
make mrproper(删除一些stable的文件,针对刚download下来的包这一步没必要)
make menuconfig(以菜单的方式显示, 可以定制Linux模块, 在菜单顶部有命令帮助)

选择倒数第2行,回车

3. 编译内核

make (这一步花的时间最多,我用了将近40分钟)
make modules_install
make install(系统将会把vmlinuz和System.map复制到/boot目录下同时修改grub)

在2.6以前需要make bzImage make modules, 而且还需要将vmlinuz和System.map复制到/boot目录.

要想得到更详细关于编译的描述, 可以参考/usr/src/linux-2.6.25的README. 每个Linux内核的发行都有这个文件.

4. 重启机器
shutdown -r now
这样在开始的grub菜单里你可以选择用新的内核来启动linux

如果启动时遇到这个错:
"Enforcing mode requested but no policy loaded. Halting now."
Kernel panic: Attempted to kill init!

可以用如下方法解决:
Try adding enforcing=0 to your grub.conf.
kernel /boot/bzImage-2.6.5 ro root=/dev/hda5 enforcing=0

或者在/etc/selinux/config文件中,将SELINUX的值设为disabled.

5 要启动时用新内核

# vi /boot/grub/menu.lst

 

说明:

1. 本文摘自红联上的文章,感谢作者。

2. 我们不是发烧友,动就升级,F8内核已经是2.6.23.1-42,升到2.6.25也没那个必要,不过,现在的Linux发行版本都不带源码包的,所以做驱动开发的下个源码包编译安装是有必要的,所以我也下了当时最新版2.6.25,在开发板上移植我也用该版本。

3. make menuconfig的时候,根据自己的需要选择,不清楚就默认即可

4. shutdown -r now 之后我可以在开始的grub菜单里选择用新的内核来启动linux,没有遇到上述错误,系统正常运行。

5. 我解压编译后的linux-2.6.25文件达到1.7G左右,交叉编译到开发板则538.6M这样,所以感觉当初装系统的时候分配给系统文件的9G还小 了点。如果/ 下的空间不够,那么启动系统的时候会出现“xx应用程序即将崩溃”,进入命令行下把一些文件删掉即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值