Solaris 9 12/03 安装指南

第 23 章 准备定制 JumpStart 安装(任务)

本章提供有关如何在您的站点准备系统,以便使用定制 JumpStart 安装方法从其安装以及在其中安装 Solaris 9 软件的逐步说明。

任务图:准备定制 JumpStart 安装

表 23–1 任务图:准备定制 JumpStart 安装

任务 

说明 

参考 

在系统上安装有 Solaris 软件的早期版本的情况下,确定如何升级系统 

如果系统上安装了 Solaris 的早期发行版,您需要确定如何升级系统。请确保您了解在升级系统前后应该执行什么操作。规划有助于您创建配置文件、开始脚本和结束脚本。 

第 8 章,升级 Solaris 操作环境(规划)

创建 JumpStart 目录 

 

在服务器上

如果您要在连接到网络的系统上执行定制 JumpStart 安装,则必须创建一个配置文件服务器。配置文件服务器包含用于定制 JumpStart 文件的 JumpStart 目录。 

为联网的系统创建配置文件服务器

在软盘上

如果您要在未连接到网络的系统上执行定制 JumpStart 安装,则必须创建一个配置文件软盘。配置文件软盘包含定制 JumpStart 文件。 

为独立系统创建配置文件盘

rules 文件添加规则

在确定要如何安装各组系统或单个系统之后,请为要安装的每个组创建一个规则。根据一个或多个系统属性,每个规则区分一个组。规则将每个组链接到一个配置文件。 

创建 rules 文件

为每个规则创建一个配置文件 

配置文件是一个文本文件,它定义如何安装 Solaris 软件,例如在系统上安装哪个软件组。每个规则指定一个配置文件,以定义当规则被匹配时如何在系统上安装 Solaris 软件。通常为每个规则创建一个不同的配置文件。但是,同一配置文件可以用于多个规则。 

创建配置文件

(可选)测试配置文件 

创建配置文件之后,在使用该配置文件安装或升级系统之前,请使用 pfinstall(1M) 命令测试配置文件。

测试配置文件

验证 rules 文件

rules.ok 文件是 rules 文件(JumpStart 程序使用该文件匹配要通过配置文件安装的系统)的生成版本。必须使用 check 脚本验证 rules 文件。

验证 rules 文件

为联网的系统创建配置文件服务器

当为网络上的系统设置定制 JumpStart 安装时,需要在服务器上创建一个名为 JumpStart 目录的目录。JumpStart 目录包含所有必要的定制 JumpStart 文件,例如 rules 文件、rules.ok 文件和配置文件。必须在配置文件服务器的根 (/) 目录中保存 JumpStart 目录。

包含 JumpStart 目录的服务器称为配置文件服务器。配置文件服务器可以是与安装服务器或引导服务器相同的系统,也可以是一个完全不同的服务器。 配置文件服务器可以为不同的平台提供定制 JumpStart 文件。例如,x86 服务器可以为 SPARC 系统和 x86 系统提供定制 JumpStart 文件。


注意:

创建配置文件服务器之后,您必须允许系统访问该服务器。有关详细说明,请参见允许所有系统访问配置文件服务器


在服务器上创建 JumpStart 目录


注意:

此过程假设系统正在运行卷管理器。如果您未使用卷管理器管理磁盘,请参见System Administration Guide: Basic Administration,以获得有关在不使用卷管理器的情况下管理可移动介质的详细信息。


  1. 以超级用户身份登录到要在其上创建 JumpStart 目录的服务器。

  2. 在服务器上的任意位置创建 JumpStart 目录。


    # mkdir -m 755 jumpstart_dir_path
    

    在该命令中,jumpstart_dir_path 是 JumpStart 目录的绝对路径。

    例如,以下命令在根 (/) 目录中创建一个名为 jumpstart 的目录并将权限设置为 755:


    # mkdir -m 755 /jumpstart
    
  3. 通过添加以下项来编辑 /etc/dfs/dfstab 文件。


    share -F nfs -o ro,anon=0 jumpstart_dir_path
    

    例如,以下项共享 /jumpstart 目录:


    share -F nfs -o ro,anon=0 /jumpstart
    
  4. 键入 shareall 并按 Enter 键。

  5. 确定您是否要将定制 JumpStart 文件实例复制到 JumpStart 目录。

    • 如果否,请转到步骤 8

    • 如果是,请使用以下判定表来确定下一步的工作。

    实例位置 

    说明 

    用于您的平台的 Solaris DVD 或 Solaris Software 1 of 2 CD 

    将 Solaris DVD 或 Solaris Software 1 of 2 CD 放入服务器的 CD-ROM 驱动器中。 

    卷管理器会自动安装 CD。 

    适用于您的平台的 Solaris DVD 或 Solaris Software 1 of 2 CD 在本地磁盘上的映像

    将目录更改到 Solaris DVD 或 Solaris Software 1 of 2 映像的位置。例如,键入以下命令: 


    cd /export/install

  6. 将定制 JumpStart 文件实例复制到配置文件服务器上的 JumpStart 目录。


    # cp -r media_path/Solaris_9/Misc/jumpstart_sample/* jumpstart_dir_path
    
    media_path

    CD、DVD 或本地磁盘上映像的路径

    jumpstart_dir_path

    配置文件服务器上放置定制 JumpStart 文件实例的路径

    例如,以下命令将 jumpstart_sample 目录复制到配置文件服务器上的 /jumpstart 目录中。

    • 对于 SPARC 系统:


      cp -r /cdrom/cdrom0/s0/Solaris_9/Misc/jumpstart_sample/* /jumpstart
      
    • 对于 x86 系统:


      cp -r /cdrom/cdrom0/s2/Solaris_9/Misc/jumpstart_sample/* /jumpstart
      
  7. 更新 JumpStart 文件实例以便这些文件可以在您的环境中工作。

  8. 确保 root 拥有 JumpStart 目录,并且权限被设置为 755。

  9. 允许网络上的系统访问配置文件服务器。

    有关详细说明,请参见允许所有系统访问配置文件服务器

允许所有系统访问配置文件服务器

创建配置文件服务器时,必须确保系统在定制 JumpStart 安装期间能够访问配置文件服务器上的 JumpStart 目录。使用以下方法之一可确保能够访问:


注意:

如果将 JumpStart 目录保存在软盘中,或者在引导系统时指定了配置文件服务器的位置,则无需执行以下步骤。


仅在将网络安装信息存储在 /etc/bootparams 文件中时,以下过程才有效。您还可以将网络安装信息存储在以下位置之一:

  1. 在安装或引导服务器上,以超级用户身份登录。

  2. 使用文本编辑器打开 /etc/bootparams

  3. 添加此项。

    * install_config=server:jumpstart_dir_path
    
    *

    一个通配符,它指定所有系统都具有访问权限

    server

    JumpStart 目录所在的配置文件服务器的主机名

    jumpstart_dir_path

    JumpStart 目录的绝对路径

    例如,以下项允许所有系统访问名为 sherlock 的配置文件服务器上的 /jumpstart 目录:

    * install_config=sherlock:/jumpstart

    小心:小心:

    在引导安装客户机时使用此过程可能会生成以下错误信息:

    警告:getfile:RPC 失败:错误 5:(RPC 超时)。

    从网络引导:错误信息包含有关此错误信息的详细信息。


    所有的系统现在都可以访问配置文件服务器。

为独立系统创建配置文件盘

包含 JumpStart 目录的软盘称为配置文件盘。未连接到网络的系统不具有对配置文件服务器的访问权限。因此,如果系统未连接到网络,必须在软盘上创建一个 JumpStart 目录。您创建配置文件盘时所在的系统必须带有软盘驱动器。

JumpStart 目录包含所有必要的定制 JumpStart 文件,例如 rules 文件、rules.ok 文件和配置文件。必须将 JumpStart 目录保存在配置文件盘的根 (/) 目录中。

SPARC: 创建配置文件盘


注意:

此过程假设系统正在运行卷管理器。如果您未使用卷管理器管理软盘、CD 和 DVD,请参见System Administration Guide: Basic Administration,以获得有关在不使用卷管理器的情况下管理可移动介质的详细信息。


  1. 以超级用户的身份登录到连接了软盘驱动器的 SPARC 系统。

  2. 将空白软盘或可覆盖的软盘插入软盘驱动器中。

  3. 安装该软盘。


    # volcheck
    
  4. 确定该软盘是否包含 UNIX 文件系统 (UFS)。

    检查系统上的 /etc/mnttab 文件的内容以确定是否包含如下项:


    /vol/dev/diskette0/scrap  /floppy/scrap  ufs  suid,rw,largefiles,dev=1740008  927147040
    • 如果该项存在,请转到步骤 7

    • 如果该项不存在,请转到下一步。

  5. 格式化该软盘。


    小心:小心:

    格式化将清除该软盘上的全部数据。



    # fdformat -U
    
  6. 在该软盘上创建 UFS。


    # newfs /vol/dev/aliases/floppy0
    
  7. 确定您是否要将定制 JumpStart 文件实例复制到 JumpStart 目录。

    • 如果否,请转到步骤 10

    • 如果是,请使用以下判定表来确定下一步的工作。

    实例位置 

    说明 

    Solaris SPARC Platform Edition DVD 或 Solaris Software 1 of 2 SPARC Platform Edition CD

    将 Solaris SPARC Platform Edition DVD 或 Solaris Software 1 of 2 SPARC Platform Edition CD 放入服务器的 CD-ROM 驱动器中。

    卷管理器会自动安装 CD。 

    本地磁盘上的 Solaris SPARC Platform Edition DVD 或 Solaris Software 1 of 2 SPARC Platform Edition CD 映像

    更改 Solaris SPARC Platform Edition DVD 或 Solaris Software 1 of 2 SPARC Platform Edition CD 映像位置的目录。例如,键入以下命令:


    cd /export/install
    

  8. 将定制 JumpStart 文件实例复制到配置文件盘中的 JumpStart 目录。


    # cp -r media_path/Solaris_9/Misc/jumpstart_sample/* jumpstart_dir_path
    
    media_path

    CD、DVD 或本地磁盘上映像的路径

    jumpstart_dir_path

    要放置定制 JumpStart 文件实例的配置文件盘的路径


    注意:

    您必须将所有定制 JumpStart 安装文件都放在该软盘的根 (/) 目录中。


    例如,以下命令将 Solaris Software 1 of 2 SPARC Platform Edition CD 上的 jumpstart_sample 的内容复制到名为 scrap 的配置文件盘的根 (/) 目录中:


    cp -r /cdrom/sol_9_sparc/s0/Solaris_9/Misc/jumpstart_sample/* /floppy/scrap
    
  9. 更新配置文件盘上的 JumpStart 文件实例,以使这些文件可以在您的环境中工作。

  10. 确保 root 拥有 JumpStart 目录,并且权限被设置为 755。

  11. 弹出该软盘。


    # eject floppy
    

    您已经完成配置文件盘的创建。现在可以更新 rules 文件,并在配置文件盘上创建配置文件以执行定制 JumpStart 安装。要继续,请转到创建 rules 文件

x86: 创建配置文件盘


注意:

此过程假设系统正在运行卷管理器。如果您未使用卷管理器管理软盘、CD 和 DVD,请参见System Administration Guide: Basic Administration,以获得有关在不使用卷管理器的情况下管理可移动介质的详细信息。


  1. 以超级用户的身份登录到连接了软盘驱动器的 x86 系统。

  2. 将 Solaris Device Configuration Assistant x86 Platform Edition 软盘插入软盘驱动器中(通常为驱动器 A)。可以将该软盘用作配置文件盘。


    仅x86:

    从 Solaris Developer Connection(网址为 http://soldc.sun.com/support/drivers/dcs_diskettes)下载引导软盘软件并将其复制到软盘,即可访问引导软盘软件。


  3. 安装该软盘。


    # volcheck
    
  4. 将 Solaris Device Configuration Assistant 的映像复制到系统的硬盘上。


    # dd if=/vol/dev/aliases/floppy0 of=boot_image
    

    在该命令中,boot_image 是要将 Solaris Device Configuration Assistant 的映像复制到其中的文件的名称。您可以指定绝对路径名。

    例如,以下命令将引导软盘复制到名为 boot_save 的文件。


    dd if=/vol/dev/aliases/floppy0 of=boot_save
    
  5. 单击“文件管理器”窗口中的“弹出磁盘”或在命令行中键入 eject floppy 以弹出该软盘。

  6. 在“可移动介质管理器”对话框中,单击“确定”。

  7. 手动弹出 Solaris Device Configuration Assistant x86 Platform Edition 软盘。

  8. 将空白软盘或可覆盖的软盘插入软盘驱动器中。

  9. 安装该软盘。


    # volcheck
    
  10. 格式化该软盘。


    小心:小心:

    格式化将清除该软盘上的全部数据。



    # fdformat -d -U
    
  11. 将 Solaris Device Configuration Assistant 映像从系统的硬盘复制到已格式化的软盘。


    # dd if=boot_image of=/vol/dev/aliases/floppy0
    

    在该命令中,boot_image 是要将 Solaris Device Configuration Assistant 的映像复制到其中的文件的名称。您可以指定绝对路径名。

  12. 确定您是否要将定制 JumpStart 文件实例复制到 JumpStart 目录。

    • 如果否,请转到步骤 15

    • 如果是,请使用以下判定表来确定下一步的工作。

    实例位置 

    说明 

    Solaris x86 Platform Edition DVD 或 Solaris Software 1 of 2 x86 Platform Edition CD

    将 Solaris x86 Platform Edition DVD 或 Solaris Software 1 of 2 x86 Platform Edition CD 放入服务器的 CD-ROM 驱动器中。

    卷管理器会自动安装 CD。 

    本地磁盘上的 Solaris x86 Platform Edition DVD 或 Solaris Software 1 of 2 x86 Platform Edition CD 的映像

    将目录更改到 Solaris x86 Platform Edition DVD 或 Solaris Software 1 of 2 x86 Platform Edition CD 映像的位置。例如,键入以下命令:


    cd /export/install

  13. 将定制 JumpStart 文件实例复制到配置文件盘上的 JumpStart 目录中。


    # cp -r media_path/Solaris_9/Misc/jumpstart_sample/* jumpstart_dir_path
    
    media_path

    CD、DVD 或本地磁盘上映像的路径

    jumpstart_dir_path

    要放置定制 JumpStart 文件实例的配置文件盘的路径


    注意:

    您必须将所有定制 JumpStart 安装文件都放在该配置文件盘的根 (/) 目录中。


    例如,以下命令将 Solaris Software 1 of 2 x86 Platform Edition CD 上的 jumpstart_sample 的内容复制到名为 scrap 的配置文件盘的根 (/) 目录中:


    cp -r /cdrom/sol_9_x86/s2/Solaris_9/Misc/jumpstart_sample/* /floppy/scrap
    
  14. 更新配置文件盘上的 JumpStart 文件实例,以使这些文件可以在您的环境中工作。

  15. 确保 root 拥有 JumpStart 目录,并且权限被设置为 755。

  16. 单击“文件管理器”窗口中的“弹出磁盘”或在命令行中键入 eject floppy 以弹出该软盘。

  17. 在“可移动介质管理器”对话框中,单击“确定”。

  18. 手动弹出该软盘。

您已经完成配置文件盘的创建。现在可以更新 rules 文件,并在配置文件盘上创建配置文件以执行定制 JumpStart 安装。要继续,请转到创建 rules 文件

创建 rules 文件

rules 文件是一个文本文件,该文件包含针对要在其上安装 Solaris 操作环境的每组系统的规则。每个规则区分一组基于一个或多个系统属性的系统。每个规则还可以将相应的系统组链接到一个配置文件。配置文件是一个文本文件,该文件定义如何在组中的各个系统上安装 Solaris 软件。例如,以下规则指定 JumpStart 程序使用 basic_prof 配置文件中的信息来安装 sun4u 平台组中的任何系统。

karch sun4u - basic_prof -

rules 文件可用于创建定制 JumpStart 安装所需的 rules.ok 文件。


注意:

如果使用为独立系统创建配置文件盘为联网的系统创建配置文件服务器中的过程设置 JumpStart 目录,则 JumpStart 目录中已经存在一个 rules 文件实例。该 rules 文件样例包含文档和一些规则实例。如果使用 rules 文件样例,请确保将不想使用的规则实例注释掉。


rules 文件的语法

rules 文件必须具有以下属性:

rules 文件可以包含以下任何内容:

创建 rules 文件

  1. 使用文本编辑器创建一个名为 rules 的文本文件。或者,打开所创建的 JumpStart 目录中的 rules 文件样例。

  2. rules 文件中,为要在其上安装 Solaris 软件的各组系统添加一个规则。

    有关 rules 文件关键字和值的列表,请参见规则关键字和值

    rules 文件中的规则必须符合以下语法:

    [[!]]rule_keyword rule_value [[&& [[!]]rule_keyword rule_value]] ... begin  profile  finish
    
    表 23–2 规则的语法元素

    元素 

    说明 

    !

    用在关键字前面表示否定的符号。 

    rule_keyword

    一个预定义的词法单元或词,用于说明一般系统属性(例如主机名 hostname 或内存大小 memsize)。rule_keyword 与规则值一起使用以将具有相同属性的系统与某个配置文件相匹配。有关规则关键字的列表,请参见规则关键字和值

    rule_value

    一个值,该值为相应的规则关键字提供特定的系统属性。规则值在规则关键字和值中进行了说明。

    &&

    一个符号,必须使用该符号将同一规则中的规则关键字和规则值对连接起来(逻辑“与”)。在定制 JumpStart 安装过程中,一个系统必须首先匹配规则中的每个值对,然后才能匹配该规则。 

    begin

    一个可选的 Bourne shell 脚本的名称,该脚本可以在安装开始前执行。如果没有开始脚本,您必须在该字段中键入一个减号 (-)。所有开始脚本都必须位于 JumpStart 目录中。 

    创建开始脚本中提供了有关如何创建开始脚本的信息。

    profile

    一个文本文件的名称,该文件定义当一个系统与该规则匹配时如何在该系统上安装 Solaris 软件。配置文件中的信息包括配置文件关键字及其相应的配置文件值。所有配置文件都必须位于 JumpStart 目录中。 


    注意:

    使用 profile 字段的可选方法在使用站点特定的安装程序用开始脚本创建派生配置文件中进行了说明。


    finish

    一个可选 Bourne shell 脚本的名称,该脚本可以在安装完成后执行。如果没有结束脚本,您必须在该字段中键入一个减号 (-)。所有结束脚本都必须位于 JumpStart 目录中。 

    创建结束脚本中提供了有关如何创建结束脚本的信息。

    每个规则至少需要包含以下内容:

    • 一个关键字、一个值和一个相应的配置文件

    • 如果未指定任何开始或结束脚本,则要在 beginfinish 字段中键入一个减号 (-)

  3. rules 文件保存到 JumpStart 目录中。

  4. 确保 root 拥有 rules 文件,并且权限被设置为 644。

rules 文件实例

下面的实例显示了一个 rules 文件中的若干规则实例。每一行都包含一个规则关键字和该关键字的一个有效值。JumpStart 程序从上到下扫描 rules 文件。

如果 JumpStart 程序将一个规则关键字和值与一个已知系统相匹配,则该 JumpStart 程序将安装由 profile 字段中列出的配置文件指定的 Solaris 软件。


实例 23–1 rules 文件

 # rule keywords and rule values       begin script       profile       finish script
 # -----------------------------       ------------       --------      -------------
  hostname eng-1                       -                  basic_prof    -
  network 192.43.34.0 && !model \
 'SUNW,SPARCstation-20'                -                  net_prof      -
  model SUNW,SPARCstation-LX           -                  lx_prof       complete
  network 193.144.2.0 && karch i86pc  setup               x86_prof      done
  memsize 64-128 && arch i386          -                  prog_prof     -
  any   -                              -                  generic_prof  -

下表说明了此实例中的一些关键字和值。

hostname

如果系统的主机名为 eng-1,则规则将匹配。basic_prof 配置文件用于在与该规则匹配的系统上安装 Solaris 软件。

network

如果系统位于子网 192.43.34.0 上,并且系统不是 SPARCstationTM 20 (SUNW,SPARCstation-20),则规则将匹配。net_prof 配置文件用于在与该规则匹配的系统上安装 Solaris 软件。该规则还提供了一个规则换行(已在rules 文件的语法中定义)的实例。

model

如果系统是 SPARCstation LX,则该规则将匹配。lx_prof 配置文件和 complete 结束脚本用于在与该规则匹配的系统上安装 Solaris 软件。

network

如果系统位于子网 193.144.2.0 上,并且是一个基于 x86 的系统,则该规则将匹配。setup 开始脚本、x86_prof 配置文件和 done 结束脚本用于在与该规则匹配的系统上安装 Solaris 软件。

memsize

如果系统的内存在 64 和 128 MB 之间,并且是基于 x86 的系统,则该规则将匹配。prog_prof 配置文件用于在与该规则匹配的系统上安装 Solaris 软件。

any

该规则与任何不和前面的规则匹配的系统匹配。generic_prof 配置文件用于在与该规则匹配的系统上安装 Solaris 软件。如果使用了 any,则它应该始终是 rules 文件中的最后一个规则。


创建配置文件

配置文件是一个文本文件,该文件定义如何在一个系统上安装 Solaris 软件。配置文件定义了安装元素(例如要安装的软件组)。每个规则指定一个配置文件,该配置文件定义如何安装一个系统。您可以为每个规则创建不同的配置文件,也可以在多个规则中使用同一个配置文件。

配置文件由一个或多个配置文件关键字及其值组成。每个配置文件关键字都是一个命令,该命令对 JumpStart 程序如何在一个系统上安装 Solaris 软件的某个方面加以控制。例如,以下配置文件关键字和值指定 JumpStart 程序将系统安装为一个服务器:

system_type  server

注意:

如果使用在为独立系统创建配置文件盘为联网的系统创建配置文件服务器中说明的过程创建 JumpStart 目录,则 JumpStart 目录中已经存在样例配置文件。


配置文件语法

一个配置文件必须包含以下内容:

一个配置文件可以包含以下内容:

创建配置文件

  1. 使用文本编辑器创建一个文本文件。描述性地命名该文件。或者,打开所创建的 JumpStart 目录中的样例配置文件。


    注意:

    请确保配置文件的名称能够反映您要使用该配置文件在系统上安装 Solaris 软件的方式。例如,您可以将配置文件命名为 basic_installeng_profileuser_profile


  2. 向该配置文件中添加配置文件关键字和值。

    有关配置文件关键字和值的列表,请参见配置文件关键字和值


    注意:

    配置文件关键字及其值区分大小写。


  3. 将配置文件保存到 JumpStart 目录中。

  4. 确保 root 拥有该配置文件,并且权限被设置为 644。

  5. 测试配置文件(可选)。

    测试配置文件中包含有关测试配置文件的信息。

配置文件实例

以下配置文件实例显示了如何使用不同的配置文件关键字和配置文件值来控制在一个系统上安装 Solaris 软件的方式。配置文件关键字和值中包含对配置文件关键字和值的说明。


实例 23–2 安装远程文件系统以及添加和删除软件包

 
# profile keywords        profile values
# -----------------       -----------------
  install_type            initial_install
  system_type             standalone
  partitioning            default
  filesys                 any 512 swap   # specify size of /swap
  cluster                 SUNWCprog
  package                 SUNWman delete
  cluster                 SUNWCacc

下表说明了此实例中的一些关键字和值。

install_type

install_type 关键字是每个配置文件中所必需的。

system_type

system_type 关键字定义该系统将安装为一个独立的系统。

partitioning

文件系统片由通过 default 值安装的软件来确定。swap 的大小设置为 512 MB,并安装在任何磁盘上(值为 any)。

cluster

开发者 Solaris 软件组 SUNWCprog 安装在系统上。

package

如果标准手册页从网络上的文件服务器 s_ref 安装,则手册页软件包将不安装在系统上。选择包含系统记帐公用程序的软件包,将其安装在系统上。



实例 23–3 指定安装文件系统的位置

# profile keywords        profile values
# ----------------        -------------------
  install_type            initial_install
  system_type             standalone 
  partitioning            explicit
  filesys                 c0t0d0s0 auto /
  filesys                 c0t3d0s1 auto swap
  filesys                 any auto usr
  cluster                 SUNWCall

下表说明了此实例中的一些关键字和值。

partitioning

文件系统片由 filesys 关键字和 explicit 值来确定。根目录 (/) 的大小基于所选的软件和值 auto,并安装在 c0t0d0s0 上。swap 的大小设置为所需的大小,并安装在 c0t3d0s1 上。usr 基于所选的软件,并且安装程序将根据 any 值确定在何处安装 usr

cluster

整个 Solaris 软件组 SUNWCall 安装在系统上。



实例 23–4 x86: 使用 fdisk 关键字

# profile keywords      profile values
# ----------------      -------------------
  install_type          initial_install
  system_type           standalone

  fdisk                 c0t0d0 0x04 delete
  fdisk                 c0t0d0 solaris maxfree
  cluster               SUNWCall
  cluster               SUNWCacc delete

下表说明了此实例中的一些关键字和值。

fdisk

所有 DOSOS16(04 十六进制)类型的 fdisk 分区都将从 c0t0d0 磁盘上删除。

fdisk

Solaris fdisk 分区创建在 c0t0d0 磁盘上的最大连续空闲空间上。

cluster

整个发行软件组 SUNWCall 安装在系统上。

cluster

系统记帐公用程序 SUNWCacc 没有安装在系统上。



实例 23–5 重新为升级分配磁盘空间

# profile keywords         profile values
# ----------------         -------------------
  install_type             upgrade 
  root_device              c0t3d0s2 
  backup_media             remote_filesystem timber:/export/scratch
  layout_constraint        c0t3d0s2 changeable 100
  layout_constraint        c0t3d0s4 changeable
  layout_constraint        c0t3d0s5 movable 
  package                  SUNWbcp delete
  package                  SUNWxwman add
  cluster                  SUNWCacc add   
  locale                   de

下表说明了此实例中的一些关键字和值。

install_type

该配置文件通过重新分配磁盘空间来升级系统。在本例中,磁盘空间必须重新分配,因为系统上的某些文件系统没有足够的空间用来升级。

root_device

c0t3d0s2 上的根文件系统被升级。

backup_media

名为 timber 的远程系统被用来在磁盘空间重新分配期间对数据进行备份。有关备份介质关键字值的详细信息,请参见backup_media 配置文件关键字

layout_constraint

layout_constraint 关键字指定自动布局在尝试重新分配磁盘空间以便升级时可以执行以下任务。

  • 更改片 2 和 4。这两个片可移动到其它位置,并且大小可以更改。

  • 移动片 5。该片可移动到其它位置,但其大小不能更改。

package

在升级后,不将二进制兼容性软件包 SUNWbcp 安装在系统上。

package

这些代码可确保如果 X 窗口系统手册页和系统记帐公用程序尚未安装到系统上,则会安装它们。自动升级系统上已有的所有软件包。

locale

德文本地化软件包将被安装在系统上。



实例 23–6 从 HTTP 服务器检索 Solaris Flash 归档文件

在下面的实例中,配置文件指示定制 JumpStart 程序从 HTTP 服务器检索 Solaris Flash 归档文件。

# profile keywords         profile values
# ----------------         -------------------
install_type               flash_install
archive_location           http://192.168.255.255/flasharchive/solarisarchive
partitioning               explicit
filesys                    c0t1d0s0 4000 /
filesys                    c0t1d0s1 512 swap
filesys                    c0t1d0s7 free /export/home

下表说明了此实例中的一些关键字和值。

install_type

该配置文件在克隆系统上安装 Solaris Flash 归档文件。在初始安装过程中,所有文件都被覆盖。

archive_location

Solaris Flash 归档文件是从 HTTP 服务器中检索得到的。

partitioning

文件系统片由 filesys 关键字和 explicit 值来确定。根目录 (/) 的大小基于 Solaris Flash 归档文件的大小。根文件系统安装在 c0t1d0s0 上。swap 的大小设置为所需的大小,安装在 c0t1d0s1 上。/export/home 基于剩余的磁盘空间。/export/home 安装在 c0t1d0s7 上。



实例 23–7 从安全 HTTP 服务器检索 Solaris Flash 归档文件

在下面的实例中,配置文件指示定制 JumpStart 程序从安全 HTTP 服务器检索 Solaris Flash 归档文件。

# profile keywords         profile values
# ----------------         -------------------
install_type               flash_install
archive_location           https://192.168.255.255/solarisupdate.flar
partitioning               explicit
filesys                    c0t1d0s0 4000 /
filesys                    c0t1d0s1 512 swap
filesys                    c0t1d0s7 free /export/home

下表说明了此实例中的一些关键字和值。

install_type

该配置文件在克隆系统上安装 Solaris Flash 归档文件。在初始安装过程中,所有文件都被覆盖。

archive_location

Solaris Flash 的压缩归档文件可从安全 HTTP 服务器中检索。

partitioning

文件系统片由 filesys 关键字和 explicit 值来确定。根目录 (/) 的大小基于 Solaris Flash 归档文件的大小。swap 的大小设置为所需的大小,安装在 c0t1d0s1 上。/export/home 基于剩余的磁盘空间。/export/home 安装在 c0t1d0s7 上。



实例 23–8 从 NFS 服务器检索 Solaris Flash 差别归档文件

在下面的实例中,配置文件指示定制 JumpStart 程序从 NFS 服务器检索 Solaris Flash 归档文件。flash_update 关键字表示该文件是差别归档文件。差别归档文件只安装两个系统映像之间的差别。

# profile keywords         profile values
# ----------------         -------------------
install_type               flash_update
archive_location           nfs installserver:/export/solaris/flasharchive \
                           /solarisdiffarchive
no_master_check

下表说明了此实例中的一些关键字和值。

install_type

该配置文件在克隆系统上安装 Solaris Flash 差别归档文件。只安装归档文件中指定的文件。

archive_location

Solaris Flash 归档文件是从 NFS 服务器检索得到的。

no_master_check

不会对克隆系统进行系统映像有效性的检查。有效的系统映像源自原始主系统。



实例 23–9 创建非使用中的引导环境

在下面的实例中,配置文件指示定制 JumpStart 程序创建非使用中的空引导环境。引导环境可以日后使用 Solaris Flash 归档文件进行总装。

# profile keywords        profile values
# ----------------        -------------------
  install_type            initial_install
  system_type             standalone 
  partitioning            explicit
  filesys                 c0t0d0s0 auto /
  filesys                 c0t3d0s1 auto swap
  filesys                 any auto usr
  cluster                 SUNWCall
  bootenv createbe bename second_BE \
  filesystem /:/dev/dsk/c0t1d0s0:ufs \
  filesystem -:/dev/dsk/c0t1d0s0:swap \
  filesystem /export:shared:ufs

下表说明了此实例中的一些关键字和值。

partitioning

文件系统片由 filesys 关键字和 explicit 值来确定。根目录 (/) 的大小基于所选的软件和值 auto,并安装在 c0t0d0s0 上。swap 的大小设置为所需的大小,并安装在 c0t3d0s1 上。usr 基于所选的软件,并且安装程序将根据 any 值确定在何处安装 usr

cluster

整个 Solaris 软件组 SUNWCall 安装在系统上。

bootenv createbe

可以在磁盘 c0t1d0 上设置非使用中的空引导环境。将创建根 (/)、交换和 /export 的文件系统,但是保留为空。第二个引导环境可以日后通过 Solaris Flash 归档文件进行安装。然后可以启动新的引导环境,使之称为操作环境。

有关使用此关键字的关键字值和背景,请参见以下参考:


测试配置文件

在创建配置文件之后,使用 pfinstall(1M) 命令测试该配置文件。在使用该配置文件安装或升级一个系统之前,先测试该配置文件。如果您正在创建用于重新分配磁盘空间的升级配置文件,则测试配置文件尤其有用。

通过查看由 pfinstall 生成的安装输出,您可以快速确定一个配置文件是否在按预期方式工作。例如,使用配置文件可以在对一个系统执行升级前,确定该系统是否有足够的磁盘空间来升级到新的 Solaris 软件发行版。

pfinstall 使您能够针对以下方面来测试一个配置文件:

创建用于测试配置文件的临时 Solaris 9 环境

要成功而准确地测试某一特定 Solaris 发行版的配置文件,您必须在同一发行版的 Solaris 环境中测试配置文件。例如,如果要测试 Solaris 9 初始安装配置文件,请在运行 Solaris 9 操作环境的系统上运行 pfinstall 命令。

如果要在以下某种情况下测试配置文件,则需要创建一个临时安装环境:

  1. 从以下一种介质的映像引导系统:

    • Solaris SPARC Platform Edition DVD

    • Solaris x86 Platform Edition DVD

    • Solaris Software 1 of 2 SPARC Platform Edition CD

    • Solaris Software 1 of 2 x86 Platform Edition CD


    注意:

    如果要测试升级配置文件,请引导正在升级的系统。


  2. 对系统标识问题加以响应。

  3. 从安装程序中退出。

    • 如果您使用的是 Solaris DVD,请在以下提示符后键入 !。


      Solaris Web Start 将帮助您安装 Solaris 软件。<按 ENTER 键继续> {“!”退出}
    • 如果您使用的是 Solaris Software 1 of 2 CD,请选择 Solaris suninstall 程序作为安装 Solaris 9 操作环境的程序。在显示的第一个屏幕上,选择“退出”。

  4. 从 shell 执行 pfinstall 命令。有关使用 pfinstall 命令的详细信息,请参见测试配置文件中的步骤 7

测试配置文件

  1. 找到要在其上测试配置文件的系统,该平台的类型与创建配置文件的平台的类型相同(SPARC 或 x86)。

    如果您正在测试一个升级配置文件,则必须在要升级的实际系统上测试该配置文件。

  2. 使用以下判定表来确定下一步的工作。

    测试方案 

    说明 

    测试初始安装配置文件,并且具有运行 Solaris 9 软件的系统 

    成为该系统的超级用户,并转到步骤 5

    测试升级配置文件,或者您没有运行 Solaris 9 的系统用于测试初始安装配置文件 

    创建临时 Solaris 9 环境以测试配置文件。有关详细信息,请参见创建用于测试配置文件的临时 Solaris 9 环境。然后,请转到步骤 3

  3. 创建一个临时安装点。


    # mkdir /tmp/mnt
    
  4. 安装包含要测试的一个或多个配置文件的目录。

    安装方案 

    键入指令 

    为网络上的系统安装远程 NFS 文件系统 


    mount -F nfs server_name:path /tmp/mnt
    

    SPARC:安装 UFS 格式的软盘 


    mount -F ufs /dev/diskette /tmp/mnt
    

    安装 PCFS 格式的软盘 


    mount -F pcfs /dev/diskette /tmp/mnt
    

  5. 要测试具有特定系统内存大小的配置文件,请将 SYS_MEMSIZE 设置为该特定内存大小(以 MB 为单位)。


    # SYS_MEMSIZE=memory_size
    # export SYS_MEMSIZE
    

  6. 您是否已在步骤 4 中安装了一个目录?

    • 如果已安装,请将该目录更改为 /tmp/mnt


      # cd /tmp/mnt
      

    • 如果未安装,请将该目录更改为配置文件所在的目录,通常为 JumpStart 目录。


      # cd jumpstart_dir_path
      

  7. 使用 pfinstall(1M) 命令测试配置文件。


    # /usr/sbin/install.d/pfinstall -D:-d disk_config_file[[-c path]] profile
    

    小心:小心:

    必须包括 -d-D 选项。如果这两个选项都未包括,则 pfinstall 将使用所指定的配置文件来安装 Solaris 9 软件。系统上的所有数据都会被覆盖。


    -D

    pfinstall 使用当前系统的磁盘配置来测试配置文件。您必须使用 -D 选项来测试升级配置文件。

    -d disk_config_file

    pfinstall 使用磁盘配置文件 disk_config_file 来测试配置文件。如果 disk_config_file 不在运行 pfinstall 的目录中,则必须指定路径。

    有关如何创建磁盘配置文件的说明,请参见创建磁盘配置文件


    注意:

    您不能对升级配置文件 install_type upgrade 使用 -d disk_config_file 选项。必须始终根据系统的磁盘配置来测试升级配置文件,也就是说,您必须使用 -D 选项。


    -c path

    Solaris 9 软件映像的路径。例如,如果系统正在使用卷管理器来安装您的平台的 Solaris Software 1 of 2 CD,则使用该选项。


    注意:

    如果您从平台的 Solaris DVD 或 Solaris Software 1 of 2 CD 映像引导,则不需要使用 -c 选项。DVD 或 CD 映像作为引导进程的一部分安装在 /cdrom 上。


    profile

    要测试的配置文件的名称。如果 profile 不在运行 pfinstall 的目录中,则必须指定路径。

配置文件测试实例

下面的实例显示了如何使用 pfinstall 来测试名为 basic_prof 的配置文件。该配置文件根据安装有 Solaris 9 软件的系统上的磁盘配置进行测试。basic_prof 配置文件位于 /jumpstart 目录中,并且指定 Solaris Software 1 of 2 SPARC Platform Edition CD 或 Solaris Software 1 of 2 x86 Platform Edition CD 映像的路径,因为卷管理器正在被使用。


实例 23–10 使用 Solaris 9 系统进行配置文件测试


# cd /jumpstart
# /usr/sbin/install.d/pfinstall -D -c /cdrom/pathname basic_prof

下面的实例显示了如何使用 pfinstall 在 Solaris 9 系统上测试名为 basic_prof 的配置文件。该测试将根据 535_test 磁盘配置文件来执行。该测试将检查系统是否有 64 MB 的内存。该实例使用了位于 /export/install 目录中的 Solaris Software 1 of 2 SPARC Platform Edition CD 或 Solaris Software 1 of 2 x86 Platform Edition CD 映像。


实例 23–11 使用磁盘配置文件进行配置文件测试


# SYS_MEMSIZE=64
# export SYS_MEMSIZE
# /usr/sbin/install.d/pfinstall -d 535_test -c /export/install basic_prof

验证 rules 文件

在使用配置文件和 rules 文件之前,您必须先运行 check 脚本来验证这些文件是否已正确设置。如果所有规则和配置文件都已正确设置,将创建 rules.ok 文件,该文件是定制 JumpStart 安装软件将系统与配置文件相匹配时所必需的。

表 23–3说明 check 脚本的功能。

表 23–3 使用 check 脚本时发生的事情

阶段 

说明 

检查 rules 文件的语法是否正确。

 

check 验证规则关键字是否合法,以及是否为每一个规则都指定了 beginclassfinish 字段。beginfinish 字段可以包含一个减号 (-) 而不是文件名。

如果 rules 文件中没有错误,将检查在规则中指定的各个配置文件的语法是否正确。

如果没有找到任何错误,check 将从 rules 文件创建 rules.ok 文件、删除所有注释和空白行、保留所有规则并在末尾添加以下注释行:

# version=2 checksum=num

验证 rules 文件

  1. 确保 check 脚本位于 JumpStart 目录中。


    注意:

    check 脚本位于 Solaris DVD 或 Solaris Software 1 of 2 CD 上的 Solaris_9/Misc/jumpstart_sample 目录中。


  2. 将该目录更改为 JumpStart 目录。

  3. 运行 check 脚本以验证 rules 文件:


    $ ./check [[-p path -r file_name]]
    -p path

    通过使用 Solaris 9 软件映像中的 check 脚本(而不是所用系统中的 check 脚本)来验证 rulespath 是本地磁盘或已安装的 Solaris DVD 或 Solaris Software 1 of 2 CD 上的映像。

    如果您的系统运行的是早期版本的 Solaris,请使用此选项运行最新版本的 check

    -r file_name

    指定一个名称不是 rules 的规则文件。您可以使用此选项在将某个规则集成到 rules 文件之前测试该规则的有效性。

    check 脚本运行时,它会报告对 rules 文件和各配置文件的有效性检查的情况。如果没有遇到任何错误,该脚本将报告:定制 JumpStart 配置运行良好

  4. 确保 root 拥有 rules.ok 文件,并且权限被设置为 644。

在验证 rules 文件之后,您可以在第 24 章,使用可选的定制 JumpStart 功能(任务)中了解有关可选的定制 JumpStart 功能的详细信息。您可以在第 26 章,执行定制 JumpStart 安装(任务)中了解有关执行定制 JumpStart 安装的信息。