LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: lsslhym

安装gentoo失败!! 望高手帮忙解疑!!!

[复制链接]
发表于 2008-2-8 16:18:55 | 显示全部楼层
安装文档里的“root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hde3”
那一段我看不懂,不理解是什么意思。

我是自作主张,按自己的理解,直接写成 “root=/dev/sda9 vga=792”
仅此而已,别的什么都没写,启动完全没问题。

楼主不必全部照搬手册,关键要建立在理解的基础上。

不知道楼主的根分区在哪儿,如果是第三个分区,就直接写成 root=/dev/hda3,
在grub的启动菜单里,按e可以编辑,回车是保存,b是启动。

ps:按我的理解,root指定了就可以了。
至于init,一般默认的也就行了,不要随便指定。
至于什么real_root,我不懂,但可以肯定的是:一般不要设定。
不过是启动配置罢了,对于普通用户,哪用得着这么复杂?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-2-8 16:33:43 | 显示全部楼层
谢谢,晚上回家一定试试,这会在上班呢。。。。
唉,我为了研究那个grub 又把系统做成ubuntu了,安装快,晚上再装回来试试!!
回复 支持 反对

使用道具 举报

发表于 2008-2-8 16:43:04 | 显示全部楼层
感觉手册里的“root=/dev/ram0”完全没道理,呵呵
写成“root=/dev/hdax”或"root=/dev/sdax"还差不多

反正我是在理解的基础上,是非自己判断。
回复 支持 反对

使用道具 举报

发表于 2008-2-8 21:20:10 | 显示全部楼层
>感觉手册里的“root=/dev/ram0”完全没道理,呵呵

懂的少,不是你的错
但是,懂的少,还以为是别人做错了,就是你的不是了
回复 支持 反对

使用道具 举报

发表于 2008-2-9 02:33:15 | 显示全部楼层
楼主在出现那个提示后输入root分区的名称(/dev/sd*),应该就可以正常引导系统了,不用装Ubuntu,太麻烦了。

从这里试出分区名称,再编辑grub.conf文件就好了。
回复 支持 反对

使用道具 举报

发表于 2008-2-9 02:48:43 | 显示全部楼层
多谢版主批评,呵呵,偶赶紧查了下资料。
现在有了一点新的理解。

启动的时候,内核(广义上的)首先被加载到内存,也就是抽象后的文件:ramx
然而,一般人用户不会把根文件放在内存上,所以需要转到硬盘:sdax
总体说来就是root=/dev/ram0,init=/linuxrc,real_root=/dev/sdax这三个步骤。

然而默认情况下,root=/dev/ram0 init=/linuxrc 是必经之路,
即使不写,它也是这么做的(至少pc上的操作系统都是这样设计的)。

之所以这样设计,是为了有的人需要把内存当硬盘用(不写real_root):
一来提高速度;二来断电后系统就干净了,没有东西会保存下来,相当于影子系统。

所以我认为“root=/dev/ram0 init=/linuxrc real_root=/dev/sdax”还是没道理。
并不是说它有错,只是把问题复杂化了。
既然还要转,就不如直接一些,一句“root=/dev/sdax”结束。
回复 支持 反对

使用道具 举报

发表于 2008-2-9 15:49:03 | 显示全部楼层
这个……你应该弄明白文档里这样设定是出于什么目的

我这里解释一下吧
root=/dev/ram0,init=/linuxrc,real_root=/dev/sdaX
这样设置很明显是系统需要在启动的时候读入不属于内核的模块,或者是需要完成一些特殊的初始化工作
所以用内存先做一个虚拟盘,然后装入initrd文件镜像,执行其中的linuxrc脚本(在这个脚本中完成模块的初始化),再根据real_root=/dev/sdaX把根区换成真正的根区/dev/sdaX
比如当需要使用lvm作为根分区,或者使用软raid作为根分区,都需要类似这样的办法设置
Post by f.s.vivian;1814970
多谢版主批评,呵呵,偶赶紧查了下资料。
现在有了一点新的理解。

启动的时候,内核(广义上的)首先被加载到内存,也就是抽象后的文件:ramx
然而,一般人用户不会把根文件放在内存上,所以需要转到硬盘:sdax
总体说来就是root=/dev/ram0,init=/linuxrc,real_root=/dev/sdax这三个步骤。

然而默认情况下,root=/dev/ram0 init=/linuxrc 是必经之路,
即使不写,它也是这么做的(至少pc上的操作系统都是这样设计的)。

之所以这样设计,是为了有的人需要把内存当硬盘用(不写real_root):
一来提高速度;二来断电后系统就干净了,没有东西会保存下来,相当于影子系统。

所以我认为“root=/dev/ram0 init=/linuxrc real_root=/dev/sdax”还是没道理。
并不是说它有错,只是把问题复杂化了。
既然还要转,就不如直接一些,一句“root=/dev/sdax”结束。
回复 支持 反对

使用道具 举报

发表于 2008-2-9 22:10:49 | 显示全部楼层
Post by f.s.vivian;1814970
多谢版主批评,呵呵,偶赶紧查了下资料。
现在有了一点新的理解。

启动的时候,内核(广义上的)首先被加载到内存,也就是抽象后的文件:ramx
然而,一般人用户不会把根文件放在内存上,所以需要转到硬盘:sdax
总体说来就是root=/dev/ram0,init=/linuxrc,real_root=/dev/sdax这三个步骤。

然而默认情况下,root=/dev/ram0 init=/linuxrc 是必经之路,
即使不写,它也是这么做的(至少pc上的操作系统都是这样设计的)。

之所以这样设计,是为了有的人需要把内存当硬盘用(不写real_root):
一来提高速度;二来断电后系统就干净了,没有东西会保存下来,相当于影子系统。

所以我认为“root=/dev/ram0 init=/linuxrc real_root=/dev/sdax”还是没道理。
并不是说它有错,只是把问题复杂化了。
既然还要转,就不如直接一些,一句“root=/dev/sdax”结束。


你查到的资料可不怎么样哦
看看这个吧
http://blog.linux.org.tw/~jserv/archives/001954.html
看完以后包你不会再说“把问题复杂化了”
回复 支持 反对

使用道具 举报

发表于 2008-2-10 07:21:49 | 显示全部楼层
jserv 写的,果然很详细,通俗易懂,语言严谨。收藏了,谢谢老大的连接~~:)
回复 支持 反对

使用道具 举报

发表于 2008-2-11 02:06:00 | 显示全部楼层
呵呵,多谢版主。
学习中。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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