如何在Debian系统上编译和安装附加内核

时间:2014-11-18 09:17:47

标签: linux linux-kernel debian

我必须为我的Debian发行版安装旧内核版本,以检查驱动程序是否存在版本问题。仅支持内核版本高达2.6的驱动程序并进行测试。我的Debian有一个3.2内核。因为硬件工作不正确我联系了支持,并告诉我尝试更旧的内核版本,但我不想因为这个测试而重新安装我的整个系统。我知道可以在启动菜单中选择不同的内核版本,但是如何在那里添加内核呢?

获取较旧的内核版本并编译它不是问题,但如何将新的“旧”内核添加到启动菜单中以及在何处必须存储此内核而不删除我的实际内核

1 个答案:

答案 0 :(得分:0)

内核映像必须位于/boot目录中,并且还必须位于/boot/grub/grub.cfg

的grub引导加载程序配置文件中

如果您打开grub.cfg,您可以看到grub菜单的设置(当您打开计算机时它是启动菜单)。它看起来像这样(我的grub.cfg):

menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os
$menuentry_id_option 'gnulinux-simple-79b185ec-dcb5-4f70-9ea9-6cee082cc626' {
    recordfail
    load_video
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  79b185ec-dcb5-4f70-9ea9-6cee082cc626
    else
      search --no-floppy --fs-uuid --set=root 79b185ec-dcb5-4f70-9ea9-6cee082cc626
    fi
    linux   /boot/vmlinuz-3.18.0-rc4+ root=UUID=79b185ec-dcb5-4f70-9ea9-6cee082cc626 ro  quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.18.0-rc4+
}
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-79b185ec-dcb5-4f70-9ea9-6cee082cc626' {
    menuentry 'Ubuntu, with Linux 3.18.0-rc4+' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.18.0-rc4+-advanced-79b185ec-dcb5-4f70-9ea9-6cee082cc626' {
        recordfail
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  79b185ec-dcb5-4f70-9ea9-6cee082cc626
        else
          search --no-floppy --fs-uuid --set=root 79b185ec-dcb5-4f70-9ea9-6cee082cc626
        fi
        echo    'Loading Linux 3.18.0-rc4+ ...'
        linux   /boot/vmlinuz-3.18.0-rc4+ root=UUID=79b185ec-dcb5-4f70-9ea9-6cee082cc626 ro  quiet splash $vt_handoff
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-3.18.0-rc4+
    }
    # other submenes
    ....
    ....
    ....
    #
}

您可以在此处查看菜单条目和子菜单,因此您可以添加另一个菜单/子菜单项,其中包含内核路径,initrd路径等设置...