|
发表于 2004-2-5 21:08:08
|
显示全部楼层
最初由 pinksnoopy 发表
你们看论坛大部分有关编译内核的贴,,很多不同的错误都是这么个情况!
其实这个问题的确和发行版本的init脚本有关。
fedora就是一个很经典的例子。rc.d里的启动脚本都是针对其内核2.4+nptl的,也就是说,自己编译的新内核一定要匹配fedora的实际环境。
首先值得注意的一点是,initrd的相关支持要编译进内核,这样内核2.6会自动生成initrd-2.6.x.img;
然后就是文件系统,尤其涉及到initrd的文件系统,如ext2,ext3,ramfs就应该要编译进内核而不是模块;
还有一点,应该是rc.sysinit中挂载/proc的部分与新内核有冲突,所以系统不能识别fstab中的LABEL=/,而这却是新内核在其安装时照着fedora自动在grub.conf中生成的,应该要改成/dev/hdax;
另外,大多数发行版本除了slackware吧都使用了bootsplash,为防止黑屏,要把framebuffer编译进内核。
总之,新内核和原启动脚本不协调,如usb模块的名称变化。
(不知大家注意到没有,在fedora的自动升级中会警告你不应该手工安装新内核) |
|