Tinycore Linux Wiki 学习日记之十、十一:重制和内部资料

这是 Tinycore Linux Wiki 的第十、十一部分:重制和内部资料。也是现在 Tinycore Linux Wiki 的最后一部分。主要是讲重制的原理、方法、自动化等。内部资料是系统启动过程和简述及一些相关的链接。

2011年10月10日 星期一

第十部分 Remastering

Remastering
http://wiki.tinycorelinux.net/wiki:remastering

解压映像文件:
cat /tmp/tinycore.gz | sudo cpio -i -H newc -d

压缩映像文件:
sudo find | sudo cpio -o -H newc | gzip -2 > ../tinycore.gz

重新压缩压缩文件:
advdef -z4 tinycore.gz

制作 ISO 文件:
mkisofs -l -J -R -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

Integrating extensions into an ISO
http://wiki.tinycorelinux.net/wiki:integrating_extensions
基本思路是把所有需要的扩展包放在 ./tce/optional 中,再重制成 ISO 映像文件。

question: 文中说这种方法将导致不能使用 AppBrowser 或 AppsAudit 添加或维护任何程序,为什么?那么 dynamic root fs remastering (http://wiki.tinycorelinux.net/wiki:dynamic_root_filesystem_remastering)的方法还可以如常使用 AppBrowser 或 AppsAudit 吗?

2011年10月11日 星期二
Custom Kernel
http://wiki.tinycorelinux.net/wiki:custom_kernel
讲怎样编译自定义内核。
两种保存加载模块的方式:在 initrd 文件(tinycore.gz)中或扩展包中(*.tcem)

question: 模块扩展包(*.tcem)在新版的 tinycore 中是否取消了?

另,文中提供了从零编译 Tinycore 的技术要点、编译 Tinycore 工具链的链接。

Bootchart
http://wiki.tinycorelinux.net/wiki:bootchart
重制 initrd.gz,在 /init 中用 “sbin/ubootchartd” 替换 “sbin/init” 从而记录系统启动状况。再用 bootchart.pl > /tmp/my_bootchart.svg 把记录转换为图片。

Remastering with ezremaster
http://wiki.tinycorelinux.net/wiki:remastering_with_ezremaster
一个专门针对 Tinycore 制作的 GUI 自动化重制工具。可以定制启动代码,3种集成扩展包的方式:把扩展包文件放在 ISO 文件中 tinycore.gz 之外,把扩展包文件放在 tinycore.gz 之内,把挂载的扩展包文件解压到 tinycore.gz 之中。

2011年10月12日 星期三
Remastering with qremaster
http://wiki.tinycorelinux.net/wiki:remastering_with_qremaster
shell 脚本写的一个自动化重制 tinycore 的命令行工具。功能与上面的 ezremaster 类似,已知大概有几点差异:增加了添加任意文件或目录进入 ezremaster 映像文件的功能;是把挂载的扩展包复制到 tinycore.gz 中,而这个脚本不挂载而是直接解压;这个工具增加了制作 Hybrid ISO 的选项;另外,ezremaster 也增加了定制一些服务等的功能。命令行工具更灵活一些,图形化工具更直观一些。

Remastering with grub2 and Optional wallpaper
http://wiki.tinycorelinux.net/wiki:grub2_iso_remastering
用 grub-mkrescue 命令重制 ISO(最简单的制作 ISO 文件的工具?)
grub-mkrescue --output=a.iso burn

Remastering with grub-legacy and Optional splashimage
http://wiki.tinycorelinux.net/wiki:grub1_iso_remastering
是使用 mkisofs 命令重制的 ISO
mkisofs -r -b elt -no-emul-boot -boot-load-size 4 -boot-info-table -o a.iso burn/
这篇 wiki 着重讲的是怎样制作一幅适合于 grub-legacy 的启动背景图片,例如:图片的细节不宜过于丰富,否则细节丢失严重;一般使用16色,保守使用14色;等等

第十一部分 Internals
The Boot Process
启动过程:

[BootLoader → bzImage → tinycore.gz] → init → inittab → init.d/rcS → tc-config → ( dhcp.sh & tce-setup & restore.sh & bootsync.sh → bootlocal.sh) → init → /root/.profile → /home/tc/.profile →→→ /usr/bin/startx → ( xsetup.sh) → /home/tc/.xsession → ( Xvesa, jwm & wbar & /home/tc/.X.d/*.* )

Links
http://wiki.tinycorelinux.net/wiki:links

一些相关的链接:
Bash Reference Manual
BusyBox
Filesystem Hierarchy Standard
Grub4Dos Guide
Linux Command Directory
Linux Manual
Parted Magic
System Rescue CD
UNetbootin