这个问题的发现是在我换了Ubuntu 8.04并升级内核后发现的,之前的内核是2.6.24-16,没有出现问题。
但是更新了一次,内核升级到2.6.24-20就出现问题了。当时以为是grub的问题,因为menu.lst里还保留了splash选项,
而我已经删除了usplash,所以修改menu.lst去掉generic后的quiet和splash选项。然后就看具体的启动步骤:发现:
[ 7.180660] libata version 3.00 loaded.
[ 7.182664] ata_piix 0000:00:1f.2: version 2.12
[ 7.182670] ata_piix 0000:00:1f.2: MAP [ P0 P2 IDE IDE ]
[ 7.336546] ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 17 (level, low) -> IRQ 18
[ 7.336667] PCI: Setting latency timer of device 0000:00:1f.2 to 64
[ 7.336793] scsi0 : ata_piix
[ 7.336895] scsi1 : ata_piix
[ 7.337655] ata1: SATA max UDMA/133 cmd 0×1f0 ctl 0×3f6 bmdma 0xbfa0 irq 14
[ 7.337706] ata2: PATA max UDMA/100 cmd 0×170 ctl 0×376 bmdma 0xbfa8 irq 15
后,系统无响应了30s,当时我按了caps lock也没响应。30s后系统才识别并初始化好我的fujitsu的硬盘和nec的刻录光驱。
找到出问题的原因后,我google了出现的问题,发现很多用ubuntu8.04的都出现这个问题
而且貌似2.6.24-18及其以上版本内核才会出现,不同的机子出现的问题不一样,有scsi的,也有ahci的等。
解决方法:
提供了4种,我没用修改bios的方法。而是用的最后一种,而且我们出问题的地方不一样-我的是scsi,所以用下面的方法搞定:
sudo vim /etc/initramfs-tools/modules
添加:
scsi
ata_piix
保存退出
sudo update-initramfs -k all -u
sudo reboot
没有任何问题了,然后测试了sda的分区和nec的光驱,没问题