内核 2.6.38-10 和 2.6.38-11 无法在 AHCI 模式下启动

内核 2.6.38-10 和 2.6.38-11 无法在 AHCI 模式下启动

我在 BIOS 中(在旧的 Gigabyte GA-MA74GM-S2H,版本 1.1,Bios F1 上)将 SATA 设置从“Native IDE”切换到“AHCI”,结果令我惊讶的是 GRUB2 无法再启动我的内核。它显示:

Cannot read the Linux header

我正在运行最新的 Natty 内核 2.6.38-11 / 32bit PAE。

猜测是 GRUB2 和 AHCI 的问题,我更加困惑,因为我可以加载较旧的内核版本,包括 2.6.38-9,但不能再加载 -10。所以我转储了 -10 和 -11,并重新安装了内核 2.6.38-11(通用和 pae),结果相同,但错误消息不同(无法加载文件)。将SATA设置改回“Native IDE”模式,一切正常。

有谁也观察到了这一点并有什么建议吗?

我想在 AHCI 中运行的原因是因为我想在不久的将来安装一个 SSD 驱动器,并在 AHCI 中运行它以获得更好的性能,并按照供应商 (OCZ) 的建议。

编辑:

这是我的 grub.cfg 的一部分。内核 2.6.38-11 的配置,未运行:

 menuentry 'Ubuntu, mit Linux 2.6.38-11-generic-pae' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    set gfxpayload=$linux_gfx_mode
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos1)'
    search --no-floppy --fs-uuid --set=root 14611dce-f4ab-498d-b1a1-609ed9f17da2
    linux   /boot/vmlinuz-2.6.38-11-generic-pae root=UUID=14611dce-f4ab-498d-b1a1-609ed9f17da2 ro   quiet splash vt.handoff=7
    initrd  /boot/initrd.img-2.6.38-11-generic-pae
 }

运行2.6.38-9配置:

 menuentry 'Ubuntu, mit Linux 2.6.38-9-generic-pae' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    set gfxpayload=$linux_gfx_mode
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos1)'
    search --no-floppy --fs-uuid --set=root 14611dce-f4ab-498d-b1a1-609ed9f17da2
    linux   /boot/vmlinuz-2.6.38-9-generic-pae root=UUID=14611dce-f4ab-498d-b1a1-609ed9f17da2 ro   quiet splash vt.handoff=7
    initrd  /boot/initrd.img-2.6.38-9-generic-pae
 }

也许我眼瞎了,但我看不出重要部分有什么区别。

这里是 blkid 输出:

 halil@KlingonWarrior:~$ sudo blkid -c /dev/null
 /dev/sda1: UUID="14611dce-f4ab-498d-b1a1-609ed9f17da2" TYPE="ext4" 
 /dev/sda5: UUID="14ebd487-ff28-4678-831b-d94dd9df4f60" TYPE="swap" 
 /dev/sdb1: LABEL="HOMETREK" UUID="B044B71044B6D7F4" TYPE="ntfs" 

并且,正如所写,两种配置均在“本机 IDE”模式下运行。

顺便说一句,-11 内核的重新安装是在 AHCI 模式下完成的。

编辑2:

好的,这是 fdisk 的输出:

 halil@KlingonWarrior:~$ sudo fdisk -lu

 Platte /dev/sda: 163.9 GByte, 163928604672 Byte
 255 Köpfe, 63 Sektoren/Spur, 19929 Zylinder, zusammen 320173056 Sektoren
 Einheiten = Sektoren von 1 × 512 = 512 Bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disk identifier: 0x477d477c

    Gerät  boot.     Anfang        Ende     Blöcke   Id  System
 /dev/sda1   *          63   308094569   154047253+  83  Linux
 /dev/sda2       308094570   320159384     6032407+   5  Erweiterte
 /dev/sda5       308094633   320159384     6032376   82  Linux Swap / Solaris

 Platte /dev/sdb: 500.1 GByte, 500107862016 Byte
 255 Köpfe, 63 Sektoren/Spur, 60801 Zylinder, zusammen 976773168 Sektoren
 Einheiten = Sektoren von 1 × 512 = 512 Bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disk identifier: 0x74720d9c

    Gerät  boot.     Anfang        Ende     Blöcke   Id  System
 /dev/sdb1   *          63   976768064   488384001    7  HPFS/NTFS

抱歉,德语输出...需要更多信息吗?

答案1

仅供记录:

我已经用最新最好的 BIOS(F4 beta)刷新了主板,现在启动问题已经解决。

答案2

首先将 的输出添加sudo fdisk -lu到您的问题中。然后尝试以 AHCI 模式启动,当您进入 grub 菜单时,按c转到命令行。输入ls -lgrub 看到的驱动器的详细列表,并添加该信息。在 IDE 模式下对控制器重复此操作,看看是否有任何差异。

相关内容