3. 结构

概述所有部件如何在整体结构中协同工作。使用了来自多磁盘 HOWTO 的示例。

由于这类文档既要作为学习资料,又要作为技术参考文档,我为此重新安排了结构。对于系统设计者来说,从练习目标出发来呈现信息,比从设备本身的逻辑层结构的角度来看更有用。尽管如此,如果没有计算机领域中常见的这种分层结构,本文档就不完整,因此我将在此处将其作为工作原理的介绍包含在内。

3.1. 逻辑结构

这是基于每一层如何相互访问,传统上应用程序在顶层,物理层在底层。显示用于控制驱动器的每一层之间的相互关系非常有用。
        ___________________________________________________________
        |__     File structure          ( /usr /tmp etc)        __|
        |__     File system             (ext2fs, vfat etc)      __|
        |__     Volume management       (AFS)                   __|
        |__     RAID, concatenation     (md)                    __|
        |__     Device driver           (SCSI, IDE etc)         __|
        |__     Controller              (chip, card)            __|
        |__     Connection              (cable, network)        __|
        |__     Drive                   (magnetic, optical etc) __|
        -----------------------------------------------------------
    

在上面的图表中,卷管理、RAID 和连接都是可选层。底部的 3 层是硬件。所有部分将在本文档后面详细讨论。

3.2. 文档结构

大多数用户从给定的硬件集开始,并对他们希望实现的目标以及系统应该有多大有一些计划。 这就是我将在本文档中呈现材料时采用的观点,从硬件开始,继续讨论设计约束,然后再详细介绍我发现行之有效的设计策略。 我已经在我的家用个人电脑和工作中的多用途服务器上使用了它,发现效果很好。 此外,我在此项目中的日本同事已在学术环境中的服务器上应用了相同的策略,并取得了类似的成功。

最后,在结尾处,我详细介绍了一些配置表,供您在自己的设计中使用。 如果您对此有任何意见或来自您自己设计工作的注释,我希望收到您的来信,以便可以升级本文档。

3.3. 阅读计划

当您阅读超过 50 页左右的内容时,会有很多专家甚至有经验的人不需要阅读的文本。 考虑到我们希望照顾 Linux 世界中的各种人,我们可能需要制定一个阅读计划。 同样,以下示例来自多磁盘 HOWTO。

虽然不是最大的 HOWTO,但它已经相当大了,我被要求制定一个阅读计划,以便减少阅读量。

专家

(又名精英)。 如果您熟悉 Linux 以及磁盘驱动器技术,您会在附录中找到您需要的大部分内容。 此外,建议您阅读 FAQ 和 第 12 节章节。

有经验的用户

(又名熟练用户)。 如果您熟悉计算机,您可以直接阅读关于 第 4 节的章节,并从那里继续阅读。

新手

(基本无害)。 你只需要阅读整篇文章。 对不起。 此外,还建议您阅读所有其他与磁盘相关的 HOWTO。