3.5. 为多重启动系统事先分区

为您的硬盘分区仅仅指的是将您的硬盘空间切分成几块。分区之后,每一块都是独立于其余部分的单独空间。这和在一个大房子里砌几堵墙有几分相似,如果您在其中一间房间里安置家具,那么这不会对其它房间有任何影响。

如果您已经在您的机器中安装有操作系统 (Tru64 (Digital UNIX)、OpenVMS、Windows NT、FreeBSD,…) ,同时也希望把 Linux 装在同一块硬盘上,那么您就必须重新对硬盘分区。Debian 需要它自己专用的硬盘分区。它不能被安装在 Windows 或者 MacOS 的分区上。它可以与其它 Linux 系统共享一些分区,但是我们在这里不会对此进行说明。最起码,您要为 Debian 的根目录准备一个专用的分区。

通过当前的操作系统中的分区工具,您可以获知现在的分区状况。分区工具总会提供一种办法让您查看现有的分区情况,而不作任何改动。

通常情况下,改动一个已经建立文件系统的分区,会导致其中的数据信息遭到损毁。因而,您应当在重新分区之前总是先做一下备份。继续拿房子作比喻,在移动墙壁时,您最好在把挡路的家具都移开,否则就要冒家具被毁坏的危险。

如果您的计算机配有不只一块硬盘,您或许可以考虑把其中一块硬盘专门分配给 Debian 使用。这样的话,您就不用在启动安装系统前再对那块硬盘进行分区了,安装程序自带的分区程序会漂亮地完成这个任务。

若是您的机器只有一块硬盘,而且您愿意把原来的操作系统全盘替换成 Debian GNU/Linux,那么可以在启动安装系统后,待到安装时再进行分区(第 6.3.2 节 “分区与选择挂载点”)。但是,只有当您使用存储于磁带、CD-ROM 或者联网的机器上的安装系统,并从它们启动安装程序时,上面的话才适用于您的情形。试想一下:假如您用放在硬盘上的文件启动,再在安装系统中对同一块硬盘进行分区,这就会擦除那些启动文件,这时恐怕您只能祈求上苍保佑第一次就安装成功吧。在这种情况下,若要让您的机器恢复正常,至少您还可以有几个办法可选,比如原先系统的安装磁带或 CD。

倘若您的机器已经有多个分区,并且通过删除或替换它们中的一个或多个就能为安装提供足够的空间,那么您一样也可以把分区操作延后,到安装时再使用 Debian 安装程序自带的分区工具。不过,您还是应当继续读完下面的文档,因为可能会存在一些特殊的情形。比如,分区表中现有分区的顺序问题,这也许会令您不得不在安装前先分好区。

如果您的情况不属于上面任何一种,那么您需要在开始安装之前,事先为 Debian 腾出可用于 分区的空间。要是有分区是为其它操作系统准备的,您最好用该操作系统自己的分区软件来新建 这些分区。我们建议您 不要 用其它操作系统里的工具为 Debian 创建 Linux 分区。也就是说,您应当仅仅创建要保留的操作系统自身的分区。

倘若您打算在同一台机器上安装多个操作系统的话,您应当在安装 Linux 之前,先把所有其它系统都装好。Windows 和其它操作系统的安装过程可能会让您无法启动 Linux,也可能会怂恿您重新格式化不属于它们自己的分区。

尽管您可以在这些操作之后再恢复回来,也可以避免它们,但是首先安装原有的系统就能够帮您免除这些烦恼。

如果您现在有一块硬盘,这块硬盘上仅有一个分区(这是桌面电脑的通常设置),同时希望能多重启动原有的操作系统和 Debian,那么您将需要:

  1. 备份计算机里所有的数据。

  2. 从原有操作系统的安装介质(如 CD-ROM 和磁带)启动。

  3. 使用原有系统里的分区工具来新建属于原来系统的分区。为 Debian GNU/Linux 或者预留一个分区,或者腾出一块空闲空间。

  4. 把原有的操作系统安装到属于它的新分区上。

  5. 启动到原有的操作系统,以确保一切正常,再下载 Debian 安装程序的启动文件。

  6. 启动 Debian 安装程序,并继续安装 Debian。

3.5.1. Tru64 UNIX 下分区

Tru64 UNIX,前身是 Digital UNIX,更早是 OSF/1,采用的分区方式类似于 BSD 的“disk label”,它允许每个磁盘上最多八个分区。分区命名在 Linux 下从“1”到“8”,在 UNIX 下是按“字母次序”从“a”到“h”。Linux 内核 2.2 或更高的版本是“1”对应“a”,“2”对应“b”,依此类推。例如,rz0e 是在 Tru64 UNIX 中的命名,而 sda5 是在 Linux 里的名称。

Tru64 磁盘标签下的分区可以重叠。此外,如果以前磁盘在 Tru64 下使用,“c”分区要求扩展到整个磁盘(因此会覆盖其他所有的非空分区)。在 Linux 下这是 sda3 源于 sda (sdb3 对应于 sdb,等等)。然而,debian-installer 使用的 partman 分区工具当前尚不能处理重叠的分区。因此,目前不推荐在 Tru64 和 Debian 之间共享磁盘。完成安装之后,Tru64 的磁盘分区可以挂载到 Debian 之下。

另外一个约定俗成的要求是分区“a”起始于磁盘开始处,因此它总包含具有磁盘标签的引导块。如果您从该磁盘启动 Debian,您至少需要给它 2MB 空间以在存储 aboot 和内核。注意,此分区仅为兼容考虑;您千万不要将文件系统置于其上,否则会破坏数据。

我们可以,也有理由,让 UNIX 和 Linux 共享交换分区。这时就需要在该分区上使用 mkswap。因为 UNIX 将破坏 swap 标志,所以每次从 UNIX 到 Linux 重启后都要重新执行一次。您可以让 mkswap 从 Linux 的启动脚本里面运行,时间是在用 swapon -a 添加交换分区之前。

如果您想在 Linux 中挂载 UNIX 分区,注意 Digital UNIX 可以使用两种不同的文件系统类型,UFS 和 AdvFS,而 Linux 只能识别前者。

3.5.2. Windows NT 下分区

Windows NT 使用 PC 风格的分区表。如果您要处理已存在的 FAT 或 NTFS 分区,推荐使用 Windows NT 本身的工具(或者,照惯例,您可以用 AlphaBIOS 配置菜单里面的工具重新分区)。否则,真没有必要从 Windows 来分区,Linux 的分区工具可以做得更好。注意,如果您运行 NT,Disk Administrator 也许会建议您写一个“harmless signature” 到您的非 Windows 的磁盘上。千万别让它那样做,这个标志会破坏该分区上的信息。

如果您计划从 ARC/AlphaBIOS/ARCSBIOS 控制台引导 Linux,您也许需要给 MILO 一个(小的) FAT 分区。5 Mb 就足够了。如果已经安装了 Windows NT,它的 6 Mb 启动分区可以用来满足此要求。Debian lenny 不支持安装 MILO。如果您的系统上已经有 MILO,或者从其他介质安装,Debian 仍然可以从 ARC 启动。