Next Up Previous Contents Index

2.6 硬盘分区

为了安装Red Hat Linux, 您必须为它准备硬盘空间. 这个硬盘空间必须和您的计 算机上安装的其他操作系统(如Windows, OS/2或着其他版本的Linux)所使用的硬盘空 间分开.

一个硬盘可以分割成不同的分区. 访问每个分区就象访问不同的硬盘. 每个分区甚至可以有一个类型用来表明这个分区中信息是如何存储的. 例如, DOS, OS/2, 和Linux使用不同的硬盘分区类型.

请注意: 您可以将Red Hat Linux安装在一个或多个类型为'Linux native' 的硬盘分区. Red Hat Linux还需要一个交换(swap)分区, 这个分区的类型 是'Linux swap'. 就是说安装Red Hat Linux至少需要两个硬盘分区:

以下我们将详细讨论分区的问题. 现在, 要记住Red Hat Linux需要至少两个专门的 分区, 并且您不能将Red Hat Linux安装在DOS/Windows分区!

即使您将Red Hat Linux安装在一个专门的硬盘, 或者一台不安装其他操作系统的 计算机上, 您仍需要为Red Hat Linux创建分区. 这种情况非常简单, 因为您不必为硬 盘的其他分区操心.

另一方面, 您也许希望将Red Hat Linux已经含有其他操作系统的硬盘上. 这种情况 就有一点复杂, 因为一个错误就可以毁了您现有的分区, 更不用说它含有的数据!

在安装过程中, 将提示您为Red Hat Linux创建分区. 这时, 您必须确信您有足够的 硬盘空间来创建这些分区. 让我们考察一下为Red Hat Linux分区清理空间的不同方法.

2.6.1 分区命名设计

Linux通过字母和数字的组合来标识硬盘分区, 如果您习惯于使用'C盘'来标识硬盘 分区的话, 可能会搞混. Red Hat Linux的命名设计比其他操作系统更灵活, 能表达更 多的信息. 归纳如下:

前两个字母 -- 分区名的前两个字母表明分区所在设备的类型. 您将通常看到hd(指IDE硬盘), 或sd(指SCSI硬盘).

下一个字母 -- 这个字母表明分区在哪个设备. 例如,
/dev/hda(第一个IDE硬盘) 或 /dev/sdb(第二个SCSI硬盘).

数字 -- 代表分区. 前四个分区(主分区或扩展分区)用数字14表示. 逻辑分区从5开始. 例如, /dev/hda3第一个 IDE硬盘上的第三个主分区或扩展分区;/dev/sdb6是第二个SCSI硬盘上的第 二个逻辑分区.

记住这些信息; 它会使您更容易理解设置Red Hat Linux硬盘分区.

2.6.2 重新分区的策略

在重新对您的硬盘分区时, 可能遇到三种情况:

让我们依次看一下每种情况.

2.6.2.1 使用未分区的空闲空间

在这种情况下, 已定义的分区未占有整个硬盘空间, 也就是说空闲空间不属于任何 已定义的分区. 仔细想一下, 一个未用的硬盘也属于这种情况; 不同的只是所有的 空间都不属于任何已定义的分区.

这时, 您只须简单地从未用的空间创建所需的分区.

2.6.2.2 用未使用分区的空间

去年, 您将运行Windows系统的105MB小硬盘改为1.2GM的大硬盘. 您把它分为两个 相同的分区, 您计划用C:'盘'(事实上是硬盘的第一个分区)装Windows, 用 D:'盘'(事实上是硬盘的第二个分区)收集您从网上下载的自由软件. 好, 您 现在已经用了C:但您从未在D:放过任何东西.

如果您发现您属于这种情况, 您可以使用这个未使用的分区. 这时, 您先得删除这 个分区, 然后再在这个空间创建合适的Linux分区.

2.6.2.3 用已用分区的空闲空间

这是最常见的情况. 不幸的是, 这也是最难对付的情况. 虽然您有足够的空间, 但 却属于已用的分区. 如果您买了一台有预装软件的计算机, 硬盘上很可能有一个大的 分区装有操作系统和数据.

除了加一个硬盘外, 您还有两种选择:

破坏性的重新分区 -- 您删除一个大的分区, 然后创建几个小的分区. 那个分区中的所有数据将被破坏. 这就是说必须做一次完全的备份. 为安全, 做两套 备份, 使用校验(如果您的备份软件有此功能), 在删除分区之前试着读一下 您备份的数据. 注意, 如果您删除的分区含有操作系统, 您还得重装操作系统.

在创建了小的分区之后, 您可以重装软件, 恢复数据, 然后继续安装Red Hat Linux.

非破坏性的重新分区 -- 这里, 您可以运行一个看似不可能的程序; 这个 程序可以将大分区变小而不丢失分区中的文件. 很多人发现这种方法是可靠而没有麻烦 的. 那么您该用什么软件呢? 市场上有好几种磁盘管理的软件产品; 您必须做一番调查 来找到最适合您的软件.

[Intel系统: 为了方便我们的客户, 我们提供了fips. 这是一个免费软件 可以改变FAT(文件分配表)分区的大小. 这个软件在Red Hat Linux/Intel CD-ROM上的 dosutils目录中.

请注意: 许多人已经成功地用fips重新对他们的硬盘进行了分区. 但是, 由于硬件或软件的配置各有不同, Red Hat Software不能保证fips将 在您的系统中正常运行. 因此, 将不提供fips的支持; 您将自己对此负责.

就是说, 如果您决定用fips对您的硬盘重新分区, 您一定要做 两件事:

]

2.6.3 硬盘分区和其他操作系统

如果您的Red Hat Linux分区将和其他操作系统的分区共享一个硬盘, 大多数情况下是 没有问题的. 然而, Linux和其他操作系统的某些组合必须格外小心. 您将在Red Hat Linux CD的doc/HOWTOdoc/HOWTO/mini目录中的几个HOWTO和 Mini-HOWTO文件中找到有关信息. 文件名以Linux+起始的几个Mini-HOWTO 文件特别有用.

[Intel系统: 如果Red Hat Linux/Intel将在您的计算机中和OS/2 共存, 您必须使用OS/2的分区软件来创建硬盘分区---否则, OS/2将不能识别硬盘分区. 在安装时, 不要创建任何新分区, 但要用Linuxfdisk来为您的Linux分区设置 适当的分区类型.]

2.6.4 最后的技巧: 使用LILO

[Intel系统: LILO (the LInux LOader)是在基于Intel系统上启动Red Hat Linux的最常见方式. 作为操作系统的装载程序, LILO'超然'于任何操作系统, 只使用 计算机硬盘的基本输入输出系统(BIOS). 本节描述LILO和BIOS的交互作用, 这只针对 基于Intel的系统.]

[Alpha系统: Alpha用户请跳到2.6.5节.]

[SPARC系统: SPARC用户请跳到2.6.5节.]

2.6.4.1 BIOS相关的限制会影响LILO

LILO受制于大多数基于Intel的计算机的BIOS. 特别是, 大多数BIOS不能访问两个 以上的硬盘, 不能访问任何硬盘的1023柱面以后的数据. 一些较新的BIOS没有这些限 制, 但这不是普遍的.

LILO在启动时所要访问的所有数据(包括Linux内核)都在/boot目录中, 通常是根分区(/)的一部分. 如果您想用LILO来启动您的Linux系统, 您必须 遵循以下原则:

在前两个IDE硬盘上 -- 如果您有两个IDE硬盘, /boot 必须在其中之一. 注意两个硬盘的限制也包括您主IDE控制器上的任何IDE CD-ROM. 所以, 如果您的主IDE控制器上有一个IDE硬盘和一个IDE CD-ROM, /boot 只能放在您的第一个硬盘上, 即使您在第二个IDEC控制器上还有一个硬盘.

在第一个IDE或第一个SCSI硬盘上 -- 如果您有一个IDE硬盘和数个 SCSI硬盘, /boot 必须放在IDE硬盘或者标识为0的SCSI硬盘上. 其他SCSI 标识都不行.

在前两个SCSI硬盘 -- 如果您只有SCSI硬盘, /boot 必须放在标识为0和1的硬盘上. 其他SCSI标识都不行.

分区完全在柱面1023以下 -- 不管使用以上哪一中配置, 含有/boot的分区必须完全在柱面1023以下. 如果含有/boot 的分区跨越了柱面1023, 您可能遇到这样的情况, 就是LILO开始可以工作(因为所有有 用的信息都在柱面1023以下), 但是载入一个新的在柱面1023以上的内核时就会失败.

正如前面提到的, 一些新的BIOS可能允许LILO不遵循以上原则而正常工作. 同样地, 一些LILO的灵活特性可能会使不遵循以上原则的配置正常启动Linux. 但是, 由于变数 太多, Red Hat Software将不会支持这些例外.

请注意: Disk Druid在设计时考虑了这些BIOS相关的限制. 然而, 如果您 决定使用fdisk, 您必须自己将这些限制考虑进去.

2.6.5 多少分区?

尽管您可以将Red Hat Linux装在一个单一的大分区中(根据我们已经提到的分区 原则), 但更好的主意是将它分开. 综合了单一分区的简单性和多分区的灵活性, 我 们推荐以下配置:

请注意: 如果您想安装Red Hat Linux的所有软件包的话, 您必须使用这里 指出的较大的分区尺寸. 事实上, 您可能会加大我们推荐的尺寸, 以使将来升级时不必 重新分区.

一个交换分区 -- 交换分区用来支持虚拟内存. 如果您的计算机内存小于16M, 您 必须创建交换分区. 即使您有更多的内存, 仍然推荐使用交换分区. 交换分 区的最小尺寸是您的内存的大小, 或16M(两者取大). 交换分区最大可以达到127M, 所以创建更大的交换分区是浪费空间. 注意, 您可以创建和使用一个以上的交换分区 (尽管这通常安装在大的服务器上).

一个根分区 -- 根分区是/(根目录)所在地. 它只需要启动系统所须的 文件和系统配置文件. 对于大多数系统50MB到100MB的根分区可以工作的很好.

[Intel系统: 不要忘记我们在2.6.4 节提到的LILO限制!]

一个 /usr 分区 -- /usr 是Red Hat Linux系统的许多软件的所在的地方. 根据您交换安装的包的数量, 这个分区应该在300MB到700MB之间. 如果可能, 将最大 的空间用于/usr分区. 任何您以后将要安装的基于RPM的包都会使用比其他 分区更多的/usr空间.

一个 /home 分区 -- 这是用户的home目录所在地; 它的大小取决于您的Red Hat Linux 系统有多少用户, 以及这些用户将存放多少数据.

[Alpha系统: 下面这个分区只适用于Red Hat Linux/Alpha的安装.]

一个MILO分区 -- 使用MILO启动系统的Alpha用户需要创建一个1.5MB的DOS分区, 在安装结束时MILO可以拷贝到这个分区.

另外, 您的环境可能会要求您创建一个和多个以下的分区:

一个 /usr/local 分区 -- 一般, /usr/local用来存放与其余Red Hat Linux系统 不同的软件, 如不是RPM包的软件. 它的尺寸取决于您准备存放的这些软件的数量.

一个 /usr/src 分区 -- 在一个Red Hat Linux系统中, /usr/src通常存放两样 东西:

Linux内核源程序 -- Linux内核的所有源程序都放在这, 新的内 核也在这创建. 目前, 内核源程序大概有30MB. 记住, 您可能需要更多的空间来创建 内核, 或者保存几个不同版本的内核.

RPM包的源程序 -- 如果安装了包的源程序, 文件将存放在这. 注意, 除非特别指定, 创建包也将使用在这的一个'创建目录'. here.

同样, 这个分区的尺寸也取决于您将在这安装的软件的数量.

一个 /tmp 分区 -- 就象它的名字, /tmp分区用来存放临时文件. 对于一个 大型的, 多用户的系统或者网络服务器, 专门创建一个/tmp分区是一个好主 意. 对于一个单用户的工作站, 就不必专门创建一个/tmp分区了.

一个 /var 分区 -- 您的Red Hat Linux系统将把日志写在/var/log. 打印 队列的文件通常写在/var/spool. 这只是两个写在/var的例子. 除非特别配置, /var将是根文件系统的一部分, 通常不占很多空间. 如果 您的系统有很多打印, 邮件, 或者日志, 您可以考虑专门创建一个/var分区. 一般来讲, 只有多用户或者服务器才需要专门的/var分区.

一个 /boot 分区 -- 这里提到的分区多数是针对大的系统, 这个分区则对空间很少的 小的系统很有用. 在第2.6.4节, 我们讨论了标准 PC的BIOS的一些限制, 以及这些限制如何影响LILO的启动. 所有LILO启动时需要的文 件都在/boot目录. 因为/boot中的这些文件(包括Linux内核)占 1M空间, 如果您很难为LILO要用的根分区安排100MB空间, 您可以幸运地只用5-10MB (通常不用那么多)的分区来存放/boot. 您仍然需要创建一个根分区, 但这 时它可以在您系统的任何地方 -- BIOS的限制仅适用含有/boot的分区.


Next Up Previous Contents Index