免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3141 | 回复: 2
打印 上一主题 下一主题

ubuntu 编译内核 kernel panic: VFS unknow block(0,0) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-09-24 12:06 |只看该作者 |倒序浏览
系统是ubuntu10.04, 我编译的内核版本2.6.32-15, 现在系统运行的是2.6.32-24。config是直接copy 的 /boot/config-2.6.32-24-generic. 编译过程是: make oldconfig -> make -> make modules -> make modules_install, 然后 mkinitramfs -o /boot/initrd.img-2.6.32-15.xxxx 2.6.32-15.xxxx, 2.6.32-15.xxxx是 /lib/modules下的文件名,这个应该没错。
现在的问题是:1)我创建的这个initrd.img很大,有将近70M,而原系统的只有不到10M,同样的配置文件,内核版本也是从ubuntu的软件池下载的,为什么我的就那么大?找了好久,没找到什么mkinitramfs的具体配置文件,系统的那两个config也看了,没太多内容。
                     2) 升级grub后不能启动新内核:kernel panic: VFS: can't mount root on unknown block(0,0), 进入recover模式下可以看到,是不能识别我的硬盘。系统正常情况下:df -l,sda6 -> /boot  sda7 -> / ,而且我grub是命令行升级的,内容我也核对过,和可以启动的这个generic版本的是一样的配置。UUID我也换成了/dev/sda7了,其实是我禁用了grub使用uuid的模式,但是仍不能识别。
               我现在不能确定的是这个kernel panic是发生在哪个过程里?是我那个俄很大的initrd没有包含相应的硬盘驱动程序(SCSI?mkinitramfs据说是都已经自动包含了的?)还是grub没有识别,或者initrd那个过程已经结束,是内核编译的不对? 这个报错的源码是在init里面,这个我找到了,是不是可以说grub其实已经正确识别我的硬盘了,只是后面的initrd有问题?
                真的是要把我搞晕了,这个假期就这样过去了,还清大侠给些指点,帮我锁定问题在哪里。

论坛徽章:
0
2 [报告]
发表于 2010-09-24 12:09 |只看该作者
根据我个人能找到的资料,所有有疑问的我都改了,但依然不能识别硬盘号。我不明白的是同样的配置(包括编译kernel的配置和grub的配置),为什么原装的版本可以识别并正常启动,而我的这个却不行。真的不行,我就换成fedora了,或许真的是ubuntu有太多改掉的地方,而我这个小白搞不定。

论坛徽章:
0
3 [报告]
发表于 2010-09-24 15:42 |只看该作者
就没有人给点提示嘛?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP