电脑技术学习

FreeBSD连载(06):安装FreeBSD

dn001

安装FreeBSD

  当准备工作完成之后,安装FreeBSD实际是一个非常简单的过程,简单到将光盘插入计算机启动,回答几个问 题,一切将很快完成。或者将启动软盘放入并启动,输入FreeBSD安装服务器的网址和路径。然而对于初次接触Fre eBSD的使用者,安装过程还可能有些陌生,下面将介绍安装系统和进行基本配置的过程。

  • 启动安装程序

  FreeBSD的安装程序不是Dos或者Windows程序,而是必须在FreeBSD下运行的FreeBSD 程序。如何从一台裸机或者DOS下进入FreeBSD的安装程序,是安装过程的第一步。

  有四种启动FreeBSD安装程序的方法:

      

  • 从现有FreeBSD中启动安装程序sysinstall,用于系统升级和配置;
  •   

  • 从CD-Rom中启动安装程序,要求计算机支持光盘启动;
  •   

  • 从DOS分区中启动,要求计算机已经安装有DOS系统;
  •   

  • 从启动软盘启动,需要制作一张启动软盘;

  使用启动软盘(boot disk)的方法,使计算机从软盘重新启动,进入FreeBSD系统和安装程序,对 于系统要求最少,并可以从一个裸机上安装FreeBSD系统,因此是比较常用的方式。如果使用了光盘作安装介质,并且 计算机的BIOS支持光盘直接启动,最简单的启动方式是光盘直接启动,这样就不需要制作启动软盘。

  当前大部分计算机的BIOS支持光盘直接启动,这样就只需要在启动时进入系统BIOS的Setup程序,更改 启动顺序为光盘优先,然后存储退出即可。不同的BIOS版本,进入Setup和更改启动顺序的方法不同。对于常用的 AWARD BIOS,在启动系统自检时按Del键进入Setup程序,更改启动顺序为CDROM,A,C,这样就使用 IDE光驱启动,或者设为SCSI,A,C并且设置SCSI控制卡的启动设备ID为光驱ID,来使用SCSI光驱启动 (需要SCSI控制卡支持光驱启动)。

  然而,最标准的启动安装程序的方式还是软盘启动,这就需要按照前面叙述的步骤制作启动软盘,将软盘插入A驱, 并更改启动顺序为软盘优先。这样万一计算机的BIOS不支持光驱启动或者使用了其他种类的安装介质,均能够正常启动安 装进程。

  使用DOS程序fbsdboot.exe,可以可以直接从DOS下启动FreeBSD系统。由于fbsdboot 只能在标准的DOS模式下运行,因此就不能在Windows下执行,因此Windows需要先退出到DOS。并且 某些TSR程序也会影响引导过程。fbsdboot仅仅是一种启动方式,仍然需要其他安装介质,如光盘等,以放置 FreeBSD的安装文件。从DOS下启动FreeBSD除了fbsdboot.exe之外,还需要FreeBSD的某个 内核文件kernel,依赖于这个内核文件,fbsdboot启动FreeBSD系统的安装界面,或者进入系统中已经 安装好的FreeBSD系统。

  E:TOOLS> fbsdboot -D e: oolskernel.inst

  fbsdboot.exe缺省使用c:kernel作为内核文件,如果需要使用其他内核文件,就需要使用- D参数,并指定内核文件的路径。fbsdboot不但能用于进入安装系统,还能够在DOS下启动正常的FreeBSD 系统,这就使得在FreeBSD启动过程出现问题时,仍然能够进入FreeBSD系统。fbsdboot由于是在DOS 下启动的,因此一些硬件的行为就与加电启动时略有不同,因此最好还是通过软盘启动的方式进入FreeBSD系统, fbsdboot只用作一种备份启动方式。

  当使用启动软盘或其他介质启动之后(使用软盘启动时需要根据提示插入第二张root软盘),首先将启动 FreeBSD的bootstrap程序,屏幕将显示一些FreeBSD bootstrap信息,然后安装程序将提示使用 者配置内核参数。这个过程主要用于设置FreeBSD内核中的各个驱动程序使用的资源值,必须将这些资源设置修改为与 具体硬件实际使用的资源值相一致,FreeBSD才能正常检测并使用这些硬件设备。这种可以在系统启动时更改硬件参数 设置的机制称为UserConfig,FreeBSD使用UserConfig提供了更大程度的灵活性。

  Skip kernel configuration and continue with installation
  Start kernel configuration in full-screen visual mode
  Start kernel configuration in CLI mode

  使用者可以使用上下箭头键来在三种不同的方式下进行选择,第一项表示忽略配置过程,这表示使用者计算机硬件的 配置参数与FreeBSD通用内核的缺省配置基本一致,不需要更改内核设置,这是因为一般情况下计算机重要硬件使用的 资源设置都是非常标准的设置。当然使用者也可以选择下面的选项,对资源的设置参数进行更改或确认的操作。其中第二项是 使用比较方便的全屏幕操作方式更改设置参数,这适合一般情况。第三个选项是使用命令行的操作方式更改系统参数,能够用 来设置比较复杂的参数,包括一些在全屏幕方式下无法设置的参数,如ISA PNP卡的资源分配和设置。命令行方式的硬 件资源设置方式只适合对FreeBSD了解较深的使用者。

  FreeBSD的内核(kernel)中包含各种硬件的驱动程序,负责构建操作系统和硬件之间的通道。在启动 之后,系统首先将内核程序装载到内存中,然后由内核负责探测各种硬件。每种硬件驱动程序都将最常使用的资源值作为了它 的缺省配置,在编译的时候写入了内核程序内部,只有通过UserConfig才能进行更改。当使用UserConfi g来更改硬件的资源设置的时候,前面准备过程中记录的硬件配置信息就十分有用了,可以参考这些信息来设置正确的硬件占 用的资源。

  FreeBSD就使用这些最常使用的资源配置做参数去判断系统中是否存在这种硬件,如果探测到了,才使用这些 资源激活这个硬件驱动程序。因此如果硬件的资源设定与FreeBSD核心配置的参数不相符,硬件探测就会失败。这时就 需要更改内核的配置数据与板卡设置相同,才能正确探测到该硬件。

  对于要更改内核的配置参数的情况,一般可以选用第二个选项,使用全屏幕的操作方式进行系统参数的更改工作。

  进入UserConfig的全屏幕界面之后,整个屏幕被分为三个部分。上部为Active Drivers部 分,表示内核中激活的设备驱动程序,这些硬件将在启动时进行检测,中部为Inactive Drivers部分,表示 内核中存在的驱动程序,但却被屏蔽了,因此在启动时就不检测这些硬件。下部是操作提示区域,用于提示操作命令和输入具 体的参数设置。

  Active Drivers中的Conflicts表示在所有要检测硬件的配置中存在多少个资源冲突,由于 不是所有的硬件都存在并真正占用这些资源,因此不必理会这个冲突现象。系统内核按照硬件检测的顺序(这在内核编译时就 已经确定了),如果第一个硬件的确存在,占用了资源,那么其他与它的配置相冲突的硬件就应该不会存在于这个资源上了, 因此就被系统略过而不探测这个硬件了,除非是已经指明可以共享这个资源的硬件。Dev对应的列为驱动程序的名字,IRQ 和Port对应的列为相应的硬件参数。

  Collapsed表示该项表示这是一组相关的硬件,可以将光标移动到这个选项上并使用Enter键打开这组 硬件,显示组内的具体硬件,例如上图中的Network类中就存在两个网络设备ed0和ed1。选择相应的设备之后, 可以使用Delete键将这个硬件移入Inactive Drivers部分(在Inactive Drivers中 选择相应的设备,进行同样的操作可以将其放入Active Drivers中),也可以使用Enter打开硬件的配置 参数,进行更改操作,此时就在下面的第三部分中提示各个硬件参数,如IRQ、port等,并允许用户输入新的设置值。

  在UserConfig中,有些设备,如PCI设备,不能被放入Iactive Drivers部分被屏蔽, 然而这并不影响系统探测。

  将硬件的配置参数进行了重新配置之后,要使用Q键来退出UserConfig,然后内核将会按照新配置侦测硬 件。内核侦测硬件的时候,将探测结果显示到屏幕上。这些信息能够告诉使用者是否配置的硬件被正确的探测到,该硬件占用 的系统资源以及该硬件的其他信息。但是自动探测不可能完全正确,因为很多硬件虽然声称相互兼容,但事实上仍存在细微的 差别。万一出现问题,就要求使用者针对硬件配置参数的差异,在UserConfig中按照计算机的配置修改内核配置。 为了避免问题,可以使用排除法,将自己计算机中不存在的设备都先屏蔽了,以免出现偶然的错误。

  • 硬件探测问题

  使用者的计算机可能配置有很多种硬件,有可能在第一次启动时没有将所有的硬件全部配置正确,这并不是一个重要 的问题,因为有的硬件不影响安装过程,可以在安装好系统以后,再使用UserConfig或重新编译内核来配置硬件参 数。但是有些硬件对于系统安装非常重要,必须被正确探测到,否则就无法继续安装过程,如要安装系统的硬盘驱动器、用于 读取安装光盘的光驱、使用网络安装时的网卡等。这时就需要在启动时进入UserConfig更改内核设置,而从硬件的 文档或者从Windows的控制面板获得的硬件信息就十分重要了。

  编译操作系统内核对于Windows用户也许是不可想象,但对于FreeBSD的使用者来说,是非常普通和标 准的做法。并且编译内核决不是什么难事,FreeBSD提供了十分方便的方法让使用者来定制自己的内核。

  硬盘:不管使用何种安装介质,内核必须将目标硬盘探测出,否则无法继续安装。因此使用者必须清楚自己计算机使 用的是何种硬盘驱动器。由于IDE驱动器使用的资源比较标准,也都使用wd这一种驱动程序,一般都能被正确探测到。而 SCSI驱动器则由于存在不同的标准和制造厂家,使用的驱动程序也各不相同,如果计算机上的SCSI控制卡兼容性不强 ,就有可能出现检测错误。这有可能是厂商设定的资源设置与常用设置不同造成的,就需要用户使用UserConfig重 新配置。为了增加系统检测的速度和减少错误发生的几率,可以在UserConfig中尽量屏蔽不必要的驱动程序,仅留 下正确的驱动并配置了正确的资源。

  CD-Rom:如果安装介质是光盘,则内核必须要探测到光盘驱动器。探测光盘驱动器首先要探测到合适的IDE 或者SCSI控制器,这与探测硬盘要求一致。如果使用的光驱不是IDE或SCSI控制器接口的,而是另外的ATAPI 接口方式,就需要查看通用内核的硬件支持列表,看看内核是否支持这种光驱,并根据相关文档配置内核参数支持这种控制器 。由于这些老式光驱的控制器常常是和声卡作在一起,设置起来比较困难,并且FreeBSD系统也不支持所有种类的老型 号光驱,幸好当前非IDE或SCSI接口的光驱型号已经基本淘汰了。因此最好的解决方法是安装一台新的IDE或SCSI 接口的光盘驱动器。

  IDE光驱可能会发生的另一个安装问题是光驱的主/从问题(Master/Slave),通常在一个IDE控 制器上能串接两个IDE设备,一个要设为主设备,另一个要设为从设备。在仅有一个设备时,将该设备设为从设备是不正确 的,设备不应该正常工作。但是在DOS/Windows下直接使用光驱驱动程序访问光盘,这就使得某些光驱在第二个控 制器上仅接一个IDE光驱,并且光驱也设为从设备时,仍然能够正常工作。但是FreeBSD下不是这样,必须严格按照 主从方式进行设置,否则就不能正确探测到光盘驱动器。此外,光驱出错时也应检查有没有插入光盘,以及光驱是否能够读取 插入的光盘。

  网卡:网卡由于种类繁多,并且厂商彼此存在兼容性问题,因此必须考虑不同类型的网卡在缺省资源设置方面的不同 。某些时候网卡设备会出现设备超时(Device timeout)故障,一个可能的原因是总线接口的网卡没有终结, 另一个原因是硬件IRQ参数配置错误。

  此外还需要为网卡选择正确的驱动程序,当前网络设备的发展快速,而FreeBSD对新型网卡提供支持则需要一 定的时间。例如,3COM 905B型网卡在FreeBSD 2.2.6中还没有提供支持,但到FreeBSD 2. 2.8之后就能很好的支持。因此,必须经常查看FreeBSD支持的硬件列表,以获得对新型硬件的驱动程序。

  配置硬件的另一些问题是避免资源冲突,有些硬件本身设计的就存在问题,不能正确更改其资源设置,此时可以让与 它冲突的其他硬件避开使用相应资源。另外,一些设计得比较糟糕的设备,如果系统对它占用的端口进行了不正当的探测操作 ,就可能造成系统死机。这也是为什么尽量减少要探测的设备,并且不能在所有的资源上对硬件进行地毯式全面探测的原因之 一,因此也不应该随便改动硬件探测的顺序。很多情况下发生这些冲突等问题,常常是因为使用了兼容性不好的硬件或配置了 不太适合的硬件参数造成的。所以使用者应利用自己对系统硬件的了解,减少系统探测的硬件数量和设置正确的资源。

  • 安装系统

  •   在内核载入内存之后,内核就启动初始化进程init启动系统,系统启动完毕之后就运行安装程序Sysinstall 。Sysinstall是一个位于安装盘上的FreeBSD的执行程序,是一个非常有用的安装和维护工具程序。 即使在系统安装完毕之后,这个程序还可以被用于管理和维护系统。在一个安装好的FreeBSD系统中,这个程序被放在 /stand目录下,就可以使用/stand/sysinstall命令来再次启动这个管理工具。

    1. 安装程序Sysinstall
    2.   系统安装时将自动进入sysinstall开始安装系统的过程,在个人计算机的屏幕上(控制台),安装程序表 现为全屏幕的彩色安装菜单,然而也可以在标准字符终端上启动Sysinstall程序,根据字符终端的类型其外观也略 有不同,下图为Sysinstall主菜单。

        这里使用的菜单图片均为3.0-release中的选项,在3.1-release之后,对菜单选项的顺序进 行了调整,以便更适合安装时使用的顺序。不同只在于菜单的顺序,而设置内容则是一样的。

        Sysinstall程序是一个对话框方式的菜单程序,不同于Windows系统中安装程序常用的 “ Wizard” 引导方式的安装形式,菜单形式能提供安装者更大的选择自由,但需要安装者对需要用到的选项有一定的了解。其 主菜单提供了12个选项提供选择,可供安装者进行选择。

        选项 “Usage“ 给出了Sysinstall的使用方法,一般可以使用上 下方向键来选择不同的选项,使用Enter确认,使用Tab在Sysinstall中的不同按钮上切换,而使用 Space键选择或不选择某个检查框选项。

        选项 “Doc“ 给出了在正式安装系统之前浏览安装介质上的文档的机会,当然 安装之前也可以直接查看安装介质中文档。这个选项主要用于对裸机直接进行安装的使用者,或者熟练用户临时查看一些安装 信息时使用的。下图为Doc选项中的可以选择查看的文档内容。

        通过这个菜单中的选项,可以在安装系统时实时阅读安装介质上的README.TXT、HARDWARE.TXT 、INSTALL.TXT、COPYRIGT.TXT、RELNOTES.TXT等文档,以及在安装系统之后,创建 Sysinstall的快捷方式,阅读/usr/share/doc目录下的HTML格式的使用手册和问题解答。对于 裸机安装,阅读相关文档的功能十分有用,但在安装好系统之后就没有必要通过Sysinstall来阅读手册了。

        选项 “Keymap 提供了更改键盘规格的机 会,这个选项对于一些欧洲用户比较有用,因为它们使用的是非英文键盘。对于使用101标准键盘或104键标准键盘的使 用者不需要更改。指定一个键盘规格文件之后,可以通过更改这个文件来定制自己的键盘映射方式,指定某些非标准的功能键 。

        选项 Options“ 提供了更改Sysinstall 本身使用的某些变量的机会,这些变量将由Sysinstall程序使用。这里的一些参数用于确定安装过程的 行为,如NFS的相关参数用于NFS网络安装方式时访问NFS服务器,FTP相关参数用于设置FTP网络安装方式,因 而只有在使用相应的安装过程的时候,才需要根据服务器的设置更改这些选项,一般情况下不必改动。还有一些参数是用于标 识安装过程需要的程序和目录的位置的,例如Packeges Temp参数是用于设置安装和管理Packages的临 时目录。

        上图显示了正在更改Editor的参数,FreeBSD缺省使用/usr/bin/ee做编辑器,这个编辑器 是一个小巧的编辑工具。但很多人更喜欢功能更强的编辑器,那么可以在系统安装完毕之后,修改这个参数,设置为使用 vi或eMacs(应该使用完整路径)。而在安装时不应改动这个配置,因为安装软盘中只是一个小系统,没有提供足够的应用 程序。此外还可以设置浏览器等其他应用程序的位置,这些设置都是在系统安装之后,用于维护系统时使用的。

        可供选择的安装方式有 “Novice“ , “Express “ 和 “Custom“ 三种不同的安装方式。Novice方式适合初 次安装FreeBSD的使用者使用,它引导安装者按照安装过程的每一步进行安装,并且每一个步骤都使用对话框进行操作 提示,类似于一个安装引导程序。Express方式与Novice使用同样的安装流程,但省略了提示,因此较为快捷, 适合熟练的安装者。而Custom方式没有引导过程,而是提供一个菜单,安装者可以不按照次序来处理安装过程的每个步 骤,这样就提供了更多的选择机会。三种方式只是安装步骤方面的不同,而并无实质上的差别,每种安装方式均要进行以下几 步操作:

      • 硬盘分区
      • 设置文件系统和交换分区
      • 选择安装组件和安装介质
      • 安装系统
      • 系统初始设置

        在Novice和Express方式中,将顺序进行以上的步骤,而Custom方式则列出对应以上每项工作的 菜单,每完成一步都返回这个菜单等待安装者的下一步指示。这样安装者能按照自己的需要,安排进行相关操作,因此就有更 大的自由度,但如果不熟悉安装程序的话,也许会遗漏一些必需的操作步骤。因此,一般情况下可以选择Novice选项, 由sysinstall安排每一步的任务。

        主菜单的 “Fixit“ 选项将启动一个应急处理命令行界面,处理安装过程中 出现的问题。

        启动应急处理界面需要一个Fixit光盘或软盘,Walnet Creek正式发行光盘中的第二张为Fixit 光盘,或者可以在现有DOS或FreeBSD系统下从安装介质上制作Fixit软盘,它的磁盘镜象文件为resume.flp 。当然Fixit软盘上提供的处理、诊断工具没有光盘上丰富。这个选项将提示安装者插入Fixit盘。然后 使用第三个选项将在第四个虚拟控制台上启动一个应急交互Shell程序,进行各种系统操作(使用Alt-F4可以切换 到这个虚拟控制台上)。如果没有Fixit盘,选择第三项也可以启动应急界面,但是由于没有Fixit盘上的应用程序 ,基本上无法进行操作,完成修复系统的任务。

        菜单选项 “Upgrade“ ,用于系统升级时使用,这个升级过程将使用安装 介质上的二进制文件覆盖原有系统上的文件。由于升级过程有可能破坏原有的FreeBSD系统,因此系统将提示安装者进 行确认。尤其对于从2.2.x向3.x升级,由于应用程序的格式从a.out转向了ELF,因此升级还要保证兼容问题 。相比较而言,使用源代码进行升级的方式更为安全和有效。

        主菜单中的 “Configure“ 选项,用于对FreeBSD系统进行基本 配置,这是Sysinstall中非常有用的一部分。通常Unix进行系统设置需要执行各种命令和修改配置文件,而 Sysinstall在这里能提供了一个设置系统参数的友好界面。在这里就能完成设置一个能够正常运行的FreeBSD 基本系统的操作,当然更复杂的设置还是要通过修改配置文件来完成的。

        如果使用Novice或Express安装方式,将引导安装者进行这个Configure菜单中的各项必需的 配置任务,如果使用Custom方式进行安装,就需要手工执行这个选项中的各个功能。在FreeBSD正常运行之后, 也能使用这个选项来维护系统、更改系统配置。

        假如安装过程中更改了安装选项(Options),但想恢复缺省状态,或者打算使用某个定制的安装选项,就可 以使用主菜单中的 “Load Config” 选项,从软盘中载入安装选项。对于大量 安装同样配置的FreeBSD系统有一定的帮助。

        主菜单的最后一个选项为 “Index” ,选择这个菜单项将弹出一个子菜单, 子菜单中按照字母顺序列出了Sysinstall中的所有的功能。这个菜单项在系统安装时并没有实际的用处,但在系统 安装之后使用sysinstall管理和维护系统时就非常有用。系统管理员不必一级一级寻找某个功能在Sysinstall 多级菜单中的位置,而能依据其名字迅速找到所需要的功能。

    3. 安装过程
    4.   无论安装者使用何种安装方式,所需进行的安装步骤是相同的,对于新手来讲,还是应该选择Novice安装方式 ,以免遗漏需要执行的安装步骤。需要注意的是Novice方式中执行过程不能向后回溯,因而没有更正失误的机会。必须 保证每个步骤都执行正确,否则就需要重新执行整个步骤。选择好安装方式之后,Sysinstall将引导安装者一步步 进行每个步骤的安装任务。

      • 硬盘分区
      •   安装过程的第一步就是要指定将FreeBSD安装到何处,FreeBSD需要占用一个单独的基本分区。因此就 需要进入Fdisk对硬盘进行分区处理,这个工具中可以完成维护硬盘分区的各项操作,包 括指定活动分区,增加和删除分区等功能。

          如果计算机中有多个硬盘存在,Sysinstall中的Fdisk程序将首先询问安装者要处理的哪个硬盘,使 用空格键选中所有需要进行处理的硬盘,然后使用Enter确认,就能依次对各个硬盘进行分区操作。注意,如果要将系统 安装到非启动硬盘上(例如wd1),那么也需要在系统的启动硬盘(wd0)上安装启动管理软件Boot Manager (或其他种类启动管理软件,只是那些软件需要独立的安装过程),否则无法启动非启动硬盘上的系统。

          在Fdisk中显示的前两行为它报告的硬盘信息,包括硬盘的名字,以及柱面、磁头和扇区等硬盘参数。柱面、磁 头和扇区参数对于在一个硬盘上划分多个分区的情况下非常重要,因为系统启动程序要依赖计算机的BIOS来找到FreeBSD 分区。因此必须保证Fdisk中的这些数据和BIOS中的数据一致,以使Fdisk划分出的分区被BIOS识别 。缺省情况下,FreeBSD是直接从硬盘驱动器上探测这些硬盘参数的,因此当BIOS重新映射硬盘参数时,就有可能 使FreeBSD探测的真实参数与BIOS的映射参数不一致。

          在硬盘上已经有分区存在的情况下,Fdisk可以从已有分区中找到硬盘参数,将硬盘参数更改为与划分已有分区 时使用的硬盘参数相一致,以避免它划分的分区与已有分区冲突。这就是要迫使FreeBSD使用BIOS的映射参数,就 可以预先划分一个硬盘分区的原因。例如本例中非空硬盘wd1的硬盘数据为782柱面,128磁头,63扇区,实际是经 过BIOS使用LBA方式映射过的数据,Fdisk从已有的DOS分区中检测到。

          虽然重新映射硬盘参数,无论对于FreeBSD或BIOS,都不会影响数据的存储,但是使用硬盘的真实参数能 避开不同计算机BIOS的不一致性。当硬盘仅用于FreeBSD系统而不需要划分分区时,就可以保持硬盘参数不作任何 更改。因此只有对于空硬盘并希望在安装FreeBSD以后还要安装DOS分区的情况,才需要检查硬盘数据,当发现映射 信息与BIOS不一致时,就需要使用G(Set BIOS Geometry)命令重新设置。

          即使安装了FreeBSD系统之后,当更改了BIOS中的硬盘映射方式的时候,同样也可能发生系统启动程序不 能找到FreeBSD分区,载入FreeBSD系统的情况。

          硬盘信息下面的第二部分是各个分区的列表,每个分区包括它的起始位置(Offset),大小(Size),结 束位置(End),分区的名字,类型,描述,子类型和标志等信息。其中分区中的第一项虽然标记为unused,也不能 为其他分区所占用,因为这是系统主引导区(MBR)占据的空间,虽然主引导区只有一个扇区,然而按照分区习惯,每个分 区必须从一个柱面的起始扇区开始,因此就会在引导区之后留下一些未使用的扇区。但这些空余空间可以被FreeBSD的 启动管理程序Boot Manager或其他类似的启动管理程序所使用。

          分区工具的下部为可使用的命令提示。如果只打算安装启动管理程序Boot Manager而不打算对硬盘进行 分区处理,可以直接使用Q键退出。如果要将整个硬盘都用作FreeBSD使用,可以使用A(Use Entire Disk )就可以将整个硬盘留给FreeBSD。当要将FreeBSD和其他操作系统共享硬盘时,就要具体使用不同的命 令来划分分区了。

          命令C(Create Partition)在未使用的空间上创建分区(首先将光标移动到非使用的磁盘空间上 ),此后需要输入这个分区的大小,和UFS分区类型165,以划分出FreeBSD使用的UFS类型的分区。如果要创 建其他系统使用的分区,需要输入其他类型号,如DOS使用的类型为6。在上面的例子中已经存在两个分区,一个基本 DOS分区和一个扩展分区(第一个部分为系统主引导区),最后剩余的未使用空间太小,已经不足以建立分区了,因此就需要先 删除已有分区(D, Delete Slice),或改变原有分区类型(T, Change Type)的命令,直接 将硬盘上已有的分区改变为UFS类型,分配给FreeBSD使用。

          当存在多个的分区时,可以使用S(Set Bootable)设置哪个分区是启动分区,用来告诉标准主引导程 序启动该分区内操作系统,对于使用多操作系统引导管理程序的时候,如FreeBSD带的Boot Manager,就 不需要进行这个设置。一般如果在安装FreeBSD之前已经安装了DOS/Windows系统的情况下,启动分区是 DOS的基本分区。

          在确信完成所有的分区操作,并没有任何错误之后,才能使用W(Write Changes)来将改变真正写入 硬盘分区表,否则使用U(Undo All Changes),恢复到操作之前的状态。然后可以使用Q来退出分区工具 。分区工具接下来将询问这个硬盘使用的启动引导方式,即如何启动这个硬盘上的FreeBSD或其他操作系统。

          当安装启动选项的时候,对于每个硬盘都有三个选择。第一种BootMgr是使用FreeBSD的Boot Manager 作为多操作系统启动管理程序,来选择启动不同磁盘及不同分区上的多个操作系统。系统将在启动时提示使用者 使用功能键F1、F2等来启动对应分区的操作系统,Boot Manager将被安装到磁盘的主引导区及其后的自由空 间内,对硬盘分区没有影响。可以在每个硬盘上都安装Boot Manager,这样就能从第一个磁盘上启动其他磁盘上 的Boot Manager,然后再启动该非启动硬盘上的操作系统。安装Boot Manager,是在一台计算机上 管理多个操作系统的很好选择,是将FreeBSD安装到非启动硬盘上的一种有效的启动方式。

          第二种选择为Standard,即使用标准的主引导区启动系统,这种方法由主引导区引导程序将控制权交给位于 启动分区开始位置上的操作系统引导程序,然后再载入操作系统。因此这要求启动分区必须设置正确,需要在前面的操作中要 将FreeBSD分区设置为启动分区。选择此项就将主引导区恢复为标准主引导区,相当于DOS下的fdisk /mbr命令。

          第三种None方式是不改变主引导区,也不安装任何系统引导程序。当使用其他种类的操作系统引导软件时,如 Linux LILO,避免更改主引导区而使得那些操作系统引导程序不能正常运行。因为此时主引导区被其他引导程序使用 ,不需要改变。而此时引导FreeBSD的任务就交给了其他引导软件。

          因为安装程序要更改主引导区,因此需要在BIOS中将主板中用于防病毒的主引导区写保护功能关掉。

          当要在一台计算机使用多个操作系统时,确定系统引导的方式是一个复杂的情况,因为这与要使用的其他操作系统有 关,一般情况下都可以使用FreeBSD的Boot Manager对多操作系统进行管理。但也可以使用Linux LILO、Windows NT OS Loader、OS/2 Boot Manager来管理多操作系统。但是在 多操作系统的条件下,每个操作系统中的一些操作都会重写主引导区,从而造成引导程序出现问题。尤其DOS/Windows 系统,每次重新安装都会不加任何提示重写主引导区,将引导程序恢复为标准引导程序。

      • 创建文件系统和交换空间
      • 在硬盘分区之后,安装者将进入FreeBSD风格的文件系统管理工具Disklabel,用于管理文件系统和交换空间。这个工具将对UFS分区进行操作,将它们分割为不同的文件系统上或用作交换空间的部分。

          Disklabel整个屏幕也划分为三部分,上部显示要进行处理硬盘及和UFS分区,本例中为wd1和wd1s1 ,中部为文件系统和交换空间的列表,下部为使用到的各个命令。对于大多数情况时,wd1s1中还没有文件系统和交 换空间存在的条件下,可以让disklabel来决定各个文件系统和交换空间的大小,这仅需要使用A(Auto Defaults for all)命令即可。如果已经有划分好的部分存在,可先使用D命令删除。即使安装者打算自己确定 各个部分的大小,使用A来看看Disklabel的缺省设置情况也能起到参考作用。

          手工使用C(Create)命令分割磁盘时,首先决定是创建交换空间或文件系统。FreeBSD系统需要使用 交换空间来提供比实际内存更大的虚拟内存空间,这样系统就能支持更多、更复杂的进程。交换空间的大小要根据具体需求而 定,有些程序,如X11,GNU C++等,需要大量的内存,因此要配置较多的交换空间,一般交换空间不应小于系统的 物理内存,用作服务器的系统需要更多的交换空间,但过多的交换空间又没有必要。可根据系统在最高负载下用户和同时运行 进程的多少,在物理内存的1-2.5倍范围内调整交换分区的大小。

          在多个磁盘的情况下,可在不同的磁盘中设置多个交换空间,以均衡磁盘的负载。然而对于IDE接口的硬盘,在同 一根电缆上连接的主从硬盘上分布交换空间没有意义,因为同一个驱动器上的两个硬盘不能并发存取。交换空间也应该尽量设 置在高速硬盘上,如Ultra SCSI接口的硬盘,以提高系统的性能。

          对于用于文件系统的子分区,除了设定大小之外,还要设定它在文件系统中的安装位置,即将其安装到目录树的哪个 位置上。虽然原则上仅使用一个安装到根目录的完整文件系统就能满足系统要求,但是由于文件系统中不同目录将用于不同目 的,将其划分为不同部分,分别安装到目录树上,更有利于管理、维护,也增强了万一系统崩溃时,减低数据丢失的可能性。 这是由于不同的子分区在物理上相互分隔,一个子分区写满或出现问题不影响其他文件系统上的内容。例如根目录所在的文件 系统很少需要进行写操作,那么系统崩溃就不会影响这个文件系统中的系统数据,或者当某个进程产生了非常巨大的数据文件 时,这个数据文件只能填满某个子分区,而不致于影响其他需要存取系统中其他分区的重要系统进程。因此,由于对于用作服 务器的FreeBSD系统,应该使用多个文件系统以提升系统可靠性。

          通常应将文件系统划分为 “/” 文件系统, “/usr” 文件系统, “/var” 文件系统。 “/” 文件系统中只保留系统内核及其他非常重要的文件,当系统进入单用户模式也只安装这个文件系统,一般需要30-40M空 间。 “/usr” 文件系统放置系统日常使用的文件,应该尽量大,甚至还会在这个目录之下再安装新的文件系统。 “ /var” 文件系统用于系统运行时的数据文件,根据不同系统的情形,所需要的大小也不一样,用户和提供的服务越多, 越需要 “/var” 空间。

          如果要自己手工调整缺省设置,就要求安装者处理进行分割分区空间的全部细节。使用Create命令来完成创建 每个子分区的任务,首先需要设置划分的子分区的大小,可以直接输入扇区数(512字节为单位)或更容易理解的用MB为 单位(在数字之后加上MB单位),此后设置该子分区是用作文件系统(UFS类型)还是交换空间(Swap类型),如果 要该分区用做文件系统,则系统会接着问该文件系统的安装(Mount)位置。

          在升级系统或其他情况下,硬盘或分区系统中已经有FreeBSD子分区存在,但这些子分区的安装位置信息已经 丢失。此时可以使用M(Mount Pt),将现存子分区按照原来的安装状态,设置它的安装目录。此时可以使用T(Newfs Toggle),在对不对该子分区进行格式化(Newfs)的选项上进行转换,设置为不进行格式化就能保留 上面的原有数据。

          当分区完成以后,使用W(Write)确认设置,使用Q(Finish)退出disklabel系统,然后就 可以向选定的分区上安装操作系统软件本身了。

      • 选择安装组件
      •   由于操作系统本身由不同的部分组成,不同的使用者可以根据自己的需要进行选择,因此,安装程序将显示出一个 Distributions 选择菜单,提示不同种类的使用者选择自己需要的系统组件。

          对于一个完整的系统,所有的这些内容都十分有用。如果不是为了节约硬盘空间的原因,应该选择All全部安装。 但全部安装就需要相当多的磁盘空间,一般情况下为了节约磁盘空间,可以选择不同的安装选项。但即使要安装一个精简的 FreeBSD系统,仍然建议安装内核源代码,这样才能按照机器的具体硬件来定制一个更高效的内核。因此至少应该选择 Kern-Developer选项,此外也可以选择多个部分,例如同时选择Kern-Developer和X-User ,或者使用定制方式(Custom),使组件的选择更为灵活。

          当选择了Custom之后,则Sysintall将显示出所有可选择安装组件的详细列表,供安装者选择需要的 组件。

          在Custom菜单下,可以逐项选择要安装的组件,为了方便起见,可以在上一级菜单中先选择好某类组件,然后 再在这里略加修改。

          注意,由于DES算法受美国法律的出口限制,需要进行审批,因此FreeBSD缺省使用的加密算法为MD5算 法。DES算法只在某些特定的软件中是必须的,例如当使用NIS与其他使用DES算法的计算机共享口令文件时。

          如果需要安装DES组件,可以选择DES组件,名义上这个组件不是直接从美国出口,而是来自欧洲或其他非北美 地方的,从形式上避免这个问题。此后的安装过程中FreeBSD还会使用一个对话框警告安装者,可以简单确认即可。

          FreeBSD还将询问是否安装Ports Collection的源码,Ports Collection 是用于帮助用户编译、安装、维护应用程序的一个非常有效的工具。它是FreeBSD系统的一部分,是FreeBSD的 诸多开发者将应用软件移植到FreeBSD上的努力,比起预编译好的Packages,它更为灵活。因此最好安装Po rts Collection,以方便以后定制应用软件。

          如果要想使用图形界面,就应该选用的XFree86相关的安装组件。由于XFree86也是由多个部分组成, 也可以选择各个部分进行安装,以节约磁盘空间。

          XFree86中包括基本组件Basic,不同的X Server组件,字体组件。一般情况下应该进入各个组 件内部,在缺省设置的基础上修改选择的内容。Basic菜单下的设置一般不必改动,在Fonts菜单下可以选择增加中 文字体。最重要的选择是Server菜单中的选项,应该选择适合自己显示设备的X Server。

          在X Server的选择菜单中,除了选择自己显示卡对应的X Server以外,还应该选择VGA16的X Server,这用于运行XFree86的设置程序XF86Setup。如果不能十分确定自己显示卡的类型,应该多选 择几种X Server,等设置X Windows时再确定哪个X Server适合自己的显示设备。

          当选择好Basic、Fonts和Servers中的选项之后,就可以使用Exit菜单退出这个菜单选项,进 入真正的复制系统的安装过程。

      • 安装系统文件
      •   在安装程序Sysinstall正式复制系统文件之前,安装程序将询问安装介质位于何处。

          最常用的方式是使用CDROM进行安装,这时不需要额外的配置。进行网络安装(NFS或两种ftp方式),则 要求首先配置网络界面、远程服务器的IP地址及安装文件所在的目录。从DOS分区下安装要输入安装文件所在的DOS目 录名,从现存文件系统下安装可以允许从已经安装的目录下(可以是NFS、UFS、MSDOS或CD9660系统)进行 安装,此时需要先使用Fixit盘启动应急界面,预先安装上相应的安装介质。软盘和磁带安装方式也不需额外的配置。

          这个菜单内还有一个Options选项,可以启动Sysinstall主菜单中Options菜单,主要用于 设置使用NFS和FTP时候的相关连接选项,以便安装能顺利进行。当完成安装介质的确认之后,就开始拷贝文件的安装过 程了。

          由于系统中有多个虚拟控制台,在安装程序的拷贝过程中,可以使用Alt-F2切换到第二个虚拟控制台上观察 sysinstall程序的输出信息,使用Alt-F4切换到第四个虚拟控制台上,这里启动了一个shell,可以接受 安装者的输入指令,这使安装者可以在必要的时候,干预安装过程或处理可能的问题(缺省情况下没有任何命令可供安装者执 行,必须在安装系统之前使用Fixit光盘或软盘,才能提供可执行的命令)。正常情况下并不需要这些额外的工作,使用 Alt-F1回到sysinstall安装界面,等上约20分钟(具体时间将依赖具体机器的硬件和选择的安装组件), 基本系统将安装完毕。

未完,待续。。。  

标签: