LinuxSir.cn,穿越时空的Linuxsir!

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

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

[复制链接]
 楼主| 发表于 2007-10-8 17:50:51 | 显示全部楼层
root 分区是reiserFS格式

to楼上的,谢谢你的配置,不过我有点看不懂,real_root=/dev/mapper/system-linux后面怎么没有跟一个数字?不是根目录对应的设备么?
我的根目录是 /dev/mapper/nvidia_abadeeih5 不过启动的时候提示该文件不存在,我在liveCD里面都是这个设备的,所以我再次肯定应该是内核编译缺少对硬件设备的支持,问题是我SATA里面勾选了nvidia SATA支持啊

还有,这个init=/linuxrc 是什么意思?你在不同位置写了两次,本来想问又没问的,现在不禁好奇心又起~
回复 支持 反对

使用道具 举报

发表于 2007-10-8 18:11:45 | 显示全部楼层
  1. Shadow ~ # cat genken
  2. #!/bin/bash
  3. genkernel --gensplash --install --gensplash=default --gensplash-res=1024x768 --dmraid --lvm2 --bootloader=grub all
复制代码

  1. Shadow ~ # cat /boot/grub/grub.conf
  2. # grub.conf generated by anaconda
  3. # #
  4. # # Note that you do not have to rerun grub after making changes to this file
  5. # # NOTICE:  You do not have a /boot partition.  This means that
  6. # #          all kernel and initrd paths are relative to /, eg.
  7. # #          root (hd0,2)
  8. # #          kernel /boot/vmlinuz-version ro root=/dev/hda3
  9. # #          initrd /boot/initrd-version.img
  10. # #boot=/dev/hda
  11. default=2
  12. timeout=10
  13. splashimage=(hd0,0)/grub/splash.xpm.gz

  14. title=Gentoo Linux (2.6.22-gentoo-r8)
  15.         root (hd0,0)
  16.         kernel /kernel-genkernel-x86_64-2.6.22-gentoo-r8 root=/dev/ram0 init=/linuxrc real_root=/dev/mapper/nvidia_fadfdbde3 dodmraid vga=791 video=vesafb:ywrap,pmipal,mtrr:4,1440x900-32@75 splash=silent,theme:default quiet CONSOLE=/dev/tty1
  17.         initrd (hd0,0)/initramfs-genkernel-x86_64-2.6.22-gentoo-r8
  18. title=Gentoo Linux (2.6.22-gentoo-r5)
  19.         root (hd0,0)
  20.         kernel /kernel-genkernel-x86_64-2.6.22-gentoo-r5 root=/dev/ram0 init=/linuxrc real_root=/dev/mapper/nvidia_fadfdbde3 dodmraid vga=791 video=vesafb:ywrap,pmipal,mtrr:4,1440x900-32@75 splash=silent,theme:default quiet CONSOLE=/dev/tty1
  21.         initrd (hd0,0)/initramfs-genkernel-x86_64-2.6.22-gentoo-r5
  22. title Windows XP
  23.         rootnoverify (hd0,1)
  24.         chainloader +1
  25. title Gentoo Linux
  26.         rootnoverify (hd0,0)
  27.         chainloader +1
  28. title Memtest86+
  29.         root (hd0,0)
  30.         kernel  /memtest86plus/memtest.bin
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-8 20:22:32 | 显示全部楼层
先谢谢楼上仁兄,
不过用了你的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~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-8 20:29:27 | 显示全部楼层
PS:以为我以前网卡声卡usb都写进内核了,看到你用M我也就没写入内核,所以用你的内核启动看到load modules里面有那些内核加载的提示,所以内核应该是正确加载了~
回复 支持 反对

使用道具 举报

发表于 2007-10-9 00:41:48 | 显示全部楼层
你进入maintainance界面之后
执行dmraid -ay显示什么?
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~
回复 支持 反对

使用道具 举报

发表于 2007-10-9 00:53:22 | 显示全部楼层
我刚才还注意到一个问题,
我怀疑你应该把那个RAID support勾上,因为这就是软RAID支持。

我的理解是如果不需要照顾windows之流,直接勾这个,用dm等等设备就可以随便你折腾,
而dmraid这个程序的功能是读取BIOS的配置来与linux内核的raid支持对话,这样保证raid的设置与BIOS一致,从而保证系统在linux和windows下看到的结果一样。
也就是说dmraid起到的差不多只是个翻译官的作用,如果你内核没有勾选raid支持,它是工作不了的。

我现在的系统是这样的:
两个硬盘接在主板上用bios里的raid0,然后之上再用lvm2建立逻辑卷,根区建立在逻辑卷上,具体来说,我结合你给的连接里那个脚本,还有lvm自己给的脚本做了一个自动制作initrd盘的脚本,很好用,一直没有问题。一般不太建议把根区建在lvm上,我主要是因为喜欢lvm的快照功能,这样可以整个系统不停机的进行备份。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-9 10:15:20 | 显示全部楼层
再次编译过内核了,现在能进入终端了,不过原来的问题依旧没有解决,郁闷到底问题出在哪里了?

终端下根目录文件都是对的,就是/dev/mapper/下依旧只有一个control文件,没有设备,

现在开机也只有一个错误提示
some local filesystem not mount

也就开机挂载不上/boot /home

但是不知道为什么能进终端,那说明内核应该支持上了吧?难道问题处在grub的参数上?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-9 10:20:49 | 显示全部楼层
如果问题在fstab那也应该在mapper下有设备才对啊

/boot单独分区挂载也这多麻烦,早知如此就让他和根目录一起好了

不知道这种情况下在这个终端里面再次编译内核会出什么问题:(

我的grub.conf


  1. title=Gentoo Linux (2.6.22-gentoo-r8)
  2.         root (hd0,0)
  3.         kernel /kernel-genkernel-x86_64-2.6.22-gentoo-r8 root=/dev/ram0 init=/linuxrc real_root=/dev/mapper/nvidia_abadeeih5 dodmraid vga=791 video=vesafb:ywrap,pmipal,mtrr:4,1680x1050-32@60 splash=silent,theme:default quiet CONSOLE=/dev/tty1
  4.         initrd (hd0,0)/initramfs-genkernel-x86_64-2.6.22-gentoo-r8
复制代码
回复 支持 反对

使用道具 举报

发表于 2007-10-9 13:13:39 | 显示全部楼层
  1. video=vesafb:ywrap,pmipal,mtrr:4,1440x900-32@75 splash=silent,theme:default quiet CONSOLE=/dev/tty1
复制代码
这些对你来说 不需要
  1. kernel /kernel-genkernel-x86_64-2.6.22-gentoo-r5 udev dodmraid dolvm2 root=/dev/ram0 init=/linuxrc lvmraid=/dev/md2 real_root=/dev/mapper/system-linux init=/lin
  2. uxrc ro rootfstype=ext4dev vga=0x318
复制代码
2个init=/linuxrc 这个说实话我也不是很理解 但是在官方文档上是这么写的 如果用1个/linuxrc 是起不来的 在mount的时候提示找不到root 我的root在lvm上
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-10-9 13:33:37 | 显示全部楼层
的确,我把liveCD的/boot内的内核相关文件和/lib/modules/内核  一起复制到硬盘上
grub里设置启动结果也是一样,local filesystem不能被挂载,设备找不到~郁闷了~


那我是不是和你一样写?只是去掉 lvmraid那个参数,同时用自己的mapper?
用boot用的是reiserfs
是不是rootfstype=reiserfs ?不知道是不是这个参数啊~
回复 支持 反对

使用道具 举报

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

本版积分规则

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