双硬盘安装XP和Ubuntu互不影响之简易方法(4)

制定 LiveCD 可参照这个来做:https://help.Ubuntu.com/community/LiveCDCustomization

我们要做的 *.rofs 则是要把增加的内容或修改的内容分离出来,

所以可以用 unionfs 或 aufs 文件系统把制定的内容分离出来,

但unionfs与aufs好象不能嵌套使用,所以在 Live CD 环境下不能用此法,

1、安装squashfs-tools(用来压缩)

sudo apt-get install squashfs-tools

sudo modprobe squashfs

2、挂载 Live CD 文件系统

sudo mount -o loop ubuntu-*.iso /cdrom

mkdir ~/livecd

sudo mount -t squashfs -o loop /cdrom/casper/filesystem.squashfs ~/livecd

3、使用unoinfs文件系统

mkdir ~/rwfs

mkdir ~/edit

sudo mount -t unionfs -o dirs=~/rwfs=rw:~/livecd=ro none ~/edit

4、进入edit中

sudo cp /etc/resolv.conf ~/edit/etc/

sudo cp /etc/hosts ~/edit/etc/

sudo chroot ~/edit

mount -t proc none /proc

mount -t sysfs none /sys

export HOME=/root

export LC_ALL=C

5、添加软件,进行设置等:

6、打包:

rm -rf /tmp/*

rm /etc/reumount /proc

umount /syssolv.conf

umount /sys

exit

sudo mksquashfs rwfs *.rofs

aufs 就是另一个联合文件系统,可用来替代 unionfs ,(unionfs 有 bug,不好用)

它的作用就是把多个文件系统或者说是文件夹联合起来,变成一个文件系统。

所有的Live CD要正常使用,都要用到这样的文件系统,因为Live CD 是只读的,而运行系统则要写入的。

一般Live CD启动时,会从内存中取出一部分做成虚拟磁盘,与 Live CD 联合起来,这样就把运行中的数据写入在虚拟磁盘中了,

当然也可以用一个分区,或其它文件夹来联合起来,这就是Live CD能保存数据的原理。

aufs 比较成熟,很多Live CD 已经在用它。

制作*.rofs法二 (feisty中文包就是这样做出来的,呵呵)

1、先用本引导程序启动,用ubuntu.fs文件保存配置,(选用256mb就可以了)

启动后,设置网络及下载的软件源,更新软件包列表。

2、接下来就要安装或制定程序,为了把安装的程序与个人或硬件信息分开,则必须要用新的ubuntu.fs文件来保存数据。

重启到XP或可操作的系统中,把 ubuntu.fs 重命名为 01.rofs

再解压一个新ubuntu.fs文件(可根据安装程序大小来选用ubuntu.fs大小),或在Linux分区上用一个文件夹来保存数据。

3、重启,进入到ubuntu中用新立得安装程序,并设置、配置系统。

为了后面的压缩,请安装 squashfs-tools 软件。

由于是在本live CD中安装的,故你可以看到当前的效果。

清除下载的软件包: sudo apt-get clean

4、制作*.rofs ,

cd /hd_rwfs/ubuntu.fs

mksquashfs etc bin usr opt var ... /media/d_win/feisty/02.rofs

在这里要排除 hd_rofs hd_rwfs home root 文件夹,

但不知mksquashfs 的 -e 怎么没有作用,只能用上在的命令做了。

再把原来的 ubuntu.fs 重命名或删去,用新的ubuntu.fs 可做出 03.rofs 04.rofs.......

在wsky586的要求下,重新做了下,修正一个小问题,

就是第二次以后的启动,不能自己挂载相关分区,

gutsy的引导程序做好后,没怎么说明,现在说明下新功能:

就是在硬件变化时,也就是 lspci 变化时,会自动重新配置fstab和显卡驱动

很适合放在U盘上和移动硬盘上,到别人机子上可方便使用。

欢迎大家测试。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/73667f4a0ce3fffc7e871e022ba7039b.html