编译内核遇到的问题请教

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
linuxcn.com
帖子: 36
注册时间: 2006-04-26 17:07

编译内核遇到的问题请教

#1

帖子 linuxcn.com » 2006-05-08 16:49

内核版本:linux-2.6.16.tar.bz2
编译过程:
mv linux-2.6.16.tar.bz2 /usr/src
tar jxvf linux-2.6.16.tar.bz2
ln -s linux linux-2.6.16
cd linux
make mrproper
make menuconfig
把LVS的支持选择上后,exit and save
make
make modules---出现一些提示说一些函数过时什么的,但是能够make过去
make modules_install
make install
最后,在/boot/grub的menu.list文件里添加
title ubuntu,kernel 2.6.16
root (hd0,0)
kernel /boot/vmlinuz-2.6.16 root=/dev/hda1
boot
默认的是这个:
title Ubuntu, kernel 2.6.12-10-386
root (hd0,0)
kernel /boot/vmlinuz-2.6.12-10-386 root=/dev/hda1 ro quiet splash
initrd /boot/initrd.img-2.6.12-10-386
savedefault
boot

重启后,选择新内核启动出错
VFS:cannot open root device "root=" or unknown-block(0,0)
please append a correct "root=" boot option
not syncing:unable to mount root fs on unknown-block(0,0)


大家帮忙
xep007
帖子: 871
注册时间: 2006-01-03 20:44

#2

帖子 xep007 » 2006-05-08 17:14

你用的文件系统是什么,ext3抑或是reiserfs,有没有把文件系统编进内核,就是选Y而不能选M。
linuxcn.com
帖子: 36
注册时间: 2006-04-26 17:07

#3

帖子 linuxcn.com » 2006-05-08 17:32

好像是ext2?
我在grub启动选择里安C进入命令模式
输入root (hd0,0)
提示我说是ext2系统?
至于不能选M,到没有注意阿
xep007
帖子: 871
注册时间: 2006-01-03 20:44

#4

帖子 xep007 » 2006-05-08 18:41

我分析的是有可能发生的一种情况。当然也许是其它问题。按理说生成了init.img文件了,是不必非得把文件系统编进内核,就是说也可编成模块。你可以先试在GRUB字符模式下调整一下内核分区位置,把boot改成具体的分区试试看。顺便说一句,ext3是ext2的扩展,一般编译内核时要把ext3也编进内核。
不过,我记得我在DEBIAN下编译内核时,用make install后,它会自动改写menu.lst的。当然,现在我在DEBIAN和UBUNTU下编译内核都是用make-kpkg kernel_image编成deb包再安装。
回复