资源描述
定制自己的Linux/Ubuntu系统
过程不会太复杂(只要你认真做)
定制自己的LinuxUbuntu系统
需要的条件和资源:安装好的ubuntu系统、Ubuntu ISO映像文件。需要安装的软件(如果
你没有网络条件),假设我们将需要用到的资源放到你的home(~/ 代表你的home目录)下。。
本文整理:(第三方信息安全网)
整个过程需要在Ubuntu系统中完成,所以,接下来进入你的ubuntu系统。
1、在/mnt和~/目录下建立test和squashfs-test目录,挂载你的Ubuntu ISO映像到
/mnt/test/ 目录下(命令:sudo mount -o loop ~/ubuntu.iso /mnt/test/)。
2、挂载/mnt/test/casper/filesystem.squashfs 文件 到 /mnt/squashfs-test/ 目录下
( 命令:sudo mount -o loop /mnt/test/casper/filesystem.squashfs
/mnt/squashfs-test/)。
3、复制/mnt/test/ 下的所有文件(除casper/filesystem.squashfs文件)到 ~/test/ 目
录下(命令:sudo rsync -a --exclude=casper/filesystem.squashfs /mnt/test/ ~/test/)。
4、复制/mnt/squashfs-test/ 下的所有文件到 ~/squashfs-test/ 目录下 (命令:sudo cp
-a /mnt/squashfs-test/* ~/squashfs-test/)。
5、接下来挂载系统下的proc、sysfs、home目录到~/squashfs-test/文件下 并,为了简化
操作过程我将接下来的操作 部分写成脚本文件来执行,
保存以下#号分割符内的内容为文件(这里文件名为 chroot-squashfs),
############################ 保 存 以 下 内 容################################ #!/bin/bash
CHROOTDIR=squashfs-test
sudo mount -t proc proc $CHROOTDIR/proc
sudo mount -t sysfs sysfs $CHROOTDIR/sys
sudo mount -o bind /home $CHROOTDIR/home
sudo chroot $CHROOTDIR/ /bin/bash
############################## 结束分隔符###################################
然后运行该脚本文件./chroot-squashfs 现在你的用户名变成了root 就已经进入了要定
制的系统内,现在可以根据你自己的需要 修改或安装软件。
如果需要用到网络下载软件的话 需要将你本地系统的/etc/resolv.conf 文件 复制到要定
制的系统的/etc目录下即可连接网络,退出前清空此文件内容即可。。
6、修改完 自己的系统后,使用 exit 命令退出要定制的系统,然后进行卸载已挂载的
文件,保存以下#号分隔符内的内容为文件名为umount-squashfs文件 并执行。
############################## 保 存 以 下 内 容###############################
#!/bin/bash
CHROOTDIR=squashfs-test
sudo umount $CHROOTDIR/proc
sudo umount $CHROOTDIR/sys
sudo umount $CHROOTDIR/home
############################# 结束分隔符####################################
7、最后就是打包你已经修改完的系统了,保存以下#号分隔符内的内容为文件名为
makelivecd-squashfs 的文件 并执行./makelivecd-squashfs 等待打包完成,完成后会在
当前目录下自动生成以Myubuntu开头的.ISO映像文件。
############################# 保 存 以 下 内 容###############################
#!/bin/bash
CHROOTDIR=~/squashfs-test
TARGETDIR=~/test
sudo rm -rf filesystem.squashfs filesystem.manifest filesystem.manifest-desktop
sudo mksquashfs $CHROOTDIR ~/filesystem.squashfs
sudo cp ~/filesystem.squashfs $TARGETDIR/casper
sudo chroot $CHROOTDIR dpkg-query -W --showformat='${Package} ${Version}\n' | grep
-v deinstall > ~/filesystem.manifest
cat > /tmp/$$.control <<FOO
/casper/d
/libdebian-installer4/d
/os-prober/d
/ubiquity/d
/ubuntu-live/d
/user-setup/d
FOO
sed -f /tmp/$$.control < ~/filesystem.manifest > ~/filesystem.manifest-desktop
sudo rm -rf /tmp/$$.control
sudo cp ~/filesystem.manifest $TARGETDIR/casper
sudo cp ~/filesystem.manifest-desktop $TARGETDIR/casper
sudo rm -rf ~/md5sum.txt
cd $TARGETDIR && find . -type f -print0 | xargs -0 md5sum > ../md5sum.txt
cd ~
sudo cp ~/md5sum.txt $TARGETDIR
datum=`/bin/date +"_%Y%m%d_%H%M"`
sudo mkisofs -r -V "Myubuntu" -cache-inodes -J -l -b isolinux/isolinux.bin -c
isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o
~/LiveCD$datum.iso $TARGETDIR
############################# 结束分隔符#####################################
下面安装体验你自己亲手定制的属于自己的Ubuntu 吧!
展开阅读全文