在这两个系统上缺省的 init 级别都是 5,但是其意义却是不同的。实际上,在 Zaurus 上,级别 3、4 和 5 从我的眼光来开并没有什么不同。有意思的是,/etc/inetd.conf 把其他系统服务都禁用了,只剩下要启动 inetd。在早期的版本中,情况更为糟糕:它启动了一个 ftp 服务器,在一个不太常见的端口上进行监听。当然,这并不需要 root 的密码,因此可以看作是一个安全漏洞。
然而,inittab/rc.d 子系统并没有干太多事情;系统启动 GUI,然后 GUI 可以执行实际的工作。
与文本终端的 Linux 系统不同,Zaurus 会显示一些消息保速用户耐心等待。需要使用 2 分钟来引导,这在 PDA 上有些太长而不好接受了。 这与 Palm PDA 相比这样很难接受,我自己的 Palm PDA 重新启动需要大约 10 秒钟。
rc.d 目录中包含了几个常见的启动脚本,这些脚本的名字都是顾名思义的:
$ ls rc5.d
S04sd S06pcmcia S15inet S23portmap S41atd S48usb _S02syslog
|
清单 2. rc5.d 目录中的文件
sd 和 pcmcia 脚本分别为 SD 和 CF 插槽提供了接口。(CF 插槽大部分就是小一点的 PCMCIA 插槽。)syslog 脚本运行的时机相当早,并且会循环使用日志文件。
如果您只看这个目录中的内容,可能就会忽略了 inittab 中的一些设置,它们可以完成了一点系统初始化的工作:
si::sysinit:/etc/rc.d/rc.sysinit
s0:24:respawn:/sbin/getty 9600 ttyS0
pd:3:respawn:/etc/sync/serialctl
# Specify program to run on tty1
1:2:respawn:/sbin/getty 9600 tty1
ln:345:respawn:survive -l 6 /sbin/launch
#qt:5:respawn:/sbin/qt
# collie sp.
sy::respawn:/sbin/shsync
|
清单 3. ininttab 项
在缺省的运行级别 5 中,有些是不会运行的 —— 不过看一下选项都有哪些是很有趣的。launch 程序会解释有关文件系统布局的内容。launch 程序从一个配置文件(根据字符串)开始运行,这个文件是 /usr/sharp/etc/launch.conf;/usr/sharp 是一个指向 /home/sharp 的链接 —— 当然,这是由于您可以修改东西的地方就只能是在 /home 中。
文件系统布局
Zaurus 上的文件系统有点奇怪。CF 卡会被自动挂载到 /mnt/usr.rom/cf 上,而 SD/MMC 卡则会被自动挂载到 /mnt/usr.rom/sd 上。令人惊讶的是,/etc 是一个到 /home/etc 的链接。只有在您意识到备份只需要备份 /home 目录就可以时,这才显得非常有意义;这样 /etc 也就备份了。
/ 和 /home 文件系统都被存储到闪存上,它被划分成了两个分区。/ 文件系统几乎都已经满了,这对于扩展软件是一个限制 —— 不过有很多文件都不需要放到这儿。
根文件系统有一些魔力;其中包含的文件所占用的空间要比根文件系统本身的空间更大!这是通过使用 JFFS2(Journaling Flash File System version 2)实现的,它会对所存储的数据进行压缩;这 21,544 个存储块可以容纳大约 60,000 个文件块。
似乎删除一些文件可以释放一些空间。例如 bash。bash 包含了很多东西,但是它并没有节省空间的模式;一个 548KB 程序对于非常拥挤的根文件系统来说并不是什么好事。
更为有趣的是,/root 目录中包含了一些关键的 tar 文件,在恢复系统时需要使用这些文件。这些 tar 文件都没有进行压缩;对这些文件进行压缩就可以释放一些空间(不过能节省的空间并没有您想象的那样多,因为 JFFS2 会自动对这些文件进行压缩。)
共3页: 上一页 [1] 2 [3] 下一页