LinuxSir.cn,穿越时空的Linuxsir!

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

gentoo 2008安装后无法挂载root文件系统

[复制链接]
发表于 2009-1-8 12:50:49 | 显示全部楼层 |阅读模式
一.我一步一步地根据gentoo官方安装手册进行安装了,但是无法启动起来,错误信息如下:
(1)Root-NFS:No NFS server available,giving up;
(2)VFS:Unable to mount root fs via NFS,trying floppy;
(3)VFS:Cannot open root device "sda3" or unknown block(2,0);
(4)Please append a correct "root = " boot option;here are the available patitions:0b00  1048575 sr0 drivers:sr;
(5)kernel panic -not syncing:VFS:Unable to mount root fs on unknown block(2,0);

二.我的分区信息如下:
sda2  /boot     
sda3  /
sda5  swap

三.我的grub.conf
default 0
timeout 5
splashimage = (hd0,1)/boot/grub/splash.xpm.gz

title Gentoo
root (hd0,1) kernel /boot/kernel-2.6.27-gentoo-r7 root=/dev/sda3

title Windows XP
rootnoverify (hd0,0)
makeactive
chainloader +1 

我google了几遍,有人说没有把ext3文件系统,scsi选项编译进内核,但是我又重新把它们编译进内核了,问题依然~~

之后我又genkernel了一遍,gentoo能启动,所以我肯定问题出在内核上了,但是我觉得我似乎漏了什么东西~~

我又lspci查看了我的硬件信息:
RAM menmory:nVidia Corporation MCP61 Menmory Controller(rev a1)

ISA brige:nVidia Corporation MCP61 LPC Brige(rev a2)

SMBus:nVidia Corporation MCP61 Memory Controller(rev a2)

USB Controller:nVidia Corporation MCP61 USB Controller(rev a3)

PCI Brige:nVidia Corporation MCP61 PCI Brige(rev a1)

Audio Device:nVidia Corporation MCP61 High Definition Audio(rev a2)

IDE Interface:nVidia Corporation MCP61 IDE(rev a2)

Brige:nVidia Corporation MCP61 Ethernet(rev a2)

IDE Interface:nVidia Corporation MCP61 SATA Controller(rev a2)

Host brige:Advanced Micro Devices [AMD] K8 [Athlon/Opteron] HyperTransport Technology configration  

Host brige:Advanced Micro Devices Address Map

Host brige:Advanced Micro Devices DRAM Controller

Host brige:Advanced Micro Devices Miscellaneous Controller  

我实在是不知道该选择哪些驱动,不知道哪里出问题了~~有谁能帮帮我吗?
发表于 2009-1-8 13:01:05 | 显示全部楼层
贴出你的 /etc/fstab 和 内核配置文件 /usr/src/.config
回复 支持 反对

使用道具 举报

发表于 2009-1-8 13:06:39 | 显示全部楼层
root (hd0,1) kernel /boot/kernel-2.6.27-gentoo-r7 root=/dev/sda3

==>

root (hd0,1) kernel /kernel-2.6.27-gentoo-r7 root=/dev/sda3

或者把sda ==> hda 看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-1-8 13:09:46 | 显示全部楼层
Post by gogonkt;1935629
root (hd0,1) kernel /boot/kernel-2.6.27-gentoo-r7 root=/dev/sda3

==>

root (hd0,1) kernel /kernel-2.6.27-gentoo-r7 root=/dev/sda3

或者把sda ==> hda 看看
  

kernel 后面的那个东西是在/boot后面啊~~应该没有错的~
回复 支持 反对

使用道具 举报

发表于 2009-1-8 13:12:41 | 显示全部楼层
grub不报错就没错
回复 支持 反对

使用道具 举报

发表于 2009-1-8 13:37:59 | 显示全部楼层
Post by gogonkt;1935635
grub不报错就没错


如果root= 的内容不对的话,grub是不会报错的。

不过楼主给的信息不全,文件系统类型和内核编译的文件系统有没有支持查查看吧!
回复 支持 反对

使用道具 举报

发表于 2009-1-8 14:11:58 | 显示全部楼层
还有fdisk -l
回复 支持 反对

使用道具 举报

发表于 2009-1-8 14:13:35 | 显示全部楼层
查看日志文件/var/log/dmesg是就知道是hda还是sda了。
回复 支持 反对

使用道具 举报

发表于 2009-1-8 15:18:41 | 显示全部楼层
和我这两天遇到的问题是一样的。

出现这个错误信息,说明内核已经加载,genkernel成功,那么fstab之类的应该没错,如果没有root=/dev/sdax错误的低级失误,应该是无法加载根分区。

原因大概有(我只说我遇到的或知道的,可见我有多无能,一开始什么都错):

1、根分区的文件系统没编进内核,我一开始用ext3,编了一个内核,后来换reiserfs重装,忘记reiserfs还只是模块,启动失败。需要把reiserfs编进内核,也就是menuconfig的那一项标记成*而不是M。

2、使用了lvm或raid,并且根分区在其中,那就必须把相应的条目编进内核,而不是模块,并且要使用ramdisk,可以用genkernel --lvm ramdisk得到,记得在grub里要dolvm,并且调用ramdisk: /initrd initramfs-genkernel-xxxxxx

3、如果上面的都不是你的情况,估计就是sata硬盘 驱动没编辑内核了。到底是不是这种情况,可以在grub里使用/initrd项,这样启动失败的话应该进入一个可以输入命令的地方,ls /dev就可以看到有没有sdax,如果没有,说明确实之这种情况。也可是把/kernel 后root=xxx换成grub所在分区,如果出现和之前相同的错误提示,应该就是没有sata驱动。解决的办法是重新编译内核,可以参考gentoo文档中的内核编译指南,有一段专门讲这个。

4、你杀了我吧,我不知道了。可以请教高人,我碰到这些问题已经快把我搞死了。
回复 支持 反对

使用道具 举报

发表于 2009-1-8 15:23:05 | 显示全部楼层
Post by shellworld;1935620
贴出你的 /etc/fstab 和 内核配置文件 /usr/src/.config
fstab可能没必要,genkernel成功fstab应该没错。.config应该贴一下。
回复 支持 反对

使用道具 举报

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

本版积分规则

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