2008年3月8日星期六

一个Linux发行包的制作方法

Prayaya LiveSystem发布最新测试版本

本周Prayaya LiveSystem发布最新测试版本,可从以下地址获得:
ftp://download.inlsd.org/prayaya-livesystem710

一 说明:
1. 基于ubuntu710, 内核版本 2.6.22.14, 并重新编译支持较新的aufs和squashfs。
2. 支持硬盘,移动硬盘,U盘上启动,支持将iso放到目前所有流行分区格式上。
3. 支持X自动配置,fstab自动生成,移动硬盘或U盘自动挂载(包括ntfs分区)。
4. 支持保存用户数据,并可以自动或者手动加入ro包,增加功能。

二 安装方法:
前提是您已经安装了grub或者grbu4dos。
1. 在任意分区根目录下建一个prayaya-files目录,把下载的三个文件,Prayaya_LiveSystem-710-20071225.iso,initrd.img,vmlinuz放到该目录下。
2. 修改menu.lst,在最后加入下列几行:
title Prayaya_LiveSystem
find --ignore-floppies --set-root /prayaya-files/initrd.img
kernel /prayaya-files/vmlinuz mode=iso quiet splash init=/init root=/dev/ram lang=zh_CN dir=/prayaya-files fs_dir=prayaya-files find_ro
initrd /prayaya-files/initrd.img
boot
说明:prayaya-files这个目录可以由用户自定。 fs_dir=prayaya-files find_ro是为保存数据和增加功能所设的选项,如果只启动iso可以不用。

三 如何保存数据:
1. 在这个地址下载fs文件: ftp://download.inlsd.org/prayaya-livesystem710/fs
然后用bunzip2解开,并将后缀名改为.fs。例如:
muses@prayaya:~$ bunzip2 fs_256Mb.bz2
muses@prayaya:~$ mv fs_256Mb fs_256Mb.fs

2. 手动生成fs文件:
muses@prayaya:~$ head -c 128m /dev/zero > test.fs
muses@prayaya:~$ sudo mkfs.ext3 test.fs
muses@prayaya:~$ file test.fs
test.fs: Linux rev 1.0 ext3 filesystem data

3.fs文件放到prayaya-files目录,grub参数加上:fs_dir=prayaya-files find_ro,重新启动。这里的prayaya-files目录也可以由 用户自定。

四 , 如何增加功能:
Prayaya LiveSyetem基本系统240多M,只包含了gnome桌面和firefox,包管理,终端等几个软件, 但是可以挂载ro包增加功能。 ro包其实就是squashfs格式的压缩包,是只读类型的,再配合上面的fs文件保存数据,Prayaya LiveSyestem可以成为一个完整的系统,而且你可以随心所欲的增加你想要的功能。

ro包的制作方法:
简单的说就是:先挂在一个fs文件,那样用户所做的修改都保存在fs文件中,然后用mksquashfs压缩,再放到对应的目录就可以了。下面以制作linuxtools.ro为例。

1、启动系统,必须用一个fs文件来来保存数据,大小自定。

2、进入系统后,安装和配置软件,手动:
muses@prayaya:~$ sudo apt-get update
muses@prayaya:~$ sudo apt-get install XXX
或者用新立得安装软件。

3、下载的软件包: sudo apt-get clean

4. 重启,去掉grub参数的 fs_dir=prayaya-files find_ro,目的是不挂载刚才的linuxtools.fs文件。
清理垃圾:
muses@prayaya:~$ sudo mount linuxtools.fs test -o loop
muses@prayaya:~$ rm test/etc/udev/rules.d/70-persistent-net.rules
test/var/lib/dhcp3/dhclient.eth*.leases rm test/etc/resolv.conf

5、打包
muses@prayaya:~$ ./mksquashfs test linuxtools.ro
muses@prayaya:~$ sudo umount test
6. 把linuxtools.ro放到prayaya-files目录, 重启,grub参数加上fs_dir=prayaya-files find_ro。

利用这个方法你可以做出linuxgame.ro,eva.ro等等, 甚至将基本系统裁减成几部分,然后再联合起来,你会为这种高度的定制性惊讶!

最后,由于时间和能力有限,该版本很多细节还要改进,但是从中也能看出我们的进步。以后我们的开发人员会做一些ro包提供下载,会包含很多实用而又 有趣的工具,免除用户配置软件的麻烦。 另外,我们还将提供制作initrd,或者liveusb/cd等等工具,授之以渔,希望大家能做出个性化的linux系统。

enjoy!!



--
6G免费网络U盘: http://www.orbitfiles.com/signup/rleon

没有评论: