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

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

内容摘要:在这部分中,Daniel 将带您经历为系统准备 devfs 的整个过程。阅读完本文,将可以在系统上启用 devfs;在下一篇文章里 Daniel Robbins 将介绍 devfs 最终安装的细节。

  现在,devfsd 应该编译好并可以安装了。如果您的帮助手册页存储在 /usr/man 中,输入 make install ;如果您正在使用 FHS 兼容系统,并且您的帮助手册页存储在 /usr/share/man 中,输入 make mandir=/usr/share/man install 。现在将安装 Devfsd,但还未运行,这正是我们现在要做的。

  启动新内核

  现在,继续前进,编译并安装刚刚配置好的内核。这个内核应该是您现在内核的临时替代品;它应能正常引导;并且尽管它内置了 devfs 支持,您应该觉察不出它与您现在正在运行的内核有什么差别。 一旦新内核安装完毕,重新引导系统以确保到目前为止一切工作正常。

  Devfs 配置方法

  您的系统现在已经作好了向 devfs 转换的准备,我将在下一篇文章中详细介绍。现在,是熟悉一下我们正在使用的方法的时候了。您将看到,用 devfs 启用系统可能会很棘手,尤其当您使用到 devfs 的所有优点(如持久的许可权和所有权)的时候。

  内核自动安装带来的问题

  确实有很多方法来使系统 devfs 启用。其中之一就是让内核在引导时自动将 devfs 安装到 /dev;我们将不使用此选项,尽管这样 确实是可以的。乍看起来,这种方法似乎很有意义,因为它可以保证所有 devfs 类型的设备对于所有进程都是可用的,甚至对第一个进程 /sbin/init 也是如此。然而,这种方法有一个问题。尽管 devfs 提供所有“新类型”的设备,但旧类型的设备节点却是由 devfsd 守护进程创建。 devfsd 不是由内核启动的,所以即使让内核在引导时安装 devfs ,当 /sbin/init 启动时我们仍然只会得到部分而非所有的设备节点。这就意味着为了使 devfsd 能在恰当的时间启动和运行,您必须修改系统初始化脚本。这不但棘手(因为这需要对系统启动脚本有专家级的理解),而且这种方法还存在其它问题。

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

正在加载评论...