通用线程: 高级文件系统实现者指南,第 6 部分

http://tech.ddvip.com   2008年04月15日    社区交流

内容摘要:Daniel Robbins 通过向您演示如何在 Linux 2.4 下来安装这些高级文件系统回答这些问题。在这一安装过程中,Daniel 向您演示了如何使用一个初始化封装器来(最终!)将您的系统转换到“devfs mode”。

  安装初始化封装器

# cd /sbin
# cp init init.system
# cp /path/to/wrapper.sh init
# chmod +x init

  现在初始化封装器安装在正确的地方了。

  调整 umount

  通过使用初始化封装器,避免了编制大量复杂的启动脚本来进行调整。不过,我们可能还是不能避免 一个调整。既然,我们将 devfs 安装在 /dev,则 rc 脚本卸载根文件系统将可能会非常困难。幸运的是,有一个简便方法可以解决这一问题。只需要输入 cd /etc/rc.d; grep -r umount * 或 cd /etc/init.d; grep -r umount * 来 grep rc 脚本目录中所有出现 umount 的地方,具体输入哪条命令取决于 rc 脚本安装在什么地方。然后,在每个引用 umount 的脚本里,请确保调用时带有选项 -r 。虽然在各处使用 umount -r 仍然会起作用,但这一特定的 umount 的命令对于卸载根文件系统是十分重要的:)

  -r 选项告诉 umount ,如果没能成功卸载文件系统,就以只读方式重新安装。对于把根文件系统设置到一致状态来说,这已经足够了,而且即便根文件系统由于在 /dev 上的有一个安装而无法卸载(由于无法卸载打开的设备节点),这也为根文件系统重新引导做好了准备。

  现在,我们 几乎为重新引导做好了准备;但是在重新引导之前,让我们来看一下 devfsd 并且修改 /etc/devfsd.conf 以便支持兼容性设备和设备持久性。不用担心,我们离完成转换到 devfs 只有一步之遥。

  devfsd.conf

  用您喜爱的编辑器打开 /etc/devfsd.conf。下面是我推荐的 devfsd.conf 中的头四行:

  devfsd.conf,开始部分

REGISTER    .*       MKOLDCOMPAT
UNREGISTER   .*       RMOLDCOMPAT
REGISTER    .*       MKNEWCOMPAT
UNREGISTER   .*       RMNEWCOMPAT

来源:ibm    作者:Daniel Robbins    责编:豆豆技术应用

正在加载评论...