当前位置: 技术问答>linux和unix
linux-2.6.16 内核编译成功, 引导失败.
来源: 互联网 发布时间:2015-11-25
本文导语: 我的系统环境是: debian3.1 (kernel2.4) 安装在位于 Windows XP (CPU: Intel Pentium 4) 的VMWare4.5.2 虚拟机中. 启动时显示 GNU GRUB (version 0.95) 界面. 按照 ../linux-2.6.16/linux-2.6.16/README 中的步骤进行编译安装: make config, ...
我的系统环境是: debian3.1 (kernel2.4) 安装在位于 Windows XP (CPU: Intel Pentium 4) 的VMWare4.5.2 虚拟机中. 启动时显示 GNU GRUB (version 0.95) 界面.
按照 ../linux-2.6.16/linux-2.6.16/README 中的步骤进行编译安装: make config, make, make modules_install (未 make dep). 生成了 ../linux-2.6.16/linux-2.6.16/arch/i386/boot/bzImage 等文件, 并且安装目录有 ../linux-2.6.16/linux-2.6.16/System.map 文件.
修改 /boot/grub/menu.lst, 2.6 的条目根据 debian 的进行修改. 不知道 kernel, initrd 两项修改是否正确. (没有 grub.conf 文件.)
重启虚拟机, grub 界面可以见到为 kernel 2.6 新增的条目. 选择此项启动. 出现错误:
mount: unknown filesystem type 'devfs'
modprobe: Can't open dependencies file /lib/modules/2.6.16/modules.dep (No such file or directory)
modprobe: Can't open dependencies file /lib/modules/2.6.16/modules.dep (No such file or directory)
umount: devfs: not mounted
mount: unknown filesystem type 'devfs'
umount: devfs: not mounted
pivot_root: No such file or directory
/sbin/init: 432: cannot open dev/console: No such file
Kernel panic - not syncing: Attempted to kill init!
我没有make dep, 说只是 2.6 之前内核需要这样.
#filename: /boot/grub/menu.lst
#normal debian entry
title Debian GNU/Linux, kernel 2.4.27-2-386
root (hd0,0)
kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/sda1 ro
initrd /boot/initrd.img-2.4.27-2-386
savedefault
boot
#test for kernel 2.6
title kernel.org, kernel 2.6.16-386
root (hd0,0)
kernel /boot/vmlinuz-2.6.16-386 root=/dev/sda1 ro
initrd /boot/initrd.img-2.4.27-2-386
savedefault
boot
按照 ../linux-2.6.16/linux-2.6.16/README 中的步骤进行编译安装: make config, make, make modules_install (未 make dep). 生成了 ../linux-2.6.16/linux-2.6.16/arch/i386/boot/bzImage 等文件, 并且安装目录有 ../linux-2.6.16/linux-2.6.16/System.map 文件.
修改 /boot/grub/menu.lst, 2.6 的条目根据 debian 的进行修改. 不知道 kernel, initrd 两项修改是否正确. (没有 grub.conf 文件.)
重启虚拟机, grub 界面可以见到为 kernel 2.6 新增的条目. 选择此项启动. 出现错误:
mount: unknown filesystem type 'devfs'
modprobe: Can't open dependencies file /lib/modules/2.6.16/modules.dep (No such file or directory)
modprobe: Can't open dependencies file /lib/modules/2.6.16/modules.dep (No such file or directory)
umount: devfs: not mounted
mount: unknown filesystem type 'devfs'
umount: devfs: not mounted
pivot_root: No such file or directory
/sbin/init: 432: cannot open dev/console: No such file
Kernel panic - not syncing: Attempted to kill init!
我没有make dep, 说只是 2.6 之前内核需要这样.
#filename: /boot/grub/menu.lst
#normal debian entry
title Debian GNU/Linux, kernel 2.4.27-2-386
root (hd0,0)
kernel /boot/vmlinuz-2.4.27-2-386 root=/dev/sda1 ro
initrd /boot/initrd.img-2.4.27-2-386
savedefault
boot
#test for kernel 2.6
title kernel.org, kernel 2.6.16-386
root (hd0,0)
kernel /boot/vmlinuz-2.6.16-386 root=/dev/sda1 ro
initrd /boot/initrd.img-2.4.27-2-386
savedefault
boot
|
我前几天编译过一个2.6.7版本的内核,也是在虚拟机下面实现的.
没有 grub.conf 文件: 没错,虚拟机只装了LINUX一个系统,就没有.在编译了新内核之后,就可以看到会自动生成这个文件了.
没有make dep: 呵呵,我当时也是没有用该命令,但最后编译出来的新内核还是可以很好地运行.
你是不是没有安装module-init-tools( "module-init-tools-3.0.tar.gz" and "modutils-2.4.21-23.src.rpm")
http://www.kernel.org/pub/linux/kernel/people/rusty/modules/module-init-tools-3.0.tar.gz
http://www.kernel.org/pub/linux/kernel/people/rusty/modules/modutils-2.4.21-23.src.rpm
没有 grub.conf 文件: 没错,虚拟机只装了LINUX一个系统,就没有.在编译了新内核之后,就可以看到会自动生成这个文件了.
没有make dep: 呵呵,我当时也是没有用该命令,但最后编译出来的新内核还是可以很好地运行.
你是不是没有安装module-init-tools( "module-init-tools-3.0.tar.gz" and "modutils-2.4.21-23.src.rpm")
http://www.kernel.org/pub/linux/kernel/people/rusty/modules/module-init-tools-3.0.tar.gz
http://www.kernel.org/pub/linux/kernel/people/rusty/modules/modutils-2.4.21-23.src.rpm
|
initrd /boot/initrd.img-2.4.27-2-386
sudo mkinitrd -o /boot/initrd.img-2.6.16 2.6.16 用这个命令生成新的initrd.img后,在menu.lst中替代掉,版本不一样当然不能启动了。
sudo mkinitrd -o /boot/initrd.img-2.6.16 2.6.16 用这个命令生成新的initrd.img后,在menu.lst中替代掉,版本不一样当然不能启动了。