我正在尝试安装一个旧的 Linux 内核映像 2.6.32.69,仅用于学习目的。机器是 ubuntu 15.10 32 位。构建内核的命令是:
make oldconfig
make bzImage
make modules
sudo make modules_install
之后,我bzImage
在 arch/i386/boot 下得到了一个 和一个System.map
。我将 bzImage 重命名为 vmlinuz-2.6.32-69-generic 并移至 /boot/。然后将 System.map 重命名为 System.map-2.6.32-69-generic 并移至 /boot/。然后我通过复制现有条目在 /boot/grub/grub.cfg 中添加一个条目并进行了一些修改:
menuentry 'Ubuntu, with Linux 2.6.32-69-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-2.6.32-69-generic-advanced-20b066c2-67ba-4e36-82d6-6cdd552c4be7' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
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 20b066c2-67ba-4e36-82d6-6cdd552c4be7
else
search --no-floppy --fs-uuid --set=root 20b066c2-67ba-4e36-82d6-6cdd552c4be7
fi
echo 'Loading Linux 2.6.32-69-generic ...'
linux /boot/vmlinuz-2.6.32-69-generic root=UUID=20b066c2-67ba-4e36-82d6-6cdd552c4be7 ro quiet splash $vt_handoff
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.2.0-18-generic
}
我不确定我做错了什么。谢谢!