如何强制 Debian 启动新内核?

如何强制 Debian 启动新内核?

我在远程系统上运行 Debian 6、Debian GNU/Linux,在 Grub2(1.98+20100804-14+squeeze1)下使用 Linux 2.6.32-5-amd64(无法查看预启动消息)。我编译并安装了新内核,但无法启动。

我做了什么:

通过以下方式安装软件包:

dpkg -i linux-headers-3.5.3.20120914-amd64_3.5.3.20120914-amd64-10.00.Custom_amd64.deb linux-image-3.5.3.20120914-amd64_3.5.3.20120914-amd64-10.00.Custom_amd64.deb

这更新了 Grub 配置。我的 /boot/grub/grub.cfg 现在包含:

menuentry 'Debian GNU/Linux, with Linux 3.5.3.20120914-amd64' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md0)'
        search --no-floppy --fs-uuid --set 5a3882a9-c7df-4f6a-9feb-f03e3e37be01
        echo    'Loading Linux 3.5.3.20120914-amd64 ...'
        linux   /vmlinuz-3.5.3.20120914-amd64 root=UUID=003242b5-121b-49f3-b32f-1b40aea56eed ro acpi=ht quiet panic=10
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.5.3.20120914-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64' --class debian --class gnu-linux --class gnu --class os {
        insmod raid
        insmod mdraid
        insmod part_msdos
        insmod part_msdos
        insmod ext2
        set root='(md0)'
        search --no-floppy --fs-uuid --set 5a3882a9-c7df-4f6a-9feb-f03e3e37be01
        echo    'Loading Linux 2.6.32-5-amd64 ...'
        linux   /vmlinuz-2.6.32-5-amd64 root=UUID=003242b5-121b-49f3-b32f-1b40aea56eed ro acpi=ht quiet panic=10
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-2.6.32-5-amd64
}

我曾经 grub-set-default "Debian GNU/Linux, with Linux 2.6.32-5-amd64"将旧内核设置为默认内核,然后grub-reboot "Debian GNU/Linux, with Linux 3.5.3.20120914-amd64"启动新内核一次。update-grub我重启系统后,每次都会回到旧内核(2.6)。我尝试将新内核设置为默认内核(grub-set-default 0, update-grub, reboot),但仍然是旧内核。

Syslog 中没有包含任何有关尝试启动新内核的提示 - 只有旧内核。是否有任何有关内核问题的提示?是否有办法在 grub 中启用调试日志记录?

我做错了什么?如何强制系统启动新内核?

编辑:远程机器的硬件。

中央处理器

cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 16
model           : 5
model name      : AMD Athlon(tm) II X4 605e Processor
stepping        : 3
cpu MHz         : 2294.898
cache size      : 512 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 5
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt
bogomips        : 4589.77
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

(仅复制第一篇,后面还有三篇)

该服务器是富士通 PRIMERGY MX130 S1。

答案1

检查配置文件/etc/default/grub——应该有一个条目GRUB_DEFAULT=0,它指的是您将获得的菜单条目。

如果有子菜单,则会出现一些小故障,但我只有在添加 Xen 内核时才会遇到这种情况。

确保你没有将 GRUB1 菜单链接到 GRUB2 菜单(通常在升级时发生),设置GRUB_DEFAULT并运行

grub-mkconfig -o /boot/grub/grub.cfg

这将从配置文件中重建 Grub 使用的 grub 配置/etc/grub.d

它会在构建时列出内核,如果你看一下,/boot/grub/grub.cfg你会看到一行(应该是第 12 行)写着default="x"

重新启动并享受新的内核.....

相关内容