LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: blance

【解决】HOWTO Install Gentoo with NVRAID using dmraid 安装遇到的问题

[复制链接]
发表于 2007-10-9 14:51:13 | 显示全部楼层
Post by blance
先谢谢楼上仁兄,
不过用了你的config还是起不来,具体提示信息是这样的
  1. *checking root filesystem ...
  2. Failed to open the device '/dev/mapper/nvidia_abadeeih5' No such file or directory              [!!]
  3. *Filesystem couldn't be fixed :c
  4. Give root password for maintenance
  5. (or type Control-D to continue):
复制代码
我输入root密码后可以看到根目录的文件,但是/boot下是空的,/dev/mapper下只有一个control文件,没有nvidia_xxxxxx设备

我读取了你的config,看到里面并没有勾选 RAID Transport Class?
不过SCSI device support和那个SCSI disk support勾上了,还有RAID support那里也没有勾上,但是Device mapper support都勾上了,配置跟wiki的说明文档有稍微一点出路,不过应该没错吧?我理解毕竟不是硬raid,所以你清楚不是用那个就没有勾上?

既然内核我自己编译的和用你的配置文件都一样结果,看来问题又转到initrd文件上了?
我的/boot 用的是reiserFS系统,所以内核文件系统里面我把ext2改成M了,估计你用的是ext2做boot吧?难道boot用reiserFS系统initrd起不到作用?
你的配置文件我也没多大修改,基本都是默认,因为你的配置和我几乎一样,我只是cpu那里加入了smp多CPU支持,其它都用你的配置, 个人看后感觉相当清爽节俭~其它朋友自己配置内核的朋友也可以借鉴一下

我的磁盘是这样分配的
/dev/mapper/nvidia_abadeeih1 /boot
/dev/mapper/nvidia_abadeeih2 winXP用
/dev/mapper/nvidia_abadeeih3 swap
/dev/mapper/nvidia_abadeeih5 /
/dev/mapper/nvidia_abadeeih6 /home
(以上用的都是liveCD 2007.0里面路径名称)

我的fstab就是按照上面写的,里面只是用reiserfs挂载,参数 default~
/dev/mapper下只有control的话,说明还是没有驱动成功dmraid。
RAID Transport Class这个我感觉没啥用,我在单位的服务器的硬RAID卡上都没选。
SCSI device support和SCSI disk support的选择是SATA的历史原因。
RAID support是用于mdadm的软RAID的;而dmraid是半硬RAID,依赖于Device Mapper support(DM)。

我的boot也是reiserfs。

genkernel会自动生成相应的initrd。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-9 15:29:45 | 显示全部楼层
那会是什么原因呢?

这么说我越发越感觉迷茫了~

按照道理说,我们主板一样的芯片组,一样的方式组的raid,用你的内核配置文件也不行,那问题出在内核本生?
难道dodmraid没有被内核正确支持?
我用genkernel 都加了--dmraid all作参数
难道是因为新版本的dodmraid跟内核的兼容性问题?(rc14的版本)

而且wiki说用genkernel不需要加关键字  ~amd64(我的理解是可以使用testing包),只有Using a self-built kernel的时候需要加上

不过我在emerge dodmraid的时候提示需要在make.conf加上 ACCEPT_KEYWORDS="~amd64"
才能下载安装~
回复 支持 反对

使用道具 举报

发表于 2007-10-9 19:34:23 | 显示全部楼层
按照我上面贴出的配置文件,把你的配置文件贴出来。

还有fstab
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-9 22:19:50 | 显示全部楼层
我今天发现系统lvm2这个包居然没装,郁闷~

我想知道用上mapper还有哪些包需要安装的?
我目前装有dmraid lvm2(kernel-2.6.22是第一次装dmraid自动下载的) genkernel
回复 支持 反对

使用道具 举报

发表于 2007-10-10 02:32:36 | 显示全部楼层
你自己执行
dmraid -ay
显示什么结果?

我现在有点忙,等晚上有时间我看看可以不可以详细说一下。

对你的情况,你如果不需要lvm,可以不用装lvm2的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-10 08:52:52 | 显示全部楼层
#dmraid -ay

是在livceCD里面,还是chroot下,还是现在能进的环境下?
第三个试过执行后什么结果都没有
前面的环境没有试过
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-10 12:57:27 | 显示全部楼层
今天再次编译内核,终于ok了
发现有些东西还是不写进内核的好,因此特意又把部分支持做成M(模块方式),并且把ext2的文件系统加入了内核~
看来虽然没有用到ext2,但是dodmraid可能还是需要用它吧,只能这么理解了
回复 支持 反对

使用道具 举报

发表于 2007-10-10 13:00:34 | 显示全部楼层
sorry,看到你解决了,我就不需要再详细问了
编译内核的时候,最好先完全按照开始你参照的指南里来,因为很多时候你自己认为如此的事情未必是你想象的那个样子

你说的不写进内核的是什么?
我怀疑你可能是不小心把根区格成了ext2的文件系统。你执行mount命令显示什么
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-10 13:08:56 | 显示全部楼层
我后来具体看了内核配置说明,内核sata驱动有两种方式,异种在ata设置里面
另一种在sata设置里面~
我两种都用了,根据说明的意思,我把ata方式的编译成模块了,没有写进内核(以前一直都是两个都用了),其它的照旧

关于boot分区文件系统,这个错误我还不至于不知道,毕竟我格式化只用了mkreiserfs这一个命令格式化
而且在liveCD挂载进chroot的时候也有提示你挂载的分区系统格式的,还有,如果错误fstab里面也就不对了,我用的是reiserfs做参数,不是auto~
回复 支持 反对

使用道具 举报

发表于 2007-10-10 13:18:37 | 显示全部楼层
在sata里设实际上就是设置使用libata驱动

其实现在ATA那个不用编译成模块,而是可以完全不要,所有的盘都使用libata驱动

我知道你的出错原因在哪里了


原因是在于初始盘镜像文件(那个initrd),那个文件实际上是一个最小的根文件系统的镜像
那个镜像是把一个普通文件格式化成ext2文件系统后在上面装了一个最小的系统,然后把整个文件压缩而成的。你内核没编译ext2文件系统,这个文件就读不了,你的dmraid这些,就没办法在启动的时候执行
回复 支持 反对

使用道具 举报

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

本版积分规则

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