GeekHub

Linux打包部署神器:Linux Live Kit

这里介绍一个Linux系统打包神器Linux Live Kit,可以将安装好的Linux系统制作成一个Live CD iso或zip文件,将制作好的iso或zip文件烧写至U盘或者硬盘中,即可将原来系统环境整个制作成一个Portble的系统盘。

在使用Linux Live Kit打包你的Linux系统前,需要确认当前系统内核支持aufs和squashfs,Debian Jessie及以上均支持(对应Ubuntu 14.04 LTS及以上)

具体用法如下:

首先在官网下载Linux Live Kit压缩包,或者在github上下载该项目,由于网络问题很多时候官网和github上的该项目页面都很难访问,这里挂上一个2.3版本(当前最新版)的tar包:

然后将下载好的tar包解压到/tmp中:

sudo cp linux-live-2.3.tar.gz /tmp
cd /tmp && sudo tar xvf linux-live-2.3.tar.gz

进入解压后的文件夹,编辑config文件修改配置:

cd /tmp/linux-live-2.3
sudo vim ./config

这里简单介绍下config文件部分内容:

LIVEKITNAME=”linux”生成的文件的名称,这个无所谓,生成后也可以改
VMLINUZ=/vmlinuziso或zip文件中内核文件的位置,可以不修改
KERNEL=$(uname -r)内核版本号,一般不需要修改,直接通过uname -r获取当前内核版本号
MKMOD=”bin etc home lib lib64 opt root sbin srv usr var”需要备份的目录,根据需要适当修改,仅可填写/下一级目录
LMK=”lib/modules/$KERNEL”内核模块的路径,Debian及Ubuntu不需要修改

对config文件配置完成后,可以对MKMOD中包含路径中不需要的文件进行精简(根据需要),然后使用sudo权限运行./build,即开始对当前系统进行打包,在此之前,确保磁盘具有足够的空间(50%以上是最保险的,但是实际上打包后比系统当前占用的空间要小很多,如果可用空间不到50%也可以尝试一下):

sudo ./build

等待片刻,等build运行完毕后,可以在/tmp中找到两个脚本,本别是gen_linux_iso.sh和gen_linux_zip.sh,分别用于生成iso文件和zip文件,sudo权限运行后可以在/tmp中发现生成的linux-x86_64.iso或linux-x86_64.zip文件(名称取决于config中配置的名称),但是我这里运行gen_linux_iso.sh时,会提示:

这是由于生成的文件超过4G所导致,编辑gen_linux_iso.sh可以看到内容只有一句命令:

cd /tmp/linux-data-30122 && /usr/bin/mkisofs -o /tmp/linux-x86_64.iso -v -J -R -D -A linux -V linux -no-emul-boot -boot-info-table -boot-load-size 4 -b linux/boot/isolinux.bin -c linux/boot/isolinux.boot .

这里根据提示在mkisofs命令后加上-allow-limited-size即可解决本问题:

cd /tmp/linux-data-30122 && /usr/bin/mkisofs -allow-limited-size -o /tmp/linux-x86_64.iso -v -J -R -D -A linux -V linux -no-emul-boot -boot-info-table -boot-load-size 4 -b linux/boot/isolinux.bin -c linux/boot/isolinux.boot .

生成iso文件或zip文件后,将其写入U盘或硬盘中即可制作启动盘,这里推荐windows下的UltraISO(linux下的dd命令不可用,暂时未研究其他linux下写iso或zip镜像的工具)。

由于制作的是Live CD,因此UltraISO只能写入USB设备,如果需要直接部署在计算机的内置硬盘中,暂时没有发现更好的办法,我自己的解决方案是把硬盘拆出来插入USB硬盘盒,写入后再装回计算机中。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注