博客统计信息

51cto推荐博客
用户名:Deidara
文章数:105
评论数:310
访问量:344395
无忧币:1925
博客积分:3132
博客等级:7
注册日期:2008-06-11

安装LFS6.2 VFS:Cannot open root device "sda"
2008-09-17 15:27:11
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://deidara.blog.51cto.com/400447/99930
LFS:6.2
宿主机OS:ubuntu server 7.10

这两天一直在安装lfs6.2,安装到最后编译完内核,修改完fstab,最后安装grub后,启动lfs报错提示  
VFS:Cannot open root device "sda" or unknow-block(0,0)
Please append a correct "root=" boot option
kernel panic:VFS:Unable to mount root fs on unknown-block(0,0)
看到这个错误的时候,我快崩溃了,我等了这么久,到最后一步出现了这个错误。大概意思是没有把root文件系统所在的硬盘控制器的驱动编译到内核中去,编译的时候我选择了scsi驱动了很奇怪,于是开始goole,baidu得到结果,大多都是集中在:
Device Drivers--->SCSI device support--->SCSI disk support
Device Drivers--->SCSI device support--->SCSI low-level drivers--->BusLogic SCSI support


一、磁盘(!!!)
        在选择模块前,要先弄清楚VMware虚拟机的硬件类型,下面这个表是VMware6中自定义虚拟机配置时给出的配置,不难发现当您使用 VMware推荐向导给出的配置时,实际使用的是SCSI类型设备中的LSI Logic设备。这里要注意的一个地方是,既然有两个SCSI设备能够供其选择,那么该如何判断呢?很简单,因为他是通过内核主版本号来划分的。感兴趣的 朋友能够通过新建虚拟机Custom-Linux下Version列表中Other Linux2.6.X kernel 和 Other Linux2.4.X kernel来比较。2.4内核之前使用BusLogic,2.6内核使用的是  LSI Logic 。
       VMware 6.0:
            I/O ADapter Types
                IDE adapter: ATAPI
              SCSI adapter: BusLogic
                                 LSI Logic
这是Other Linux2.6.X kernel配置系统信息
00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)
  
这是Other Linux2.4.X kernel配置系统信息
00:10.0 SCSI storage controller: BusLogic BT-946C (BA80C30) [MultiMaster 10] (rev 01)
    现在分别介绍模块选择路径
    这个是SCSI磁盘设备模块,必须选择。
    Linux Kernel Configuration
        -> Device Drivers
            -> SCSI device support
                - > SCSI disk support
    这个是BusLogic设备驱动模块。使用这个设备的的朋友需要选取。
    Linux Kernel Configuration
        -> Device Drivers
            -> SCSI device support
              -> SCSI low-level drivers
                 -> BusLogic SCSI support
    这个是LSI Logic设备驱动模块。使用这个设备的的朋友需要选取。
    Linux Kernel Configuration
       -> Device Drivers
           -> Fusion MPT device support
                -> Fusion MPT (base + ScsiHost) drivers
    二、网卡
这个设备和内核版本没有关系,下面是系统信息参考:
02:00.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)
   
    Linux Kernel Configuration
    -> Device Drivers
        -> Networking support
            -> Ethernet (10 or 100Mbit)
                -> AMD PCnet32 PCI support

我的内核是kernel-2.6.16.27,但是安装了上面提示的
Fusion MPT (base + ScsiHost) drivers。问题依旧存在.所以我修改虚拟机的“.vmx",vmware默认的是LSI Logic,找到 ".vmx" 文件 里的scsi0.virtualDev = "lsilogic"
改为 scsi0.virtualDev = "buslogic
从新编译内核,启动系统`终于跳过了

VFS:Cannot open root device "sda" or unknow-block(0,0)
Please append a correct "root=" boot option
kernel panic:VFS:Unable to mount root fs on unknown-block(0,0)
这个 让人心烦的错误,但是虽之而来的又是一个错误。
The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an ext2 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
google查看不到什么`然后就在 grub与编译内核里找,无意中启动系统的时候发先错误 /de/sdb1 ,晕死。原来fstab 写错了,应该是/dev/sdb1,呵呵犯下的低级错误,终于进到了系统,现在的LFS 是一个非常干净的系统,需要什么功能慢慢添加吧,呵呵,用源码一个包一个包装的系统自己用着真的很舒服呢。




本文出自 “linuxer” 博客,请务必保留此出处http://deidara.blog.51cto.com/400447/99930

分享至
更多
一键收藏,随时查看,分享好友!
0人
了这篇文章
类别:linux技术圈()┆阅读()┆评论() ┆ 推送到技术圈返回首页

文章评论

 
2008-09-17 15:59:57
分析问题的思路很好哈
向LZ学习!

2008-09-17 18:10:50
互相学习~

2008-09-17 20:28:57
NB啊,怎么这么快就让守住给扫荡了

2009-12-02 17:44:51
不学,楼主分析问题的能力确实比较厉害。

2009-12-02 17:45:07
不错!!!^@^

 

发表评论            

【技术门诊】专家解析:软考重点难点及应试技巧
昵  称:
登录  快速注册
验证码:

请点击后输入验证码博客过2级,无需填写验证码

内  容: