LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1457|回复: 5

求助,Grub2 下 ,新编译的内核无法启动 kernel panic - not syning: VFS: Unable to mo

[复制链接]
发表于 2010-2-20 12:26:32 | 显示全部楼层 |阅读模式
按照论坛里论坛外的方法对从 Kernel.org 下载了 2.6.2.30.10的内核编译成功,并且 dpkg -i 安装成功,可是重启进入内核之后,显示 kernel panic - not syning: VFS: Unable to mount root fs on unkown-bloack(0,0).

进入启动的编辑状态,发现和原内核相比 少了 initrd 部分,但是 /boot  目录只有原来内核 initrd 文件,没有新内核的,加了 --initrd 参数编译还是没有。

我又搜索了一下,试着修改 grub 的 menu.lst 文件,可是 grub2 的设置没有这个文件,我运行了 update-grub ,重启毛病依然,怎么回事?
发表于 2010-2-20 18:53:48 | 显示全部楼层
少了需要的ATA/SATA驱动和文件系统驱动,用mkinitramfs生成initrd.img或重新编译内核加入相应驱动
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-2-20 23:50:22 | 显示全部楼层
我把 SATA 驱动和JFS XFS 分区支持编译进了模块而不是内核, / 用的 JFS 分区,跟这个有关吗?
回复 支持 反对

使用道具 举报

发表于 2010-2-21 02:32:08 | 显示全部楼层
显然,
运行/etc/kernel/postinst.d/initramfs-tools <内核版本号>
生成/boot/initrd.img-<内核版本号>
更新grub就可以了
回复 支持 反对

使用道具 举报

发表于 2010-2-21 10:43:59 | 显示全部楼层
update-initramfs -c -k <you new kernel version> 生成initrd文件
然后允许update-grub
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-2-21 19:09:30 | 显示全部楼层
谢谢几位,按照你们的方法,解决问题了

补充一句,上面说的 initrd 命令使用的版本号应参考 /etc/lib/modules 里边文件夹的名字
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表