這個問題的發現是在我換了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的光驅,沒問題