LinuxSir.cn,穿越时空的Linuxsir!

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

做了一张LFS的安装光盘,欢迎大家测试

[复制链接]
 楼主| 发表于 2004-8-22 17:32:41 | 显示全部楼层

基于ezbuild的LFS和BLFS

主题:基于ezbuild的LFS和BLFS
    大家好!这几天我把整个LFS(包括第五、六章)和BLFS全部做成ezbuild的形式。并花了~18小时做了三遍测试,现在正式拿出来与大家分享。大家可以用CVS把整个ezbuild checkout出来,总共几百K。

cvs  -d :pserver:ncvs@gatek.3322.org:/home/ncvs   co   ezbuild


如果提示输入密码,直接敲回车即可。这个命令将在当前目录创建一个目录'ezbuild',建议大家先看看ezbuild/README和ezbuild/doc/INSTALL。
   

由于时间的原因,可能要过一阵子才有时间做livecd,所以现在如果您要使用它来做LFS,必须要有一个running host Linux system。另外,如果您已经做好了LFS,也可以用ezbuild来做BLFS。因为BLFS中包括非常多的软件包,一个人不可能全部把它们做成ezbuild的形式,所以我只做了很小的一部分,作为参考。我希望通过大家的力量来把BLFS全部做成ezbuild的形式,以便于使用。大家可以把您所做的贴在论坛上,我会及时地整理并把它们放到CVS服务器上。


Linux社区的发展需要您的参与,谢谢!
 楼主| 发表于 2004-8-22 17:43:18 | 显示全部楼层

关于时间和make check

在我的机器(VMware 4.5.2 P4 1.8G/128M)上,如果有tar-balls和patches,并且跳过所有的make check或make test,

   第五章(stage1)     ~   2小时20分钟
   第六章(stage2)     ~   3小时

事实上,在一般情况下都可以跳过make check。

另外,我也把ezbuild打包,放在
            
                 http://gatek.3322.org/ezbuild.tar.gz

方便没有安装CVS的朋友。

谢谢!
发表于 2004-8-25 15:03:01 | 显示全部楼层

我照着做了,不行啊

默认的没有fdisk和mkfs工具,对么?
我编译了一个静态的,凑合能用,不过还是很郁闷。
mkfs工具始终报错。

哥们你具体是怎么做的?

最初由 aczm 发表
我已将paulbootcd上传到 pbcd-0.02.tar.gz

http://download.linuxsir.cn/paulbootcd/README.txt有制作简介

制作过程其实很简单:
1. su
2. tar xzvf pbcd-0.02.tar.gz
3. cd pbcd-0.02
4. ./build-initrd.sh
5. ./build-root.sh
6. ./make-iso.sh

然后把iso烧到CD上, 就可以启动了(root的密码是空格).  下一步就可以根据个人需要做一些修改. 比如更换kernel, 改进rootfs, 或是将自己制作的LFS系统压缩后放到CD上备用. 以下是我用来备份LFS系统和重新安装的步骤, 不能算是安装盘, 但比较简单:
1. 先将LFS压缩:
      cd /
      mkdir /ppp
      tar cjvf /ppp/mylfs.tar.bz2 [^p]*
2.  把mylfs.tar.bz2拷到pbcd-0.02/cdimage/
3.  重复上面步骤 4, 5, 6

要恢复LFS需要以下步骤:
1. 从CD启动后先用fdisk分区, mke2fs创建文件系统.
2. 加载新分区: mount /dev/hd?? /mnt/lfs
3. 解压文件:
   cd /mnt/lfs  
   tar -xvjf /cdrom/mylfs.tar.bz2
   mkdir /mnt/lfs/proc
4. chroot /mnt/lfs ...
5. 改正/etc/fstab中的root对应的分区
6. 运行grub设置启动, 修改/boot/grub/menu.lst




大部分LINUX启动盘都用isolinux, 详情见http://syslinux.zytor.com/iso.php

PS: 刚看完雅典奥运开幕式, 太棒了!
发表于 2004-8-26 03:09:30 | 显示全部楼层
不好意思, 把重要的步骤给旯了. 多谢提醒.

pbcd中的kernel是2.2版的, glibc也不是最新的, 原作者也早已不再更新.

正因为lib下的库文件和LFS下的版本不一致, 简单的把LFS的fdisk和mkfs拷到pbcd/root/sbin下, 然后重新build-root.sh是不行的, 要想添加fdisk和mkfs, 大体上有如下几个步骤:
1. 重新编译busybox, 编译前要改变一些选项, 尤其要加上fdisk. (下载 http://www.busybox.net/)
2. 把编译好的busybox安装(不是拷贝)到pbcd/root/下, 具体见busybox中的INSTALL.
3. 用LFS的库更换pbcd/root/lib下的库, 可以用ldd检查一个程序需要什么库.
4. 拷贝LFS的mkfs到pbcd/root/sbin下.

希望我没有漏掉什么, 要注意的是root不能大于4MB, 否则运行build-root.sh时会出错.

如果嫌以上步骤太繁琐, 还有个简单的方法, 可以借鉴(用:p)楼主hongmingjian老兄做的iso中的initrd, 那里面包含fdisk和mkfs, 很好用. 成功后再在此基础上按自己的需要改进. hong兄只用到initrd, 没用rootfs. 既可以用他的initrd取代pbcd的initrd, 这样的话就用不着rootfs了, 或者也可以保留pbcd的initrd, 而用hong兄的initrd取代pbcd的rootfs.

听上去可能有点乱, 试着做做懂了原理其实很简单. 我一步步做下来学会不少东西, 挺有意思. 下面是如何从iso中取出initrd.

mkdir /mnt/iso
mount -o loop -t iso9660 lfs-20040805.iso /mnt/iso
cp /mnt/iso/isolinux/initrd.gz .
gzip -d initrd.gz
mkdir /mnt/initrd
mount -o loop -t ext2 initrd /mnt/initrd
发表于 2004-8-26 18:14:03 | 显示全部楼层
谢谢这位哥们,我这里倒是有编译好的busybox,呵呵,其实一些不用的工具就不需要编译了。

昨天那样做也是可以的,因为我的fdisk和mkfs都是静态链接的,不需要c库的支持了。

现在有关live CD的制作方面的文章很少,希望actm兄多多写一些东东出来。期待ing。
发表于 2004-8-27 11:57:46 | 显示全部楼层
hongmingjian老兄,可不可以把哪个tools.squashfs解开为tar格式的文件给大家下载。很多兄弟没有刻录机的哦。我现在已经解开了,不知道可不可以给你,放到你的服务器上给大家下载?
发表于 2004-9-2 03:21:22 | 显示全部楼层
另外,我也把ezbuild打包,放在

http://gatek.3322.org/ezbuild.tar.gz

方便没有安装CVS的朋友。


楼主的服务器又不好使了, 哪位兄弟已经下载了ezbuild.tar.gz,可不可以放到LinuxSir.Org FTP上, 多谢!
 楼主| 发表于 2004-9-2 08:22:43 | 显示全部楼层
谢谢aczm提醒,现在DNS应该可以了。
另外,http://gatek.3322.org/ezbuild.tar.gz已经太老了,请通过CVS下载最新的ezbuild。其中的lfs目录下的stage1和stage2基本没有变化,除了修改了一个隐蔽的、重要的错误。而blfs目录下的内容不是很完整,我现在有时间就做几个BLFS packages的ezbuild,已经完成了KDE中的kdebase。很久没有在LINUX下用GUI了,感觉还可以...。


谢谢!
发表于 2004-9-13 10:14:52 | 显示全部楼层
楼主的机器好难连啊   就是连不上
发表于 2004-9-13 10:25:05 | 显示全部楼层
我用 wincvs 就是连不上啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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