wojiaohesen
编译linux内核
日,在网上看了那么多的爷们编译linux内核都出错,真是让人汗颜。实际上在2.6的所有版本中,内核的编译已经是成傻瓜式的了,但是这并没有使情况好转。具体的情况请参看:README。linux内核中已经配备了相当齐全的文档,具体的可以参看document/下的所有的文档,在你碰到问题的时候,请仔细想想,你是否阅读了相关的内核自带文档呢,然后再发问
那么就来看看傻瓜式的内核编译到底能多简单:版本2.6.24
cd $src
make menuconfig
make modules_install install
reboot
呵呵,这就是伟大的linux的性感和妖娆
现在说说很多老爷们在编译linux内核后,启动碰到了panic。一般来说这都是很正常的,因为很多人都想着让linux里面得五脏六腑都是自己需要的东西,其他的一律删除。什么selinux,netfilter都滚蛋,只要最精简的,还有那些莫名奇妙的文件系统和设备驱动,于是当重启得时候,我们就看见了自己精心打造的kernel panic。实际上任何的内核启动出现的问题都是我们把相关的启动项去掉了的原因,这导致编译过的内核不能识别原来的操作系统的一些东西。分享本人的一个超级傻瓜的做法,看了之后你就明白你和我犯的都是一样的错:编译内核的时候,因为ext3是个日志文件系统,我的机器只有256的内存,并且我主要是为了编程用,所以为了尽可能的提高例如pdf程序得响应速度,编译内核的时候我只选择了ext2文件系统,其他的文件系统没使用,然后在一切顺利进行完之后,我高兴的reboot,但是在启动我重新生成的内核的时候,不愿意看到的事情发生了:panic。具体的信息忘了是什么了,大概意思就是找不到文件/etc/fstab,当时那是让我相当的生气,于是一鼓作气又重新编译了文件系统,把所有的文件系统都编译了进来,结果就ok了。后来才知道,我的原来的操作系统在用光盘安装的时候,用的是ext3文件系统,看来还是邓小平爷爷说的对:知识就是第一生产力。就因为不懂这些,害得我的机器跑了三个多小时才编译完内核。
建议:一般来说,在对内核编译的时候,最好是只对自己需要的东西进行改动。其他的地方就别乱动了。省的来回的出事情。