虽然一直对linux抱有企图,但直到前几天才开始实际动手。首先是自己编译linux内核。
编译在ubuntu 10.04下进行,系统使用的版本是linux-2.6.32-28,自己编译的是linux-2.6.32。
现在linux编译配置变得比较傻瓜化,默认会把许多不必要的模块编译进来,也基本可以满足启动需要。
但在实际编译过程中还是遇到了一些问题,以下分点列出,以供参考。
1、编译进去的文件系统。因为现在ubuntu安装都会使用最新的ext4文件系统,自己编译时也要注意将其编译进去。
2、编译进去的硬盘驱动。本来个人的pc或笔记本都是SATA接口(这主要是由于intel芯片组的选择),但linux会通过libata把SATA接口抽象成SCSI接口。所以编译时最好把SATA和SCSI的都加上去。其中SATA中有一个AHCI的驱动选项,这个是Intel HM55/3400系列芯片组中需要的驱动,没有的话无法访问硬盘。ubuntu原本内核的做法是将其编译成模块,放到initrd.img中。如果要把AHCI编译成模块,就要使用initrd,不过也很方便,直接用mkinitrd 命令就可以了,只是这样生成的initrd.img会