kangkang's blog

标题: 微小果核重灌指引
2009-11-11 14:49:44

重灌微小果核

这个向导假定你比较喜欢命令行界面。

此向导主要译自微小果核的维基:http://wiki.tinycorelinux.com/tiki-index.php?page=Remastering

重灌微小果核可以使用微小果核自身系统或任一其它系统。

打开包裹

首先从光盘镜像中得到内核和内存初始化文件系统:

sudo mkdir /mnt/tmp
sudo mount tinycore.iso /mnt/tmp -o loop,ro
cp /mnt/tmp/boot/bzImage /mnt/tmp/boot/tinycore.gz /tmp
sudo umount /mnt/tmp

如果你准备做个光盘镜像,替代复制那两个文件为所有东西:

sudo mkdir /mnt/tmp
sudo mount tinycore.iso /mnt/tmp -o loop,ro
cp -a /mnt/tmp/boot /tmp
mv /tmp/boot/tinycore.gz /tmp
sudo umount /mnt/tmp

然后,解开内存初始化文件系统:

mkdir /tmp/extract
cd /tmp/extract
zcat /tmp/tinycore.gz | sudo cpio -i -H newc -d

现在,整个文件系统都在 /tmp/extract 目录下了,感觉轻松自由的添加、删除、修改任何你想要的东西。

插话:把现成的 tcz 包加入到文件系统中

这段是官方维基中没有的,但却是很常用的。方法如下:

mkdir /dev/shm/loop1
mount -o loop PACK.tcz /dev/shm/loop1
rsync -av /dev/shm/loop1/ /tmp/extract/

捆扎包裹

如果是在重灌版本2.x,且x小于等于1,当你添加了内核模块时,请运行:

sudo chroot /tmp/extract depmod -a 2.6.29.1-tinycore

这是因为一些连接的原因。

如果是在重灌版本2.x,且x大于等于2,当你添加了内核模块时,请运行:

sudo depmod -b /tmp/extract 2.6.29.1-tinycore

如果添加了动态链接库,请运行:

sudo ldconfig -r /tmp/extract

然后,把它捆扎起来:

cd /tmp/extract
find | sudo cpio -o -H newc | gzip -2 > ../tinycore.gz
cd /tmp
advdef -z4 tinycore.gz

其中只用 -2 是为了节约时间, advdef 的参数 -z4 大概相当于 gzip的 -11。

注: advdef 这个命令在 advcomp 包中。

现在,你拥有了一个编译好的内存初始化文件系统。 如果不从光盘启动,把它和内核复制到你的启动设备上去。

制作光盘镜像

如果你想创建一个光盘镜像:

cd /tmp mv tinycore.gz boot mkdir newiso mv boot newiso mkisofs -l -J -V TC-custom -no-emul-boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -o TC-remastered.iso newiso rm -rf newiso

现在 TC-remastered.iso 可以被烧录或在虚拟机中启动。

发表于: Linux大书