升级Linux内核错误解决


因为要使用ntfs-3g(内核至少2.6.22才不会有warning提示)的写功能,所以将自己机器上的linux(debian)内核从2.6.18升级到目前最新的2.6.25.9

下载源码,定制参数选项(make menuconfig,很重要,好多问题其实出现在参数的配置上),make;make modules_install;make install,就是这么简单。

最后还是要生成initrd文件的,可以使用yaird命令

这里记录一下升级过程中碰到的两个导致linux启动panic的东东

/bin/cat: /sys/block/hda/dev: No such file or directory

碰到这个情况,其实是modules没有加载好,只需在/etc/yaird/Default.cfg增加

MODULE ide-generic
MODULE ide-disk

就可以轻松搞定的。

第二个异常跟上面很相似

/bin/cat: /sys/block/sda/dev: No such file or directory

碰到这种情况是因为采用了ata_piix的模块来管理硬盘,但是在2.6.25中,默认的硬盘是IDE的,其默认的设备名称是/dev/hda之类的。现在只需在Grub的配置文件中增加

ro hda=noprobe

就好,这样linux就会用ata_piix模块来管理硬盘(直接支持DMA等),不过这样做要有个前提,就是ide和ata_piix都要作为module来加载,而不是将其编译到内核中。

相关内容