Solaris 10 安装指南:自定义 JumpStart 和高级安装

创建 rules 文件

rules 文件是一个文本文件,包含要安装 Solaris OS 的各组系统的规则。每个规则将一组基于一个或多个系统属性的系统相区别开来。每个规则还可以将相应的系统组链接到一个配置文件。配置文件是一个文本文件,它定义了如何在组中的各个系统上安装 Solaris 软件。例如,以下规则指定 JumpStart 程序使用 basic_prof 配置文件中的信息并通过 sun4u 平台组来安装任意系统。

karch sun4u - basic_prof -

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


注 –

如果使用创建独立系统的配置文件软盘创建联网系统的配置文件服务器中描述的过程设置 JumpStart 目录,则可以在 JumpStart 目录中找到 rules 示例文件。该 rules 文件样例包含文档和一些规则示例。如果使用 rules 文件样例,请确保将不想使用的规则示例注释掉。


rules 文件的语法

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

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

Procedure创建 rules 文件

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

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

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

    rules 文件中的规则必须遵循以下语法:

    !rule_keyword rule_value && !rule_keyword rule_value ... begin  profile  finish
    
    !

    在关键字之前使用此符号表示否定。

    rule_keyword

    描述常规系统属性的预定义词法单位或词,如主机名 hostname 或内存大小 memsizerule_keyword 与规则值一起使用,以便将系统与指向配置文件的相同属性进行匹配。有关规则关键字的列表,请参见规则关键字和值

    rule_value

    为相应的规则关键字提供特定系统属性的值。规则关键字和值对规则值进行了说明。

    &&

    在同一规则中,必须使用此符号来连接规则关键字和规则值对(逻辑 AND)。在自定义 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 程序找到与已知系统相匹配的规则关键字和值时,它将安装 profile 字段中列出的配置文件所指定的 Solaris 软件。


示例 6–1 rules 文件

 # rule keywords and rule values       begin script       profile       finish script
 # -----------------------------       ------------       --------      -------------
  hostname eng-1                       -                  basic_prof    -
  network 192.168.255.255 && !model \
 'SUNW,Sun-Blade-100'                  -                  net_prof      -
  model SUNW,SPARCstation-LX           -                  lx_prof       complete
  network 192.168.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.168.255.255 上,并且系统不是 Sun Blade TM 100 (SUNW, Sun-Blade-100),则系统与此规则相匹配。net_prof 配置文件用于在与此规则匹配的系统上安装 Solaris 软件。该规则还提供了一个规则换行的示例,换行格式在rules 文件的语法中定义。

model

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

network

如果系统位于子网 192.168.2.0 上,并且为基于 x86 的 sun4u 系统,则系统与此规则相匹配。setup 开始脚本、x864u_prof 配置文件和 done 结束脚本用于在匹配该规则的系统上安装 Solaris 软件。

memsize

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

any

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