FreeBSD/alpha 5.5-RELEASE 安装说明书

The FreeBSD Project


  这篇文章对安装 FreeBSD/alpha 5.5-RELEASE 作了一些简短的说明,特别强调了如何获取 FreeBSD 发行版本。 也给出了发现并解决的故障和频繁被问到的问题的记录。


1 安装 FreeBSD

  这一章节记述了安装一个新的 FreeBSD 发行版本的过程。 这些说明重点强调了获取 FreeBSD 5.5-RELEASE 发行版本并开始安装的过程。FreeBSD 使用手册``安装 FreeBSD''一章提供了有关安装程序本身更深层次的信息, 包括一个全程截图的指南。

  如果您正在从 FreeBSD 的前一个发行版本升级,请查看 第 3 节的升级说明。


1.1 开始

  可能在安装前要做的最重要的步骤就是阅读 FreeBSD 提供的各种各样的安装文档。 与 FreeBSD 这个发行版本相关的文档的 roadmap 可以在 README.TXT 中找到,这个文件通常放在和本文件相同的位置。 大部分文档,比如发行注记和硬件兼容性列表也可以在安装程序的 Documentation 菜单中查看。

  注意 FreeBSD FAQ使用手册 的在线版本也可以在 FreeBSD 项目 Web 站点上找到,只要您拥有一条 Internet 连接。

  这份文档集合可能看起来很吓人,但是阅读它们所花费的时间很可能会节省更多的时间。 熟悉可用的资源也有助于处理安装过程中的问题。

  再好的计划有时也会出错, 所以如果您遇到麻烦请看一看 第 4 节, 包含了很多有价值的出错处理的信息。 在安装之前您也应该阅读升级过的 ERRATA.TXT 拷贝, 因为这会对您的特定发行版本的中间时期所报告的任何问题向您提出警告。

重要: 尽管 FreeBSD 会尽可能地避免偶然的数据丢失, 但是如果在安装过程中您做错了什么还是很可能会 清空您的整个硬盘。 请不要进入 FreeBSD 最后的安装菜单, 除非您事先已经对重要数据进行了充分的备份。


1.2 硬件需求

  Alpha/AXP 体系的 FreeBSD 支持的平台在 HARDWARE.TXT 中描述。

  您需要一块专门的磁盘来安装 FreeBSD/alpha。和其他操作系统共享一块磁盘现在来说是不可行的。 这块磁盘需要连接在 SRM 固件支持的 SCSI 控制器上, 或者是一块 IDE 磁盘,如果您机器的 SRM 支持从 IDE 磁盘启动的话。

  您的根文件系统必须位于可启动磁盘的第一个分区 (partition a)。

  您需要针对您的平台的 SRM 控制台固件。 有时候,可以在 AlphaBIOS (或 ARC) 固件和 SRM 之间切换。 否则的话就必须从销售商的 Web 站点下载最新的固件。

  如果您对配置 FreeBSD 的硬件不熟悉,您一定要阅读 HARDWARE.TXT 文件,它包含了 FreeBSD 支持的硬件的重要信息。


1.3 软盘映像说明

  取决于您选择如何来安装 FreeBSD,您可能需要创建几张软盘(通常是三张)来开启安装过程。 这一章节简要描述了如何创建这些软盘来从 CDROM 或者从 Internet 安装。注意一般情况下在一台支持自启动 CDROM 的机器上从 CDROM 安装 FreeBSD 的话,这一章节描述的步骤都是不需要的,可以跳过。

  对于大多数 CDROM 或者网络安装来说,您需要从 floppies/ 目录拷贝到真实软盘的只有 boot.flpkernX.flp 映像(用于 1.44MB 软盘)。

  通过网络获取这些映像很容易。只需要从 ftp://ftp.FreeBSD.org/ 或者列在使用手册的 FTP 站点一节或 http://mirrorlist.FreeBSD.org/ Web 页面中的众多镜像站点中下载 release/floppies/boot.flp 和所有的 release/floppies/kernX.flp 文件。

  拿几张空的、 新格式化过的软盘, 一张复制映像 boot.flp,另两张复制 kernX.flp 文件。 这些映像 不是 DOS 文件。 您不能把它们当作普通文件简单地复制到一张 DOS 或者 UFS 软盘上,您需要在 DOS 下使用 fdimage.exe 或者在 UNIX 下使用 dd(1) 命令把它们``image''复制到软盘上(查看您的 CDROM 或者 FreeBSD FTP 镜像上的 tools 目录)。

  例如,要从 DOS 下创建内核软盘映像,您应该这样做:

C> fdimage boot.flp a:

  假定您已经把 fdimage.exeboot.flp 复制到了某个目录里。当然,您应该对 kernX.flp 文件也这么做。

  如果您正在一台 UNIX 机器上创建启动软盘,您可能会发现:

# dd if=floppies/boot.flp of=/dev/rfd0

  或

# dd if=floppies/boot.flp of=/dev/fd0

  或

# dd if=floppies/boot.flp of=/dev/floppy

  工作正常,这取决于您的硬件和操作系统环境 (不同版本的 UNIX 对软驱有不同的命名)。


1.4 从 CDROM 或者 Internet 安装 FreeBSD

  最容易的安装方式就是从 CDROM 安装。 如果您有一个支持的 CDROM 驱动器和一张 FreeBSD 安装 CDROM,您可以直接从 CDROM 启动 FreeBSD。将 CDROM 插入驱动器并输入下面的命令来开始安装(如果需要,用合适的 CDROM 驱动器名称来取代):

>>>boot dka0

  您也可以从软盘启动安装。 您应该使用 第 1.3 节 处的安装说明从文件 floppies/boot.flpfloppies/kernX.flp 创建一系列 FreeBSD 启动软盘来开始安装。 从 SRM 控制台提示符处(>>>),插入 boot.flp 软盘并键入下面的命令来开始安装:

>>>boot dva0

  当提示时插入其他软盘, 您会停在安装程序的第一个屏幕。


1.5 详述各种安装类型

  一旦您看到了初始的安装屏幕,不管用哪种方式, 您就可以跟随各种各样的菜单提示到处浏览了。如果您以前从未使用过 FreeBSD 安装程序,建议您阅读 Documentation 子菜单还有第一个菜单概括的 ``Usage'' 说明中的文档。

注意: 如果您感到迷惑,按 F1 键查看与指定部分相关的在线文档。

  如果您以前从未安装过 FreeBSD,或者即使您安装过, 仍然强烈推荐使用``Standard''安装模式, 因为它确保您一路安装下来访问到了所有重要的要检查的条目。 如果您非常熟悉 FreeBSD 安装过程并 精确的 知道您想做什么,可以使用``Express''或者``Custom''安装选项。 如果您在升级一个现存的系统,使用``Upgrade''选项。

  FreeBSD 安装程序支持直接使用软盘、DOS、磁带、CDROM、FTP、NFS 和 UFS 分区来作为安装介质。下面是从每种类型的介质安装的更深入的提示。

  一旦安装过程结束,您将可以在 SRM 提示符处键入类似这样的命令来启动 FreeBSD/alpha:

>>>boot dkc0

  这告知固件从指定的硬盘启动。To 查找您机器上硬盘的 SRM 名称,使用 show device 命令:

>>>show device
dka0.0.0.4.0               DKA0           TOSHIBA CD-ROM XM-57  3476
dkc0.0.0.1009.0            DKC0                       RZ1BB-BS  0658
dkc100.1.0.1009.0          DKC100             SEAGATE ST34501W  0015
dva0.0.0.0.1               DVA0
ewa0.0.0.3.0               EWA0              00-00-F8-75-6D-01
pkc0.7.0.1009.0            PKC0                  SCSI Bus ID 7  5.27
pqa0.0.0.4.0               PQA0                       PCI EIDE
pqb0.0.1.4.0               PQB0                       PCI EIDE

  这个例子来自于一台 Digital Personal Workstation 433au, 显示表明有三个磁盘设备连接在机器上。第一个是叫做 dka0 的 CDROM,另外两个是分别叫做 dkc0dkc100 的硬盘。

  您可以用 -file-flags 选项指定加载哪个内核文件以及使用什么样的启动参数,例如:

>>> boot -file kernel.old -flags s

  要让 FreeBSD/alpha 自动启动,使用这些命令:

>>> set boot_osflags a
>>> set bootdef_dev dkc0
>>> set auto_action BOOT

1.5.1 从网络 CDROM 安装

  如果您只希望从本地 CDROM 驱动器安装,可以查看 第 1.4 节。如果您的系统上没有 CDROM 驱动器,又希望使用有网络连接的另一个系统上的 CDROM 驱动器中的 FreeBSD 发行 CD,也有几种方式可以实现:

  • 如果您能够直接通过 FreeBSD 机器上的 CDROM 驱动器 FTP 安装,这很容易:保证有一台 FTP 服务器正在运行,然后只要把下面的几行添加到密码文件中 (使用 vipw(8) 命令):

    ftp:*:99:99::0:0:FTP:/cdrom:/sbin/nologin
    

    在您要运行安装的机器上,到 Options 菜单并设定 Release Name 为 any。然后您可以选择一种 FTP 媒介类型并在 ftp 站点目录中选定``URL''后键入 ftp://machine

    警告: 这会允许本地网络(或 Internet) 上的任何人和这台机器建立 ``匿名 FTP'' 连接,这可能不是所希望看到的。

  • 如果希望通过 NFS 将 CDROM 直接导出给其他机器来进行安装, 您需要首先在 /etc/exports 文件中添加对应的项目 (在有 CDROM 驱动器的那台机器上)。 下面的例子将允许 ziggy.foo.com 在安装过程中直接通过 NFS 挂接 CDROM:

    /cdrom          -ro             ziggy.foo.com
    

    当然, 带 CDROM 的那台机器必须配置为 NFS 服务器, 如果您不知道如何完成其配置, 则 NFS 对您来说可能并不是最佳的选择, 除非您打算仔细阅读 rc.conf(5) 并配置它。 如果顺利的话, 将可以通过输入: cdrom-host:/cdrom 作为在目标机器 NFS 安装过程的参数, 例如 wiggy:/cdrom


1.5.2 从软盘安装

  如果由于硬件不支持, 或者您喜欢把简单的问题复杂化而不得不从软盘安装, 您需要首先准备一些空白的软盘。

  首先, 按照 第 1.3 节 所介绍的过程来制作启动盘。

  然后, 仔细阅读 第 2 节 并要特别注意 ``发行版本所采用的格式'' 一节, 因为它介绍了您需要复制到软盘上的文件, 以及可以放心地跳过的文件。

  接下来您需要至少准备足够多的能放下 bin 目录里文件的 1.44MB 软盘。 如果您需要在 DOS 下准备这些软盘, 则 必须 使用 MS-DOS 的 FORMAT 命令来格式化它们。 如果您使用 Windows, 则可以使用 Windows 文件管理器 的格式化命令。

重要: 通常, 软盘是 ``在出厂前格式化过的''。 虽然这很方便, 但过去许多用户的问题报告都与没有格式化磁盘有关。 建议您自行格式化一下, 以确认没有问题。

  如果您正在从另一个 FreeBSD 机器上制作需要的软盘, 格式化仍然是一个好习惯, 只是您并不需要在每张软盘上都放一个 DOS 文件系统。 您可以使用 disklabel(8) newfs(8) 这两个命令来在软盘上制作 UFS 文件系统, 使用下面介绍的命令:

# fdformat -f 1440 fd0
# disklabel -w fd0 floppy3
# newfs -i 65536 /dev/fd0

  在以 DOS 或 UFS 格式化过软盘之后, 还需要将文件复制到上面。 发布文件的大小是经过精心准备的, 因此每张软盘都能够放下一个发布文件。 每一个发布包的文件应该放到它自己的子目录中, 例如: a:\bin\bin.inf, a:\bin\bin.aa, a:\bin\bin.ab, ...

重要: bin.inf 文件需要放到 bin 发布集的第一张软盘上, 因为安装文件需要读取它以了解在将发布包重组时还需要获取多少个文件块。 当把发布放到软盘上时, distname.inf 文件 必须 和发布集的第一块放在一起。

  一旦您进入了安装程序的 Media 提示, 选择 ``Floppy'' 之后您将得到相应的提示。


1.5.4 从 QIC/SCSI 磁带安装

  当从磁带安装时, 安装程序预期安装文件是 tar 到上面的, 因此把您感兴趣的安装包复制出来之后, 简单地使用 tar(1) 把它们放到磁带上就可以了:

# cd /where/you/have/your/dists
# tar cvf /dev/sa0 dist1 .. dist2

  当您进行安装时, 您应该确认临时目录 (将提示您选择它) 中有足够放下 完整的 磁带内容的空间。 由于磁带不支持随机访问, 这种方式需要很多临时存储。 您需要准备写到磁带上那样多的临时存储空间。

注意: 当开始安装时, 磁带应该在从软盘启动 之前 放进磁带机。 如果不这样做, 安装程序的 ``探测'' 操作可能会找不到它。

  现在按照 第 1.3 节 的描述制作安装软盘并继续安装就可以了。


1.5.5 通过网络使用 FTP 或 NFS 安装

  按照第一节的说明制作引导盘之后, 您可以使用三种不同的连接方式来继续安装过程: 串口连接、 并口连接, 或以太网。


1.5.5.1 串口

  SLIP 支持非常原始, 而且基本上限于硬连线的连接, 例如在两台计算机之间的串口电缆。 这类连接必须是直接连好的, 因为 SLIP 安装目前并不提供拨号能力。 如果您需要使用调制解调器来拨号或需要在连接之前进行其它交互, 则应使用 PPP 来代替它。

  如果您使用 PPP, 一定要确认您手头有 Internet 服务提供商的 IP 地址和 DNS 信息, 因为您在安装的开始阶段需要它们。 您还需要知道自己的 IP 地址, 尽管 PPP 支持动态地址协商, 并能够直接从您的 ISP 获取这些信息, 如果他们支持这样做的话。

  最后您还需要了解在您的 PPP 拨号服务上如何使用一些 ``AT 命令'' 来进行拨号, 因为 PPP 拨号程序只提供了非常简单的终端仿真程序。


1.5.5.2 并口

  如果有可用的到另一台 FreeBSD 或 Linux 机器的连接, 您也可以考虑通过 ``laplink'' 风格的并口电缆来安装。 通过并口连接的速度通常要比串口电缆 (通常最多 50k/秒) 要快的多, 因此能够让您更快地完成安装。 当使用点对点的并口电缆连接时通常并不需要 ``真实的'' IP 地址, 一般来说您可以在连接的两端使用 RFC 1918 风格的地址 (例如 10.0.0.110.0.0.2, 等等)。

重要: 如果您的 PLIP 另一端使用的是 Linux, 则还需要在 TCP/IP 设置界面的``extra options for ifconfig'' 中指定 link0, 以便兼容 Linux 中略有不同的 PLIP 协议。


1.5.5.3 以太网

  FreeBSD 支持绝大多数常见的以太网卡, 它支持的网卡列表作为 FreeBSD 硬件说明 (参见 Documentation 菜单中的 HARDWARE.TXT 或启动盘和 CDROM 的顶级目录)。 如果您使用的是某种被支持的 PCMCIA 网卡, 则还应确认它在笔记本启动 之前 就已经插好了。 不幸的是, FreeBSD 目前还不支持在安装过程中 ``热插'' PCMCIA 卡。

  同时还需要知道您在局域网上的 IP 地址, 子网的 netmask 值和机器名。 您的系统管理员会告诉您在您的网络上所需要的值。 如果您想通过名字而不是 IP 地址来访问其它机器, 则还需要一个域名服务器, 而且可能还需要网关的地址 (如果使用 PPP, 则是您提供商的 IP 地址) 才能够访问它。 如果您打算通过 HTTP 代理来完成 FTP 安装, 您还需要代理服务器的地址。

  如果您不知道这些问题的答案, 您可能需要 首先 联系系统管理员, 然后才能开始安装。 在已有网络上使用随便选择的 IP 地址和子网掩码几乎肯定无法正常工作, 而且您的管理员可能会给您上人生一课。

  一旦您的网络连接能够使用, 就可以继续通过 NFS 或 FTP 来完成安装了。


1.5.5.4 NFS 安装提示

  NFS 安装相当的简单: 您只需将 FreeBSD 的安装文件复制到服务器上的某个目录, 并在选择 NFS 介质时给出这个目录即可。

  如果服务器只支持来自 ``特权端口'' 的访问 (这是 Sun 和 Linux 工作站上通常的默认情形), 您可能需要在安装之前在 Options 菜单中设置这个选项。

  如果您的网卡质量很差并造成数据传输迟缓, 您可能还需要调整一些 Options 选项。

  为了让 NFS 安装能够正常进行, 服务器还必须支持 ``子目录挂接 (subdir mounts)'', 例如如果您的 FreeBSD 安装包目录在 wiggy:/usr/archive/stuff/FreeBSD 中, 则 wiggy 必须允许直接挂接 /usr/archive/stuff/FreeBSD, 而不仅仅是 /usr/usr/archive/stuff

  在 FreeBSD 的 /etc/exports 文件中可以通过 -alldirs 选项来控制它。 在其它 NFS 服务器上可能有不同的写法。 如果您收到了来自服务器的 Permission Denied 消息, 通常是因为您没有启用这一特性导致的。


1.5.5.5 FTP 安装提示

  FTP 安装可以通过从任何包含足够新版的 FreeBSD 的镜像站点来完成。 安装过程中您可以从 FTP 站点菜单中选择遍布全球的几乎每一个官方的镜像站点来完成安装。

  如果您正从某个没有在这里列出的 FTP 站点安装, 或您无法正确地配置域名解析服务器, 您也可以通过在菜单中选择 ``URL'' 来指定自己的 URL。 URL 可以包括一个域名或 IP 地址, 因此当没有域名解析服务器时, 您可以用类似下面的 URL 来完成安装:

ftp://216.66.64.162/pub/FreeBSD/releases/alpha/4.2-RELEASE

  您可以从三种 FTP 安装方式中选择合适的:

  • FTP: 这种方式使用标准的 ``主动 (Active)'' 传输方式, 此时服务器将主动发起到客户机的数据连接。 在存在防火墙的环境中通常这会无法正常工作, 但与不支持被动模式的较老的 FTP 服务器配合时它是最佳选择。 如果您使用被动模式时连接挂起, 请尝试这个选项。

  • FTP Passive: 这将设置 FTP ``被动 (Passive)'' 模式, 它将阻止服务器打开到客户机的连接。 这个选项对于通过不允许连入到随机端口的防火墙接入的用户来说, 是最佳的选择。

  • FTP via an HTTP proxy: 这个选项指示 FreeBSD 使用 HTTP 连到一个代理商完成所有的 FTP 操作。 代理服务器将翻译所有的请求, 并把它们发给 FTP 服务器。 这允许用户通过完全不允许 FTP, 但提供了 HTTP 代理的防火墙连接。 除了 FTP 服务器之外, 您还必须指定代理服务器的主机名。

    极端情况下您可能有不通过 HTTP 的 FTP 代理服务器, 您可以把 URL 指定为下面的样子:

    ftp://foo.bar.com:端口/pub/FreeBSD
    

    上面的 URL 中, 端口 是 FTP 代理服务器的端口号。




1.5.6 串口控制台用户提示

  如果您想在只有串口的机器上安装 FreeBSD (例如, 在没有或不想购买 VGA 卡时), 请按照下面的步骤完成安装:

  1. 连接某种 ANSI (vt100) 兼容的终端或终端仿真程序到您打算安装 FreeBSD 的计算机的 COM1 口。

  2. 拔掉键盘 (是的, 这是正确的!) 然后尝试从软盘或安装 CDROM 启动。 启动时不要插键盘。

  3. 如果您在串口控制台上没有得到任何输出, 请重新插上键盘。 如果您正从 CDROM 启动, 在听到嘟嘟声时立即 步骤 5

  4. 如果从软盘引导, 当软驱不再动作时, 插入第一张 kernX.flp 盘并按 Enter。 当软驱不再动作时, 插入下一张 kernX.flp 盘并按 Enter, 重复直到您已经插入了所有的 kernX.flp 盘。 当磁盘动作结束时, 再次插入 boot.flp 软盘并按 Enter

  5. 一旦听到嘟嘟声, 按数字 6, 并输入

    boot -h
    

    您现在一定可以从串口看到一切。 如果这样还无法正常工作, 请检查您的串口电缆, 以及终端仿真程序或实际的终端设备的设置。 应该设置为 9600 波特, 8 数据位, 无奇偶校验位。


1.6 Alpha/AXP 体系结构用户的疑问与解答

1.6.1. 我能从 ARC 或 Alpha BIOS 控制台启动吗?
1.6.2. 救命啊! 我没有足够的磁盘空间了! 我需要把所有的数据都删掉吗?
1.6.3. 我能挂接 Compaq Tru64 或 VMS 扩展分区吗?
1.6.4. 是否可以直接执行 Compaq Tru64 (OSF/1) 的可执行文件?
1.6.5. 那么是否可以执行 Linux 可执行文件呢?
1.6.6. 那么 NT Alpha 的可执行文件呢?

1.6.1. 我能从 ARC 或 Alpha BIOS 控制台启动吗?

不能。 同 Compaq Tru64 和 VMS 类似, FreeBSD 只能从 SRM 控制台启动。

1.6.2. 救命啊! 我没有足够的磁盘空间了! 我需要把所有的数据都删掉吗?

很不幸, 是的。

1.6.3. 我能挂接 Compaq Tru64 或 VMS 扩展分区吗?

不, 目前还不能。

1.6.4. 是否可以直接执行 Compaq Tru64 (OSF/1) 的可执行文件?

FreeBSD 能够通过 emulators/osf1_base port/package 很好地运行 Tru64 应用程序。

1.6.5. 那么是否可以执行 Linux 可执行文件呢?

FreeBSD 可以运行 AlphaLinux 可执行文件, 但需要配合 emulators/linux_base port/package。

1.6.6. 那么 NT Alpha 的可执行文件呢?

FreeBSD 无法直接执行 NT 应用程序, 尽管它能够挂接 NT 分区。


2 发行版本所采用的格式

  典型的 FreeBSD 发布目录的样子和下面列出的类似 (具体细节可能随版本、 硬件架构和其他因素而有微小变化):

ERRATA.HTM      README.TXT      compat1x        dict            kernel
ERRATA.TXT      RELNOTES.HTM    compat20        doc             manpages
HARDWARE.HTM    RELNOTES.TXT    compat21        docbook.css     packages
HARDWARE.TXT    base            compat22        filename.txt    ports
INSTALL.HTM     boot            compat3x        floppies        proflibs
INSTALL.TXT     catpages        compat4x        games           src
README.HTM      cdrom.inf       crypto          info            tools

  这些文件也可以在多碟组的第一张 CDROM 上找到, 只是格局略有不同。 在多数平台上, 安装 CDROM 在安装包文件之外, 也提供了一个 ``现场文件系统''。 现场文件系统, 对于修复或排出现有的 FreeBSD 安装的问题非常有用 (参见 第 4 节 以了解如何完成这项工作)。

  对于无法从 CDROM 介质引导系统 (但可以通过其它手段来读取 CDROM) 的用户来说, 应关注一下 floppies 目录。 很容易从 floppies 提供的文件来自行制作 1.44MB 引导盘 (参见 第 1.3 节 以了解如何这样做), 并用它来开始从 CDROM、 FTP, 或者 NFS 的安装。 在安装过程中所需要的其他数据, 将自动地根据您的选择获得。 如果您之前从未安装过 FreeBSD, 则应完整地阅读这份文档 (安装指引)。

  如果您在尝试进行某种其他类型的安装, 或对于发布目录是如何组织的感到好奇, 请参考下面的说明以了解进一步的内容:

  1. *.TXT*.HTM 文件包含了文档 (举例来说, 这份文档可以在 INSTALL.TXTINSTALL.HTM 中找到), 您应该在开始安装之前阅读它们。 *.TXT 文件是普通的文本文件, 而 *.HTM 文件则是 HTML 文件, 可以使用几乎任何一种 Web 浏览器来阅读。 某些发布可能还包其他格式的文档, 例如 PDF 或 PostScript。

  2. docbook.css 是层次样式表 (CSS) 文件, 它会被 Web 浏览器用以完成 HTML 文档的排版。

  3. base, catpages, crypto, dict, doc, games, info, manpages, proflibs, 以及 src 这些目录中包含了 FreeBSD 本身的发布版本组件, 它们被分割为更小的文件, 以便放进软盘中 (如果需要的话)。

  4. compat1x, compat20, compat21, compat22, compat3x, 以及 compat4x 目录包含了用于与先前版本兼容的文件, 它们以单个的 gzip 压缩的 tar 文件的形式发布 - 在安装过程中或之后可以通过 install.sh 脚本来安装它们。

  5. floppies/ 子目录中包含了安装用的软盘镜像; 关于它们的更多信息可以在 第 1.3 节 找到。

  6. packagesports 目录提供了 FreeBSD 的 Packages 和 Ports Collections。 Packages 可以从其目录中通过下面的命令安装:

    #/stand/sysinstall configPackages
    

    Packages 也可以通过将 packages/ 下的文件名交给 pkg_add(1) 命令来完成。

    Ports Collection 可以通过与其他组件相同的方法来安装, 解压缩后它需要大约 190MB 的磁盘空间。 关于 ports collection 的更多资料可以在 http://www.FreeBSD.org/ports/ 或本地的 /usr/share/doc/handbook 找到, 当然, 后者的前提是您安装了 doc 发布。

  7. 最后, tools 目录中提供了各种用以测试磁盘尺寸、 安装引导管理器等的 DOS 工具。 这些工具纯粹是可选的, 提供它们是为了方便用户。



  典型的发布目录 (举例来说, info 发布) 在内部应该是这样:

CHECKSUM.MD5    info.ab         info.ad         info.inf        install.sh
info.aa         info.ac         info.ae         info.mtree

  CHECKSUM.MD5 文件包含了每个文件的 MD5 签名。 这主要是为了手工检测数据是否有损坏用的, 实际的安装过程并不会用到它。 info.a* 文件是分割过的经过 gzip 压缩的 tar 文件, 其内容可以通过下面的命令来显示:

# cat info.a* | tar tvzf -

  在安装过程中, 这些文件会被自动地重组并根据需要展开。

  info.inf 文件也是必要的, 因为它会被安装程序读取以了解需要为安装包复制多少片。 当把安装包放到软盘上时, .inf 文件 必须 放在每一个安装包的第一张软盘上!

  info.mtree 文件是另一个供用户参考而非必需的文件。 它包括了 未压缩的 安装包中的每个文件的 MD5 签名, 并可在其后通过使用 mtree(8) 程序来验证安装权限和校验和以了解这些文件是否有过改动。 当和 base 安装包联用时, 这是一种检测木马攻击的很好的手段。

  最后, install.sh 文件是用来方便用户在安装之后安装某个安装包的。 要在装完系统之后从 CDROM 安装某个安装包, 您可以按照下面的例子来完成:

# cd /cdrom/info
# sh install.sh

3 升级 FreeBSD

  这些说明描述了从一个旧版本的 FreeBSD 执行二进制升级的过程。

警告: 尽管 FreeBSD 升级过程尽力防止意外的数据丢失, 但是仍有很大可能这次安装会 擦除您的整个硬盘! 请不要接受最后的确认请求,除非您已经备份了所有重要的数据文件。

重要: 这些说明假定您正在使用您打算升级的 FreeBSD 版本提供的 sysinstall(8) 版本。使用一个不匹配的 sysinstall(8) 版本几乎总是会造成问题并且已知会让系统处于不可用状态。 在这方面最容易犯的错误就是使用现存的安装的旧的 sysinstall(8) 副本来升级 FreeBSD 到新的版本。 这是 绝不 推荐的。

警告: 现在还不支持从 FreeBSD 4-STABLE 到 FreeBSD 5.5-RELEASE 的二进制升级。FreeBSD 4-STABLE 中存在的一些文件会引起混乱, 但是却不能被二进制升级移除。一个著名的例子就是旧的 /usr/include/g++ 目录会引起 C++ 程序编译错误 (也可能没有影响)。

这些升级说明提供给那些从近来的 FreeBSD 5.5-STABLE snapshot 升级的用户。


3.1 介绍

  升级过程用相应的最新的 FreeBSD release 取代用户选定的发行版本。 这个过程保护标准的系统配置文件数据, 还有用户数据、已安装的包和其它软件。

  推荐正在考虑升级的管理员在着手升级之前完整阅读这一章节。 不这样做的后果很可能就是升级失败或者数据丢失。


3.1.1 升级概览

  发行版本的升级就是执行解压缩新版本组件覆盖当前版本。 属于旧的发行版本的文件不会被删除。

  系统配置文件通过保留并恢复下列文件的当前版本来实现保护:

  Xaccel.ini, XF86Config, adduser.conf, aliases, aliases.db, amd.map, crontab, csh.cshrc, csh.login, csh.logout, cvsupfile, dhclient.conf, disktab, dm.conf, dumpdates, exports, fbtab, fstab, ftpusers, gettytab, gnats, group, hosts, hosts.allow, hosts.equiv, hosts.lpd, inetd.conf, localtime, login.access, login.conf, mail, mail.rc, make.conf, manpath.config, master.passwd, motd, namedb, networks, newsyslog.conf, nsmb.conf, nsswitch.conf, pam.conf, passwd, periodic, ppp, printcap, profile, pwd.db, rc.conf, rc.conf.local, rc.firewall, rc.local, remote, resolv.conf, rmt, sendmail.cf, sendmail.cw, services, shells, skeykeys, spwd.db, ssh, syslog.conf, ttys, uucp

  这些文件相应的新版本被转移到 /etc/upgrade/。 系统管理员可以仔细阅读这些新版本并合并需要的部分。 注意这里面很多文件是相互依赖的, 最好的合并过程是将所有的站点特定数据从当前文件复制进新的文件。

  在升级过程中,会提示管理员 /etc/ 中所有文件要存放的位置。 在本地修改合并进入其它文件后,也可以从这个位置再找回它们。


3.2 过程

  这一节详细描述了升级过程。尤其关注那些和通常的安装有明显区别的部分。


3.2.1 备份

  用户数据和系统配置文件在升级前应该备份。 尽管升级过程尽力的去防止意外的失误, 还是有可能全部或部分的毁坏数据和配置文件信息。


3.2.2 挂载文件系统

  进入 disklabel 编辑器会列出命名的磁盘文件系统设备。 在着手升级前,管理员应该记录一下设备名和相应的挂载点。 这些挂载点应该在这里输入。 不要 对任何文件系统设置``newfs flag'',因为这会引起数据丢失。


3.2.3 选择 Distribution

  选择 distribution 的时候,没有强制的约束必须选择哪一个。 基本规则是,base distribution 对于升级来说应该选择,如果已经安装了联机手册 man distribution 也应该选择。 如果管理员希望添加额外的功能,在最初的安装之外其它 distribution 也可以选择。


3.2.4 安装之后

  一旦安装过程完成,就会提示管理员检查新的配置文件。 这时候,应该做下检查来保证系统配置文件有效。 尤其是,应该检查 /etc/rc.conf/etc/fstab 文件。


3.3 从源代码升级

  那些对允许更复杂、诡异的升级方法感兴趣的人应该看看 FreeBSD 使用手册的 最前沿 一章。这个过程包括了从源代码重建整个 FreeBSD。 这依赖于可靠的网络连接、额外的磁盘空间和时间, 但是有网络以及其它更复杂安装的优势。 这基本和跟踪 -STABLE 或 -CURRENT 开发分支的过程是相同的。

  /usr/src/UPDATING 包含了从源代码升级 FreeBSD 系统的重要信息。它列出了 FreeBSD 中各种各样可能影响升级的改动。


4 故障排除

4.1 修复现有的 FreeBSD 安装

  FreeBSD 在其安装程序 sysinstall(8) 的顶级菜单上, 提供了一个 ``fixit'' 选项。 它提供了一个包含 FreeBSD 基本系统中常用程序的 shell; 这个环境对于修复或排除现有的 FreeBSD 安装中的故障十分有用。 要使用 fixit 模式, 您需要按照和其他引导盘相同的方式制作 fixit.flp 软盘, 或者使用 ``现场文件系统'' CDROM。 一般来说, 现场文件系统应该在 FreeBSD 安装光盘中的第一张上。 请注意, 使用 fixit 选项需要一些 UNIX 系统管理的经验。

  一般来说, 有两种方法来启动 fixit 模式。 能够从 FreeBSD 安装 CDROM 启动的用户, 应该这样做并在 sysinstall(8) 的主菜单选择 ``fixit''。 然后, 再选择其中的 ``CDROM/DVD'' 选项。

  无法从 CDROM 启动, 但可以从软盘启动的用户, 则需要更多的步骤。 除了安装过程所需要的 boot.flpkernX.flp 之外, 还需要制作一张 fixit.flp 软盘, 方法和其他软盘无异。 按照启动安装程序的步骤进行, 直到出现 sysinstall(8) 菜单为止。 这时, 选择其中的 ``fixit'' 项, 随后的菜单中, 选择 ``Floppy'', 并依提示插入 fixit.flp 软盘。

  尽管 CDROM 和软盘上的 fixit 环境很相似, 但并非一模一样。 它们都提供了一系列用于检查、 修复文件系统及其内容的命令。 在 CDROM 上的 fixit 版本提供了全部 FreeBSD 基本系统中的命令, 因为它是一个现场文件系统。 与此相反, 由于空间限制, 软盘 fixit 环境, 则只能提供它的一个子集。

  软盘版本的 fixit 中, 可以在 /stand/mnt2/stand 找到一些常用的独立的应用程序。 而在 CDROM 版本的 fixit 中, 这些程序可以在 /stand/mnt2/rescue 中找到 (余下的程序, 可以在现场文件系统中找到, 其位置是 /mnt)。


这份文档,以及其他与FreeBSD发行版本有关的文档,都可以在 ftp://ftp.FreeBSD.org/下载。

在遇到关于FreeBSD的技术问题时,请首先阅读 文档 之后再考虑联系 <[email protected]>。

关于这份文档的任何问题,请致信 <[email protected]>。