LinuxSir.cn,穿越时空的Linuxsir!

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

LFS6.1硬盘安装完全征服

[复制链接]
 楼主| 发表于 2006-2-22 13:23:01 | 显示全部楼层
kernel /linuxz root=/dev/hda3 noinitrd
内核启动时指定的参数呀,你的/dev/initrd是个什么东东,这个我才不理解呢;)
initrd除了辅助kernel启动,别的地方无法使用,用了也是多余的。

版主:关于Initrd的讨论,咱们到我开的initrd的帖子里面跟吧。
回复 支持 反对

使用道具 举报

发表于 2006-2-22 20:50:34 | 显示全部楼层
liveCD是为了为没有host提供安装条件,但是他对文件系统的限制,使得无法从硬盘安装。
如果那个内核提供了对ext2文件系统的支持,这样不是更好嘛。光盘安装时用initramfs(最主要的是里面的Init),硬盘安装时用noinitrd,这不更符合LFS的精神嘛。

引述 http://www.linuxfromscratch.org/livecd/
Why would I want to use the LFS LiveCD?

It provides a known good host for building LFS
At times, Linux distros are built in such a way that make it difficult to successfully build LFS using that distro as a host. Their releases may even contain bugs that are really only exposed with heavy compiling, as is done when building LFS. The LiveCD has been tested thoroughly and is known to successfully build the current version of LFS without deviation.

Removes the LFS prerequisite of having a Linux distro installed on your system
To build LFS, you need to have a host Linux system with development tools. In this case, the LiveCD is the host system. This allows you to build LFS onto a completely blank machine, if you so desire.

Doubles as a rescue CD
Having a LiveCD close at hand can be a life saver if your system breaks or suddenly refuses to boot. You can boot the CD, fix the error on your local system, reboot, and voila!

Includes all sources and the LFS Book
This spares you from having to download all the packages individually, which can be quite time consuming. It also removes the need for a working internet connection.

可见 LFS 的 LiveCD 开发的原意并没有考虑用户从硬盘安装。硬盘安装这方式好像只在国内较普遍,国外不甚流行的样子。
关于制作一个通用的initrd的脚本我觉得意义不大,个人建议内核启动时使用noinitrd。
不同发行版使用的mkinitrd脚本都不同,做出的initrd格式及内容也不相同,各施各法,这也是我不喜欢initrd的原因。
回复 支持 反对

使用道具 举报

发表于 2006-2-22 21:08:41 | 显示全部楼层
相信在国外基本没有找不到 CDRW 的情况,所以单个用户也很少有这类问题。

至于这个mkinitrd这个,我只是想作一个标准的东西,人家想用也可以。只要任何一个发行版采用,就已经足够了。呵呵。
回复 支持 反对

使用道具 举报

发表于 2006-2-22 21:17:48 | 显示全部楼层
标准的mkinitrd?

你又想 re-invent。。。:ask (闪)
回复 支持 反对

使用道具 举报

发表于 2006-2-22 22:04:56 | 显示全部楼层
是的,我是想 reinvent。因为现在的都不标准,如果有那么一个大家都用的东西的话,就不会天下大乱了。(知道野心有点大,但是什么都是从头开始的,我会去尝试的。)
回复 支持 反对

使用道具 举报

发表于 2006-2-22 22:21:24 | 显示全部楼层
我看还是不要浪费精力吧,已经有人reinvent the wheel了,yaird (Yet Another InitRD)是也

yaird放弃了bash script,是用perl script写的,现已用於Debian unstable之上,很有潜力成为新的initrd标准
回复 支持 反对

使用道具 举报

发表于 2006-2-22 22:59:18 | 显示全部楼层
噢,晕死,还要在 initrd 里边装 perl,,真BT。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-22 23:10:13 | 显示全部楼层
我已经成功的通过RH9和lfslivecd-x86-6.2-pre3.iso建立了liveCD的硬盘安装环境!因为我可以进入[color="Red"]XFCE环境,而且启动过程没有提示任何错误!
不过是采用的方案二,没有使用iso里面的kernel和initramfs,比较遗憾。因为在现有的条件下,实在无法重新打造一个initramfs。RH9里面连cpio都没有,所以就只好走此下策。

1。在RH9里面我重新编译了一个2.6.12的内核,当然是打上了squashfs补丁。
2.用2.6.12内核启动,RH9的root作为rootfs.
3.在/dev/hda8(1G)创建ext2分区.并把.root.sqfs提取出来,放到了/dev/hda8里面。发现缺少proc和tmp,就在hda8上手工创建。
4。查看/etc/inittab,rc.d里面的东东,发现一切良好。并不想我猜测的init被动了手脚!reboot.
5.还是使用我先前的2.6.12内核,rw root=/dev/hda8 noinitrd mount udev,ball
6.一切就正常启动了。后来还提示选择语言等等配置,然后进入bash提示符。
7。startx,进入XFCE环境。

需要说明的是内核参数后面那个mount udev,ball,我不是很清楚干什么用的。那是我从gentoo硬盘安装里面,看来的参数。如果没有这个东东,估计系统无法启动,因为解压后的dev里面就只有2个设备。

现在我应该就可以LFS了,更安全的做法应该向lvjinhua兄那样,重做一次内核,用liveCD带过来的,版本是2.6.12-5。这样可以和/lib/modules一致,将来不会出现什么其他异常。就更完美了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-2-22 23:19:11 | 显示全部楼层

其实CD-RW也没有那么难找的:)

Post by 终极幻想
相信在国外基本没有找不到 CDRW 的情况,所以单个用户也很少有这类问题。

至于这个mkinitrd这个,我只是想作一个标准的东西,人家想用也可以。只要任何一个发行版采用,就已经足够了。呵呵。


CDRW就是买个新的也不贵啊,说实在的,我觉得从中摸索出一种方法更利于学习。
LFS就是DIY,DIY当然是没有做不到的,只有想不到的

我们有能力破解liveCD到硬盘安装,将来就有能力自己发布光盘安装包,以及光盘/硬盘通用安装包。

过程中,更加深刻的认识了squashfs:
该文件系统的确是光盘发布的好助手,800多M的root被压缩到200多M的.root.sqfs中。佩服
回复 支持 反对

使用道具 举报

发表于 2006-2-22 23:22:33 | 显示全部楼层
Post by good02xaut
CDRW就是买个新的也不贵啊,说实在的,我觉得从中摸索出一种方法更利于学习。
LFS就是DIY,DIY当然是没有做不到的,只有想不到的

我们有能力破解liveCD到硬盘安装,将来就有能力自己发布光盘安装包,以及光盘/硬盘通用安装包。

过程中,更加深刻的认识了squashfs:
该文件系统的确是光盘发布的好助手,800多M的root被压缩到200多M的.root.sqfs中。佩服


恩,研究明白了就好。:)。

squashfs 的确压缩的不错,但是可惜是只读的。
回复 支持 反对

使用道具 举报

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

本版积分规则

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