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

第 1 部分 使用自定义 JumpStart

本部分提供有关创建、准备和执行自定义 JumpStart 安装的说明。

第 1 章 在何处查找 Solaris 安装规划信息

本书提供有关如何使用自动 JumpStart 安装程序安装 Solaris 操作系统的信息。本书提供使用 JumpStart 程序进行安装时需要了解的所有信息,但在开始准备 JumpStart 安装之前,阅读安装文档集中的规划书籍可能会很有用。在安装系统之前,以下参考资料可提供有用的信息。

在何处查找规划和系统要求信息

Solaris 10 5/08 安装指南:规划安装和升级》提供了系统要求和高级规划信息,如文件系统规划原则和升级规划以及其他更多信息。本节对这本书的章节进行了概述。

规划指南中的章节说明 

参考 

本章介绍 Solaris 安装程序的新增功能。 

《Solaris 10 5/08 安装指南:规划安装和升级》中的第 2  章 “Solaris 安装的新增功能”

本章提供有关在安装或升级 Solaris OS 之前需要做出哪些决定的信息。例如,决定何时使用网络安装映像或 DVD 介质以及所有 Solaris 安装程序的说明。  

《Solaris 10 5/08 安装指南:规划安装和升级》中的第 3  章 “Solaris 安装和升级(汇总信息)”

本章介绍安装或升级到 Solaris OS 的系统要求,还提供了关于规划磁盘空间和缺省的交换空间分配的通用指南。此外,还介绍了一些升级限制。 

《Solaris 10 5/08 安装指南:规划安装和升级》中的第 4  章 “系统要求、原则和升级(规划)”

本章提供有助于您收集安装或升级系统所需的全部信息的核对表。例如,如果您要执行交互式安装,此信息会很有用。您可以在核对表中找到执行交互式安装所需的全部信息。 

《Solaris 10 5/08 安装指南:规划安装和升级》中的第 5  章 “在安装或升级前收集信息(规划)”

这些章节概述了与 Solaris OS 安装或升级有关的多种技术。同时,还提供了与这些技术相关的原则和要求。这些章节中包含有关基于 GRUB 的引导、Solaris Zones 分区技术和可以在安装时创建的 RAID-1 卷的信息。 

《Solaris 10 5/08 安装指南:规划安装和升级》中的第 II 部分, “了解与 GRUB、Solaris Zones 和 RAID-1 卷相关的安装”

第 2 章 自定义 JumpStart(概述)

本章对自定义 JumpStart 安装过程进行了简要介绍。

自定义 JumpStart 介绍

自定义 JumpStart 安装方法是一个命令行界面,它使您可以基于所创建的配置文件来自动安装或升级多个系统。配置文件定义了特定软件安装要求。您还可以结合使用 shell 脚本以包含安装前和安装后任务。选择安装或升级所使用的配置文件和脚本。自定义 JumpStart 安装方法基于所选择的配置文件和脚本来安装或升级系统。此外,还可以使用 sysidcfg 文件指定配置信息,以使自定义 JumpStart 安装完全脱离手动干预。

自定义 JumpStart 示例方案

可以使用示例方案来描述自定义 JumpStart 过程。在此示例方案中,需要使用以下参数设置系统:

首先,系统管理员必须为每组系统创建一个 rules 文件和一个配置文件。rules 文件是一个文本文件,包含针对您要安装 Solaris 软件的每组系统或单个系统的规则。每个规则将一组基于一个或多个系统属性的系统相区别开来。每个规则还可以将相应的系统组链接到一个配置文件。

配置文件是一个文本文件,它定义了如何在组中的各个系统上安装 Solaris 软件。rules 文件和配置文件都必须位于 JumpStart 目录中。

对于该示例方案,系统管理员创建一个包含两个不同规则的 rules 文件,其中一个规则用于工程设计组,另一个用于市场营销组。对于每个规则,系统的网络号用于区分工程设计组和市场营销组。

各个规则还包含指向适当配置文件的链接。例如,在工程设计组的规则中,添加一个指向为工程设计组创建的 eng_profile 配置文件的链接。在市场营销组的规则中,添加一个指向为市场营销组创建的 market_profile 配置文件的链接。

您可以将 rules 文件和配置文件保存在软盘上或服务器上。

创建 rules 文件和配置文件后,使用 check 脚本验证这些文件。如果 check 脚本运行成功,则创建 rules.ok 文件。rules.ok 是 JumpStart 程序用来安装 Solaris 软件的 rules 文件的生成版本。

JumpStart 程序如何安装 Solaris 软件

验证 rules 文件和配置文件后,即可开始自定义 JumpStart 安装。JumpStart 程序读取 rules.ok 文件。然后,JumpStart 程序搜索第一个具有所定义的系统属性(该系统属性与 JumpStart 程序正尝试在其上安装 Solaris 软件的系统相匹配)的规则。如果存在匹配项,JumpStart 程序将使用在该规则中指定的配置文件在系统上安装 Solaris 软件。

图 2–1 显示了自定义 JumpStart 安装如何在非联网的独立系统上工作。系统管理员在 Pete 的系统上启动自定义 JumpStart 安装。JumpStart 程序访问系统的软盘驱动器中的软盘上的规则文件。JumpStart 程序将 rule 2 与系统匹配。rule 2 指定 JumpStart 程序使用 Pete's profile 来安装 Solaris 软件。JumpStart 程序读取 Pete's profile,然后根据系统管理员在 Pete's profile 中指定的指令来安装 Solaris 软件。

图 2–1 自定义 JumpStart 安装的工作原理:非联网示例

文中对此图例进行了说明。

图 2–2 显示了自定义 JumpStart 安装如何在联网的多个系统上工作。 之前,系统管理员设置了不同的配置文件,并将这些配置文件保存在单个服务器上。系统管理员在一个工程设计系统上启动自定义 JumpStart 安装。JumpStart 程序访问服务器上 JumpStart/ 目录中的 rules 文件。JumpStart 程序将工程设计系统与 rule 1 匹配。rule 1 指定 JumpStart 程序使用 Engineering Group's Profile 来安装 Solaris 软件。JumpStart 程序读取 Engineering Group's Profile,然后根据系统管理员在 Engineering Group's Profile 中指定的指令来安装 Solaris 软件。

图 2–2 自定义 JumpStart 安装的工作原理:联网示例

文中对此图例进行了说明。

图 2–3 说明了 JumpStart 程序搜索自定义 JumpStart 文件的顺序。

图 2–3 自定义 JumpStart 安装过程中执行的操作

下图显示了自定义 JumpStart 程序查找文件的顺序。

第 3 章 准备自定义 JumpStart 安装(任务)

本章提供逐步说明,介绍使用自定义 JumpStart 安装方法将 Solaris 软件安装到站点上/从站点上安装时,如何准备系统。

任务图:准备自定义 JumpStart 安装

表 3–1 任务图:准备自定义 JumpStart 安装

任务 

描述 

参考 

在系统上已经安装有 Solaris 软件早期版本的情况下,确定升级系统的方式 

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

《Solaris 10 5/08 安装指南:规划安装和升级》中的“升级规划”

创建 JumpStart 目录。 

在服务器上

如果要在已联网的系统上执行自定义 JumpStart 安装,则必须创建一个配置文件服务器。配置文件服务器包含用于自定义 JumpStart 文件的 JumpStart 目录。 

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

在软盘上

如果要在未联网的系统上执行自定义 JumpStart 安装,则必须创建一张配置文件软盘。配置文件软盘包含自定义 JumpStart 文件。 

创建独立系统的配置文件软盘

将规则添加到 rules 文件。

确定各组系统或单组系统的安装方式之后,请为要安装的每个组创建一条规则。每条规则区分一组系统,这些系统基于一个或多个系统属性。规则将对应的组链接到配置文件。 

创建 rules 文件

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

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

创建配置文件

(可选)测试配置文件。 

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

测试配置文件

验证 rules 文件。

rules.ok 文件是 rules 文件的衍生版本。JumpStart 程序使用 rules 文件将要安装的系统与配置文件进行匹配。必须使用 check 脚本验证 rules 文件。

验证 rules 文件

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

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

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


注 –

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


Procedure在服务器上创建 JumpStart 目录


注 –

此过程假设系统正在运行卷管理器。如果您未使用卷管理器来管理磁盘,请参阅《系统管理指南:设备和文件系统》,以了解有关在不使用卷管理器时管理可移除介质的详细信息。


  1. 找到要在其上创建 JumpStart 目录的服务器。

  2. 成为超级用户或承担等效角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

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


    # mkdir -m 755 jumpstart_dir_path
    

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

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


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


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

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


    share -F nfs -o ro,anon=0 /jumpstart
    
  5. 键入 shareall,然后按 Enter 键。

  6. 确定是否要将自定义 JumpStart 文件示例复制到 JumpStart 目录中。

    • 如果不复制,请转至步骤 9

    • 如果复制,请使用以下判定表来确定下一步的操作。

    示例位置 

    参考 

    适用于您的平台的 Solaris Operating System DVD 或 Solaris Software - 1 CD 

    将 Solaris Operating System DVD 或 Solaris Software - 1 CD 插入服务器的 CD-ROM 驱动器。 

    卷管理器会自动挂载 CD 或 DCD。 

    本地磁盘上的、适用于您的平台的 Solaris Operating System DVD 映像或 Solaris Software - 1 CD 映像

    转到 Solaris Operating System DVD 或 Solaris Software - 1 映像所在的目录。例如,键入以下命令: 


    cd /export/install

  7. 将自定义 JumpStart 文件示例复制到配置文件服务器上的 JumpStart 目录中。


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

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

    jumpstart_dir_path

    配置文件服务器上放置自定义 JumpStart 文件示例的路径

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

    • 对基于 SPARC 的系统:


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


      cp -r /cdrom/cdrom0/Solaris_10/Misc/jumpstart_sample/* /jumpstart
      
  8. 更新 JumpStart 文件示例,以便这些文件可以在您的环境中运行。

  9. 确保 JumpStart 目录位于 root 中,且权限被设置为 755。

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

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

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

创建配置文件服务器时,必须确保系统在自定义 JumpStart 安装期间可以访问配置文件服务器上的 JumpStart 目录。请使用以下方法之一来确保该访问权限。

命令或文件 

提供访问权限 

参考 

add_install_client 命令

每次为网络安装添加系统时,请使用 -c 选项和 add_install_client 命令指定配置文件服务器。


注 –

如果没有使用 NFS,则必须使用其他方法来提供访问权限。

  • 对基于 SPARC 的系统,请使用 boot 命令

  • 对基于 x86 的系统,请编辑 GRUB 菜单


引导系统时指定 JumpStart 目录的位置 

  • 对基于 SPARC 的系统,请使用 boot 命令引导系统。引导系统时指定配置文件服务器上 JumpStart 目录的位置。必须将自定义 JumpStart 配置文件压缩为一个文件。然后,将压缩后的配置文件保存在 HTTP 或 HTTPS 服务器上。

  • 对基于 x86 的系统,当通过编辑 GRUB 菜单上的引导项来引导系统时,请在配置文件服务器上指定 JumpStart 目录的位置。必须将自定义 JumpStart 配置文件压缩为一个文件。然后,将压缩后的配置文件保存在 HTTP 或 HTTPS 服务器上。

    编辑 GRUB 菜单项时,请指定压缩文件的位置。

/etc/bootparams 文件

/etc/bootparams 文件中添加一个通配符。

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

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

只有将网络安装信息存储在下列位置时,才使用以下过程:

如果使用以下过程,系统必须是同一类型,例如都是 SPARC 系统。

不要在以下情况中使用该过程:

如果存在以上情况,请使用 SPARC boot 命令或使用 x86 GRUB 菜单。


注 –

还可以将网络安装信息存储在 DHCP 服务器上。


  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 文件和配置文件。该目录必须保存在配置文件软盘的根 (/) 目录中。

请参见以下过程之一:

ProcedureSPARC: 创建配置文件软盘


注 –

此过程假设系统正在运行卷管理器。如果未使用卷管理器来管理软盘、CD 和 DVD,请参阅《系统管理指南:设备和文件系统》,以获得有关在不使用卷管理器的情况下管理可移除介质的详细信息。


  1. 找到连接了软盘驱动器的基于 SPARC 的系统。

  2. 成为超级用户或承担等效角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

  3. 将空白软盘或可覆写的软盘放入软盘驱动器。

  4. 挂载软盘。


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

    在系统上检查 /etc/mnttab 文件的内容,确定是否存在与以下内容类似的项:


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

    • 如果该项不存在,请执行下一步。

  6. 在软盘上创建 UFS。


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

    • 如果不复制,请转至步骤 10

    • 如果复制,请使用以下判定表来确定下一步的操作。

    示例位置 

    参考 

    Solaris Operating System for SPARC Platforms DVD 或 Solaris Software for SPARC Platforms - 1 CD  

    将 Solaris Operating System for SPARC Platforms DVD 或 Solaris Software for SPARC Platforms - 1 CD 插入服务器的 CD-ROM 驱动器中。 

    卷管理器会自动挂载 CD 或 DVD。 

    本地磁盘上 Solaris Operating System for SPARC Platforms DVD 或 Solaris Software for SPARC Platforms - 1 CD 的映像

    将目录更改为 Solaris Operating System for SPARC Platforms DVD 或 Solaris Software for SPARC Platforms - 1 CD 映像的位置。例如,键入以下命令: 


    cd /export/install
    

  8. 将示例自定义 JumpStart 文件复制到配置文件软盘上的 JumpStart 目录中。


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

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

    jumpstart_dir_path

    指向要放置自定义 JumpStart 文件示例的配置文件软盘的路径


    注 –

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


    例如,以下命令将 Solaris Software for SPARC Platforms - 1 CD 上的 jumpstart_sample 的内容复制到配置文件软盘 scrap 的根 (/) 目录中:


    cp -r /cdrom/cdrom0/s0/Solaris_10/Misc/jumpstart_sample/* /floppy/scrap
    
  9. 更新配置文件软盘上的 JumpStart 文件示例,以便这些文件可以在您的环境中运行。

  10. 确保 JumpStart 目录位于 root 中,且权限被设置为 755。

  11. 弹出该软盘。


    # eject floppy
    

    配置文件软盘创建完成。现在,您可以更新 rules 文件并在配置文件软盘上创建配置文件,以执行自定义 JumpStart 安装。要继续,请转至创建 rules 文件

Procedurex86: 使用 GRUB 创建配置文件软盘

通过此过程使用 GRUB 创建配置文件软盘。在启用了引导进程的安装过程中会提供 GRUB 菜单。GRUB 菜单将取代以前的发行版中引导系统时所用的 Solaris Device Configuration Assistant。


注 –

此过程假设系统正在运行卷管理器。如果未使用卷管理器来管理软盘、CD 和 DVD,请参阅《系统管理指南:设备和文件系统》,以获得有关在不使用卷管理器的情况下管理可移除介质的详细信息。


  1. 找到连接了软盘驱动器的基于 x86 的系统。

  2. 成为超级用户或承担等效角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

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

  4. 挂载软盘。


    # volcheck
    
  5. 确定是否要将自定义 JumpStart 文件示例复制到 JumpStart 目录中。

    • 如果不复制,请转至步骤 8

    • 如果复制,请使用以下判定表来确定下一步的操作。

    示例位置 

    参考 

    Solaris Operating System for x86 Platforms DVD 或 Solaris Software for x86 Platforms - 1 CD  

    将 Solaris Operating System for x86 Platforms DVD 或 Solaris Software for x86 Platforms - 1 CD 插入服务器的 CD-ROM 驱动器中。 

    卷管理器会自动安装 CD 或 DVD。 

    本地磁盘上 Solaris Operating System for x86 Platforms DVD 或 Solaris Software for x86 Platforms - 1 CD 的映像

    转到 Solaris Operating System for x86 Platforms DVD 或 Solaris Software for x86 Platforms - 1 CD 映像所在的目录。例如,键入以下命令: 


    cd /export/install

  6. 将示例自定义 JumpStart 文件复制到配置文件软盘上的 JumpStart 目录中。


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

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

    jumpstart_dir_path

    指向要放置自定义 JumpStart 文件示例的配置文件软盘的路径


    注 –

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


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


    cp -r /cdrom/cdrom0/Solaris_10/Misc/jumpstart_sample/* /floppy/scrap
    
  7. 更新配置文件软盘上的 JumpStart 文件示例,以便这些文件可以在您的环境中运行。

  8. 确保 JumpStart 目录位于 root 中,且权限被设置为 755。

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

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

  11. 手动弹出该软盘。

另请参见

配置文件软盘创建完成。现在,您可以更新 rules 文件并在配置文件软盘上创建配置文件,以执行自定义 JumpStart 安装。要继续,请转至创建 rules 文件

创建 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 软件。

有关 rules 文件限制的完整列表,请参见rules 文件的语法


示例 3–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 软件。此规则还提供了一个通过使用反斜杠字符 (\) 在新的一行上继续使用单个规则的示例。

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 文件中的最后一个规则。


创建配置文件

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

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

system_type  server

注 –

如果使用下列任一步骤创建了 JumpStart 目录,则 JumpStart 目录中应该已存在样例配置文件:


配置文件语法

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

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

Procedure创建配置文件

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


    注 –

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


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

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


    注 –

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


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

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

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

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

配置文件示例

下面的配置文件示例显示了如何使用不同的配置文件关键字和配置文件值控制在系统上安装 Solaris 软件的方式。配置文件关键字和值 包含配置文件关键字和值的描述。


示例 3–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 挂载,则手册页软件包将不安装在系统上。而是安装包含 System Accounting 公用程序的软件包。



示例 3–3 挂载远程文件系统和添加第三方软件包

 
# profile keywords        profile values
# -----------------       -----------------
  install_type            initial_install
  system_type             standalone
  partitioning            default
  filesys                 any 512 swap   # specify size of /swap
  cluster                 SUNWCprog
  cluster                 SUNWCacc
  package                 apache_server  \
                           http://package.central/packages/apache timeout 5

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

install_type

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

system_type

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

partitioning

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

cluster

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

package

第三方软件包安装在 HTTP 服务器中的系统上。



示例 3–4 指定文件系统的安装位置

# 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 将安装在系统上。



示例 3–5 升级和安装修补程序

# profile keywords         profile values
# ----------------         -------------------
  install_type             upgrade 
  root_device              c0t3d0s2 
  backup_media             remote_filesystem timber:/export/scratch
  package                  SUNWbcp delete
  package                  SUNWxwman add
  cluster                  SUNWCacc add   
  patch                    patch_list nfs://patch_master/Solaris_10/patches \
                           retry 5
  locale                   de

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

install_type

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

root_device

升级 c0t3d0s2 上的根文件系统。

backup_media

重新分配磁盘空间期间,使用远程系统 timber 来备份数据。有关更多的备份介质关键字值的信息,请参见backup_media 配置文件关键字

package

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

package

如果系统尚未安装 X 窗口系统手册页和 System Accounting 实用程序,则此代码可以确保系统安装这些内容。自动升级系统上已有的所有软件包。

patch

升级时安装的修补程序的列表。修补程序列表位于 patch_master NFS 服务器上的 Solaris_10/patches 目录下。如果挂载失败,则会尝试进行五次 NFS 挂载。

locale

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



示例 3–6 重新分配磁盘空间,以便升级

# 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 窗口系统手册页和 System Accounting 实用程序,则此代码可以确保系统安装这些内容。自动升级系统上已有的所有软件包。

locale

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



示例 3–7 从 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

从 HTTP 服务器检索 Solaris Flash 归档文件。

partitioning

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



示例 3–8 从安全 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

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

partitioning

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



示例 3–9 检索 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
package                    SUNWnew http://192.168.254.255/Solaris_10 timeout 5

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

install_type

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

archive_location

从 HTTP 服务器检索 Solaris Flash 归档文件。

partitioning

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

package

SUNWnew 软件包是从 HTTP 服务器 192.168.254.255 上的 Solaris_10 目录添加的。



示例 3–10 从 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

从 NFS 服务器检索 Solaris Flash 归档文件。

no_master_check

不会对克隆系统进行系统映像有效性的检查。此类有效系统映像是从初始主系统创建的。



示例 3–11 创建空引导环境

在下面的配置文件示例中,自定义 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 归档文件来安装。然后可以激活该新引导环境,使之成为当前引导环境。

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



示例 3–12 安装 Solaris Flash 归档文件时创建 RAID-1 卷

在下面的配置文件示例中,自定义 JumpStart 程序使用 Solaris 卷管理器技术为根 (/)、swap/usr /export/home文件系统创建 RAID-1 卷(镜像)。在引导环境中安装 Solaris Flash 归档文件。

# profile keywords        profile values
# ----------------        -------------------
  install_type            flash_install
  arhcive_location        nfs server:/export/home/export/flash.s10.SUNWCall
  partitioning            explicit
  filesys                 mirror:d10 c0t0d0s0 c0t1d0s0 4096 /
  filesys                 mirror c0t0d0s1 2048 swap
  filesys                 mirror:d30 c0t0d0s3 c0t1d0s3 4096 /usr
  filesys                 mirror:d40 c0t0d0s4 c0t1d0s4 4096 /usr
  filesys                 mirror:d50 c0t0d0s5 c0t1d0s5 free /export/home
  metadb                  c0t1d0s7 size 8192 count 3

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

install_type

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

archive_location

从 NFS 服务器检索 Solaris Flash 归档文件。

partitioning

文件系统片由 filesys 关键字和 explicit 值来确定。

filesys

在片 c0t0d0s0c0t1d0s0 上创建根 (/) 文件系统和镜像。根 (/) 文件系统的大小设置为 4096 MB。镜像 c0t0d0s0c0t1d0s0 的 RAID-1 卷名为 d10

filesys

在片 c0t0d0s1 上创建 swap 文件和镜像,共占用 2048 MB。自定义 JumpStart 程序将为镜像指定名称。

filesys

在片 c0t1d0s3c0t0d0s3 上创建 /usr 文件系统和镜像。/usr 文件系统的大小设置为 4096 MB。RAID-1 卷名为 d30

filesys

在片 c0t1d0s4 和片 c0t0d0s4 上创建 /usr 文件系统和镜像。/usr 文件系统的大小设置为 4096 MB。RAID-1 卷名为 d40

metadb

在片 c0t1d0s7 上安装三个状态数据库副本 (metadbs),共占用 8192 个块 (4 MB)。



示例 3–13 创建 RAID-1 卷,以镜像根文件系统

在下面的配置文件示例中,自定义 JumpStart 程序使用 Solaris 卷管理器技术为根 (/) 文件系统创建 RAID-1 卷(镜像)。

# profile keywords        profile values
# ----------------        -------------------
  install_type            initial_install
  cluster                 SUNWCXall
  filesys                 mirror:d30 c0t1d0s0 c0t0d0s0  /
  filesys                 c0t0d0s3 512 swap
  metadb                  c0t0d0s4 size 8192 count 4
  metadb                  c0t1d0s4 size 8192 count 4
  

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

cluster

完整 Solaris 软件加 OEM 支持软件组 (SUNWCXall) 将安装在系统上。

filesys

在片 c0t1d0s0 和片 c0t0d0s0 上创建根 (/) 文件系统和镜像。镜像 c0t1d0s0c0t0d0s0 的 RAID-1 卷名为 d30。自定义 JumpStart 程序将为两个子镜像指定名称。

filesys

在片 c0t0d0s3 上创建 swap 文件系统和镜像,该系统大小为 512 MB。

metadb

在片 c0t0d0s4 上安装四个状态数据库副本 (metadbs),共占用 8192 个块 (4 MB)

metadb

在片 c0t1d0s4 上安装四个状态数据库副本 (metadbs),共占用 8192 个块 (4 MB)



示例 3–14 创建 RAID-1 卷,以镜像多个文件系统

在下面的配置文件示例中,自定义 JumpStart 程序使用 Solaris 卷管理器技术为根 (/) 文件系统、swap 文件系统和 /usr 文件系统创建 RAID-1 卷(镜像)。

# profile keywords        profile values
# ----------------        -------------------
  install_type            initial_install
  cluster                 SUNWCXall
  filesys                 mirror:d100 c0t1d0s0 c0t0d0s0 200 /
  filesys                 c0t1d0s5 500 /var
  filesys                 c0t0d0s5 500
  filesys                 mirror c0t0d0s1 512 swap
  metadb                  c0t0d0s3 size 8192 count 5
  filesys                 mirror c0t1d0s4 c0t0d0s4 2000 /usr
  filesys                 c0t1d0s7 free /export/home
  filesys                 c0t0d0s7 free

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

cluster

完整 Solaris 软件加 OEM 支持软件组 (SUNWCXall) 将安装在系统上。

filesys

在片 c0t1d0s0 和片 c0t0d0s0 上创建根 (/) 文件系统和镜像。根 (/) 文件系统的大小被设置成 200 MB。镜像 c0t1d0s0c0t0d0s0 的 RAID-1 卷名为 d100

filesys

在片 c0t1d0s5 上安装 /var 文件系统,共占用 500 MB。在片 c0t1d0s0 和片 c0t0d0s0 上创建根 (/) 文件系统和镜像。根 (/) 文件系统的大小被设置成 200 MB。镜像 c0t1d0s0c0t0d0s0 的 RAID-1 卷名为 d100

filesys

在片 c0t0d0s1 上创建 swap 文件系统和镜像,并为该文件系统分配 512 MB 的磁盘空间。自定义 JumpStart 程序将为镜像指定名称。

metadb

在片 c0t0d0s3 上安装五个状态数据库副本 (metadbs),共占用 8192 个块 (4 MB)。

filesys

在片 c0t1d0s4 和片 c0t0d0s4 上创建 /usr 文件系统和镜像。/usr 文件系统的大小被设置成 2000 MB。自定义 JumpStart 程序将为镜像指定名称。



示例 3–15 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

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

fdisk

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

cluster

在系统上安装完整分发软件组 SUNWCall

cluster

不在系统上安装 System Accounting 实用程序 SUNWCacc


测试配置文件

创建配置文件后,使用 pfinstall(1M) 命令测试配置文件。请在使用配置文件安装或升级一个系统之前,测试该配置文件。在创建用于重新分配磁盘空间的升级配置文件时,测试配置文件尤为重要。

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

pfinstall 允许您针对以下方面来测试一个配置文件:

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

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

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

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

    对基于 SPARC 的系统:

    • Solaris Operating System for SPARC Platforms DVD

    • Solaris Software for SPARC Platforms - 1 CD

    对基于 x86 的系统:

    • Solaris Operating System for x86 Platforms DVD

    • Solaris Software for x86 Platforms - 1 CD


    注 –

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


  2. 响应系统标识问题。

  3. 要从安装程序退出,请在以下提示符后键入 ! 。


    Solaris 安装程序将帮助您安装 Solaris 软件。
    <按 ENTER 键继续> {键入 "!" 退出}
  4. 从 shell 执行 pfinstall 命令。有关使用 pfinstall 命令的详细信息,请参见测试配置文件中的步骤 7

Procedure测试配置文件


仅适用于 x86 –

如果使用 locale 关键字,则 pfinstall -D 命令无法测试配置文件。有关解决方法,请参见升级 Solaris 操作系统一节中的错误消息“无法选择语言环境”。


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

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

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

    测试方案 

    参考 

    测试初始安装配置文件,并具有运行 Solaris 10 5/08 软件的系统。 

    成为系统的超级用户,然后转至步骤 5

    测试升级配置文件,或没有运行用于测试初始安装配置文件的 Solaris 10 5/08 系统。 

    创建一个临时 Solaris 10 5/08 环境,以测试配置文件。有关详细信息,请参见创建用于测试配置文件的临时 Solaris 环境。然后,请转至步骤 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 软件。系统上的所有数据都会被覆写。


    -D

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

    -d disk_config_file

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

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


    注 –

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


    -c path

    指向 Solaris 软件映像的路径。例如,如果系统正在使用卷管理器来挂载您的平台的 Solaris Software - 1 CD,则使用此选项。


    注 –

    如果您从平台的 Solaris Operating System DVD 或 Solaris Software - 1 CD 映像进行引导,那么不需要使用 -c 选项。此时,DVD 或 CD 映像将作为引导过程的一部分挂载在 /cdrom 上。


    profile

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

配置文件测试示例

以下示例显示了如何使用 pfinstall 来测试配置文件 basic_prof。对该配置文件的测试是针对安装有 Solaris 10 5/08 软件的系统上的磁盘配置而进行的。basic_prof 配置文件位于 /jumpstart 目录中。同时,因为使用了卷管理器 ,所以指向 Solaris Operating System DVD 映像的路径已经指定。


示例 3–16 使用 Solaris 10 5/08 系统来测试配置文件


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

以下示例显示了如何使用 pfinstall 在 Solaris 10 5/08 系统上测试名为 basic_prof 的配置文件。该测试是针对磁盘配置文件 535_test 而进行的,目的是检查系统是否具有 64 MB 内存。此示例使用了 /export/install 目录中的 Solaris Software for SPARC Platforms - 1 CD 或 Solaris Software for x86 Platforms - 1 CD 映像。


示例 3–17 使用磁盘配置文件来测试配置文件


# 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 安装软件需要使用该文件将系统与配置文件进行匹配。

表 3–2 描述了 check 脚本的作用。

表 3–2 使用 check 脚本时发生的情况

阶段 

描述 

检查 rules 文件的语法。

 

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

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

如果未发现错误,则 check 会根据 rules 文件创建 rules.ok 文件,删除所有注释和空白行,保留所有规则并在结尾添加以下注释行:

# version=2 checksum=num

Procedure验证 rules 文件

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


    注 –

    check 脚本位于 Solaris Operating System DVD 或 Solaris Software - 1 CD 上的 Solaris_10/Misc/jumpstart_sample 目录中。


  2. 转到 JumpStart 目录。

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


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

    使用 Solaris 软件映像中的 check 脚本,而不是所用系统中的 check 脚本来验证 rulespath 是本地磁盘上的映像或已挂载的 Solaris Operating System DVD 或 Solaris Software - 1 CD。

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

    -r file_name

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

    check 脚本运行时,它会报告对 rules 文件和每个配置文件的有效性的检查情况。如果未遇到错误,该脚本将报告以下信息。


    自定义 JumpStart 配置正常
  4. 确保 root 拥有 rules.ok 文件,并且权限被设置为 644。

另请参见

验证 rules 文件后,您可在第 4 章,使用可选的自定义 JumpStart 功能(任务)中了解有关可选自定义 JumpStart 功能的更多信息。可在第 6 章,执行自定义 JumpStart 安装(任务)中了解有关如何执行自定义 JumpStart 安装的信息。

第 4 章 使用可选的自定义 JumpStart 功能(任务)

本章介绍可用于创建附加的自定义 JumpStart 安装工具的可选功能。


注 –

本章中的说明对用于提供自定义 JumpStart 文件的 SPARC 服务器或 x86 服务器(称为配置文件服务器)都是有效的。配置文件服务器可以为不同类型的平台提供自定义 JumpStart 文件。例如,SPARC 服务器可以为基于 SPARC 的系统和基于 x86 的系统提供自定义 JumpStart 文件。


创建开始脚本

开始脚本是在 rules 文件中指定的用户定义的 Bourne shell 脚本。开始脚本可以在将 Solaris 软件安装到系统之前执行任务。只有在使用自定义 JumpStart 安装 Solaris 软件时才可以使用开始脚本。

使用开始脚本可以执行以下任务之一:

关于开始脚本的重要信息


注 –

对于 Solaris 10 发行版,在介质上提供了 JumpStart 样例脚本 set_nfs4_domain,以防止在 JumpStart 安装期间出现提示。此脚本可在安装期间抑制 NFSv4 提示。已不再需要此脚本。从 Solaris 10 8/07 发行版开始,使用 sysidcfg 关键字 nfs4_domain 来抑制提示。set_nfs4_domain 脚本不再用于抑制提示。

如果安装了非全局区域,而且 sysidcfg 文件中存在新的 nfs4_domain 关键字,则首次引导非全局区域时会设置域。否则,在引导过程完成之前,将出现 Solaris 交互式安装程序,并提示您提供域名。

请参见《Solaris 10 5/08 安装指南:基于网络的安装》中的“nfs4_domain 关键字”


用开始脚本创建派生配置文件

派生配置文件是在自定义 JumpStart 安装期间由开始脚本动态创建的配置文件。当不能设置 rules 文件以使特定的系统与配置文件相匹配时,就需要派生配置文件。例如,可能需要将派生配置文件用于具有不同硬件组件的相同系统型号,如包含不同的帧缓存器的系统。

要设置使用派生配置文件的规则,必须执行以下任务:

当系统匹配一个 profile 字段为等号 (=) 的规则时,开始脚本将创建用于在系统上安装 Solaris 软件的派生配置文件。

下面是一个开始脚本的示例,该脚本每次都创建相同的派生配置文件。您可以编写一个开始脚本,根据规则的计算创建不同的派生配置文件。


示例 4–1 创建派生配置文件的开始脚本

#!/bin/sh
echo "install_type        initial_install"    > ${SI_PROFILE}
echo "system_type         standalone"        >> ${SI_PROFILE}
echo "partitioning        default"           >> ${SI_PROFILE}
echo "cluster             SUNWCprog"         >> ${SI_PROFILE}
echo "package       SUNWman     delete"      >> ${SI_PROFILE}
echo "package       SUNWolman   delete"      >> ${SI_PROFILE}
echo "package       SUNWxwman   delete"      >> ${SI_PROFILE}

在本示例中,开始脚本必须将 SI_PROFILE 环境变量用于派生配置文件的名称,缺省情况下将名称设置为 /tmp/install.input



注 –

如果使用开始脚本创建派生配置文件,请确保该脚本没有任何错误。派生配置文件不由 check 脚本验证,这是因为派生配置文件直到开始脚本执行后才创建。


创建结束脚本

结束脚本是在 rules 文件中指定的用户定义的 Bourne shell 脚本。结束脚本可以在将 Solaris 软件安装到系统之后但在系统重新引导之前执行任务。只有在使用自定义 JumpStart 安装 Solaris 时才可以使用结束脚本。

可以使用结束脚本执行的任务包括:

关于结束脚本的重要信息

Procedure使用结束脚本添加文件

通过结束脚本,可以将文件从 JumpStart 目录添加到已安装的系统。可以添加文件的原因在于,JumpStart 目录挂载在 SI_CONFIG_DIR 变量指定的目录中。缺省情况下,该目录设置为 /tmp/install_config


注 –

也可以替换文件,方法是将文件从 JumpStart 目录复制到已安装系统中已存在的文件。


  1. 将所有要添加到已安装系统的文件复制到 JumpStart 目录中。

  2. 对于希望复制到新安装的文件系统结构中的每个文件,在结束脚本中插入以下行:

    cp ${SI_CONFIG_DIR}/file_name /a/path_name
    

示例 4–2 使用结束脚本添加文件

例如,假设您有一个为站点上所有用户开发的特殊应用程序 site_prog。如果您将 site_prog 的副本放到 JumpStart 目录中,则结束脚本中的下行会将 site_prog 从 JumpStart 目录复制到系统的 /usr/bin 目录中:

cp ${SI_CONFIG_DIR}/site_prog  /a/usr/bin

使用结束脚本添加软件包或修补程序

Solaris 软件在一个系统上安装完成之后,您可以创建一个结束脚本来自动添加软件包或修补程序。通过使用结束脚本添加软件包,可减少时间并确保安装在站点上不同系统中的软件包和修补程序的一致性。

在结束脚本中使用 pkgadd(1M)patchadd(1M) 命令时,请使用 -R 选项将 /a 指定为根路径。


示例 4–3 使用结束脚本添加软件包

  #!/bin/sh
 
  BASE=/a
  MNT=/a/mnt
  ADMIN_FILE=/a/tmp/admin
 
  mkdir ${MNT}
  mount -f nfs sherlock:/export/package ${MNT}
  cat >${ADMIN_FILE} <<DONT_ASK
  mail=root
  instance=overwrite
  partial=nocheck
  runlevel=nocheck
  idepend=nocheck
  rdepend=nocheck
  space=ask
  setuid=nocheck
  conflict=nocheck
  action=nocheck
  basedir=default
  DONT_ASK
 
  /usr/sbin/pkgadd -a ${ADMIN_FILE} -d ${MNT} -R ${BASE} SUNWxyz 
  umount ${MNT}
  rmdir ${MNT}

以下说明了用于此示例的一些命令。



示例 4–4 使用结束脚本添加修补程序

 #!/bin/sh 

########
#
# USER-CONFIGURABLE OPTIONS
#
########

# The location of the patches to add to the system after it's installed.
# The OS rev (5.x) and the architecture (`mach`) will be added to the
# root.  For example, /foo on a 8 SPARC would turn into /foo/5.8/sparc
LUPATCHHOST=ins3525-svr
LUPATCHPATHROOT=/export/solaris/patchdb
#########
#
# NO USER-SERVICEABLE PARTS PAST THIS POINT
#
#########

BASEDIR=/a

# Figure out the source and target OS versions
echo Determining OS revisions...
SRCREV=`uname -r`
echo Source $SRCREV

LUPATCHPATH=$LUPATCHPATHROOT/$SRCREV/`mach`

#
# Add the patches needed
#
echo Adding OS patches
mount $LUPATCHHOST:$LUPATCHPATH /mnt >/dev/null 2>&1
if [ $? = 0 ] ; then
	for patch in `cat /mnt/*Recommended/patch_order` ; do
		(cd /mnt/*Recommended/$patch ; echo yes | patchadd -u -d -R $BASEDIR .)
	done
	cd /tmp
	umount /mnt
else
	echo "No patches found"
if


注 –

以前,chroot(1M) 命令与结束脚本环境中的 pkgaddpatchadd 命令一起使用。在极少数情况下,一些软件包或修补程序无法与 -R 选项一起工作。在使用 chroot 命令前,必须在 /a 根路径中创建一个伪 /etc/mnttab 文件。

要创建伪 /etc/mnttab 文件,请将以下行添加到您的结束脚本中:

cp /etc/mnttab /a/etc/mnttab

使用结束脚本自定义根环境

您还可以使用结束脚本来自定义已经安装在系统上的文件。例如,示例 4–5 中的结束脚本通过将信息附加到根 (/) 目录中的 .cshrc 文件来自定义根环境。


示例 4–5 使用结束脚本自定义根环境

#!/bin/sh
#
# Customize root's environment
#
echo "***adding customizations in /.cshrc"
test -f a/.cshrc || {
cat >> a/.cshrc <<EOF
set history=100 savehist=200 filec ignoreeof prompt="\$user@`uname -n`> "
alias cp cp -i
alias mv mv -i
alias rm rm -i
alias ls ls -FC
alias h history
alias c clear
unset autologout
EOF
}

使用结束脚本设置系统的超级用户口令

Solaris 软件安装到系统上之后,系统会重新引导。在引导过程完成前,系统提示输入超级用户口令。除非有人键入口令,否则系统无法完成引导。

名为 set_root_pw 的结束脚本保存在 auto_install_sample 目录中。结束脚本显示如何自动设置超级用户口令,而无需提示。set_root_pw 显示在示例 4–6 中。


注 –

如果使用结束脚本设置系统的超级用户口令,则用户可以尝试从结束脚本的加密口令中搜索超级用户口令。确保有相应的措施防止用户试图确定超级用户口令。



示例 4–6 使用结束脚本设置系统的超级用户口令

	 #!/bin/sh
	 #
	 #       @(#)set_root_pw 1.4 93/12/23 SMI
	 #
	 # This is an example Bourne shell script to be run after installation.
	 # It sets the system's root password to the entry defined in PASSWD.
	 # The encrypted password is obtained from an existing root password entry
	 # in /etc/shadow from an installed machine.
 
	 echo "setting password for root"
 
	 # set the root password
 PASSWD=dKO5IBkSF42lw
	 #create a temporary input file
 cp /a/etc/shadow /a/etc/shadow.orig
 
	 mv /a/etc/shadow /a/etc/shadow.orig
 	nawk -F: '{
         if ( $1 == "root" )
           printf"%s:%s:%s:%s:%s:%s:%s:%s:%s\n",$1,passwd,$3,$4,$5,$6,$7,$8,$9
      else
		        printf"%s:%s:%s:%s:%s:%s:%s:%s:%s\n",$1,$2,$3,$4,$5,$6,$7,$8,$9
      }' passwd="$PASSWD" /a/etc/shadow.orig > /a/etc/shadow
 #remove the temporary file
 rm -f /a/etc/shadow.orig
 # set the flag so sysidroot won't prompt for the root password
 sed -e 's/0 # root/1 # root/' ${SI_SYS_STATE} > /tmp/state.$$
  mv /tmp/state.$$ ${SI_SYS_STATE}

以下说明此例中的一些命令。


使用结束脚本的非交互安装

安装了 Solaris OS 后,可使用结束脚本来安装附加软件。Solaris 安装程序在安装过程中提示您输入信息。要使安装不受干扰,可以使用 -nodisplay-noconsole 选项来运行 Solaris 安装程序。

表 4–1 Solaris 安装选项

选项 

描述 

-nodisplay

运行安装程序,但没有图形用户界面。使用缺省产品安装,除非安装已被 -locales 选项修改。

-noconsole

运行安装,但没有任何交互式文本控制台设备。当与 -nodisplay 一起用于 UNIX 脚本时很有用。

有关更多信息,请参见手册页 installer(1M)

创建压缩的配置文件

可以在引导系统时指定自定义 JumpStart 配置文件的位置,而不是使用 add_install_client 命令来指定其位置。但是,只能指定一个文件的名称。因此,必须将所有的自定义 JumpStart 配置文件压缩为一个文件。

压缩的配置文件可以是以下类型之一:

Procedure创建压缩的配置文件

  1. 将目录更改到配置文件服务器上的 JumpStart 目录。


    # cd jumpstart_dir_path
    
  2. 使用压缩工具将自定义 JumpStart 配置文件压缩为一个文件。


    注 –

    压缩的配置文件不能包含相对路径。自定义 JumpStart 配置文件必须与压缩文件位于同一目录中。


    压缩的配置文件必须包含以下文件:

    • 配置文件

    • rules

    • rules.ok

    也可以将 sysidcfg 文件包含在压缩的配置文件中。

  3. 将压缩的配置文件保存在 NFS 服务器、HTTP 服务器或本地硬盘中。

压缩的配置文件示例

下面的示例说明如何使用 tar 命令创建一个名为 config.tar 的压缩配置文件。自定义 JumpStart 配置文件位于 /jumpstart 目录中。


示例 4–7 创建压缩的配置文件


# cd /jumpstart
# tar -cvf config.tar *
a profile 1K
a rules 1K
a rules.ok 1K
a sysidcfg 1K

创建磁盘配置文件

本节介绍如何创建单磁盘和多磁盘配置文件。利用磁盘配置文件,您可以在单个系统中使用 pfinstall(1M) 针对不同磁盘配置测试配置文件。

ProcedureSPARC: 创建磁盘配置文件

  1. 找到包含要测试的磁盘的基于 SPARC 的系统。

  2. 成为超级用户或承担等效角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

  3. 通过将 prtvtoc(1M) 命令的输出重定向到文件,创建单磁盘配置文件。


    # prtvtoc /dev/rdsk/device_name >disk_config_file
    
    /dev/rdsk/device_name

    系统磁盘的设备名称。device_name 的格式必须是 cwt xdys2 cxdy s2

    disk_config_file

    磁盘配置文件的名称。

  4. 确定是否在多个磁盘上测试 Solaris 软件的安装。

    • 如果否,则停止。操作完成。

    • 如果是,串联单磁盘配置文件并将输出保存到一个新文件中。


      # cat disk_file1 disk_file2 >multi_disk_config
      

      此新文件即成为多磁盘配置文件,如下例所示:


      # cat 104_disk2 104_disk3 104_disk5 >multi_disk_test
      
  5. 确定磁盘设备名称中的目标号码在前一个步骤中创建的多磁盘配置文件中是否唯一。

    • 如果是,则停止。操作完成。

    • 如果否,使用文本编辑器打开此文件并使目标号码在磁盘设备名称中是唯一的。

      例如,假设对于不同的磁盘设备名称,此文件包含同一目标号码 t0,如下所示:

      * /dev/rdsk/c0t0d0s2 partition map
      ...
      * /dev/rdsk/c0t0d0s2 partition map

      将第二个目标号码更改为 t2,如下所示:

      * /dev/rdsk/c0t0d0s2 partition map
      ...
      * /dev/rdsk/c0t2d0s2 partition map

SPARC: 磁盘配置文件示例

下面的示例显示如何在具有 104 MB 磁盘的基于 SPARC 的系统中创建单磁盘配置文件 104_test


示例 4–8 SPARC: 创建磁盘配置文件

prtvtoc 命令的输出重定向到名为 104_test 的单磁盘配置文件:


# prtvtoc /dev/rdsk/c0t3d0s2 >104_test

104_test 文件的内容与下面的内容相似:

* /dev/rdsk/c0t3d0s2 partition map
*
* Dimensions:
*     512 bytes/sector
*      72 sectors/track
*      14 tracks/cylinder
*    1008 sectors/cylinder
*    2038 cylinders*    2036 accessible cylinders
* Flags:
*   1: unmountable
*  10: read-only
*
*                          First     Sector    Last
* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
       1      2    00          0     164304   164303   /
       2      5    00          0    2052288  2052287  
       3      0    00     164304     823536   987839   /disk2/b298
       5      0    00     987840     614880  1602719   /install/298/sparc/work
       7      0    00    1602720     449568  2052287   /space

您已为基于 SPARC 的系统创建了磁盘配置文件。测试配置文件包含有关使用磁盘配置文件测试配置文件的信息。


Procedurex86: 创建磁盘配置文件

  1. 找到包含要测试的磁盘的基于 x86 的系统。

  2. 成为超级用户或承担等效角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

  3. 通过将 fdisk(1M) 命令的输出保存在文件中,创建单磁盘配置文件的一部分。


    # fdisk -R -W disk_config_file -h /dev/rdsk/device_name
    
    disk_config_file

    磁盘配置文件的名称。

    /dev/rdsk/device_name

    整个磁盘的 fdisk 布局的设备名称。device_name 的格式必须是 cwtx dys0c xdys0

  4. prtvtoc(1M) 命令的输出附加到磁盘配置文件:


    # prtvtoc /dev/rdsk/device_name >>disk_config
    
    /dev/rdsk/device_name

    系统磁盘的设备名称。device_name 的格式必须是 cwt xdys2 cxdy s2

    disk_config

    磁盘配置文件的名称。

  5. 确定是否在多个磁盘上测试 Solaris 软件的安装。

    • 如果否,则停止。操作完成。

    • 如果是,串联单磁盘配置文件并将输出保存到一个新文件中。


      # cat disk_file1 disk_file2 >multi_disk_config
      

      此新文件即成为多磁盘配置文件,如下例所示:


      # cat 104_disk2 104_disk3 104_disk5 >multi_disk_test
      
  6. 确定磁盘设备名称中的目标号码在前一个步骤中创建的多磁盘配置文件中是否唯一。

    • 如果是,则停止。操作完成。

    • 如果否,用文本编辑器打开该文件并使目标号码唯一。

      例如,对于不同的磁盘设备名称,此文件可能包含同一目标号码 t0,如下所示:

      * /dev/rdsk/c0t0d0s2 partition map
      ...
      * /dev/rdsk/c0t0d0s2 partition map

      将第二个目标号码更改为 t2,如下所示:

      * /dev/rdsk/c0t0d0s2 partition map
      ...
      * /dev/rdsk/c0t2d0s2 partition map

x86: 磁盘配置文件示例

下面的示例说明如何在具有 500 MB 磁盘的基于 x86 的系统中创建单磁盘配置文件 500_test


示例 4–9 x86: 创建磁盘配置文件

首先,将 fdisk 命令的输出保存到名为 500_test 的文件中:


# fdisk -R -W 500_test -h /dev/rdsk/c0t0d0p0

500_test 文件如下所示:

 * /dev/rdsk/c0t0d0p0 default fdisk table
* Dimensions:
*     512 bytes/sector
*      94 sectors/track
*      15 tracks/cylinder
*    1455 cylinders
*
*  HBA Dimensions:
*     512 bytes/sector
*      94 sectors/track
*      15 tracks/cylinder
*    1455 cylinders
*
* systid:
*  1:    DOSOS12
*  2:    PCIXOS
*  4:    DOSOS16
*  5:    EXTDOS
*  6:    DOSBIG
*  86:   DOSDATA
*  98:   OTHEROS
*  99:   UNIXOS
* 130:   SUNIXOS
*
* Id  Act Bhead Bsect   Bcyl  Ehead  Esect  Ecyl Rsect  Numsect
 130  128 44    3       0     46    30     1001 1410   2050140

第二步,将 prtvtoc 命令的输出附加到 500_test 文件:


# prtvtoc /dev/rdsk/c0t0d0s2 >>500_test

现在,500_test 文件是一个完整的磁盘配置文件:

* /dev/rdsk/c0t0d0p0 default fdisk table	
* Dimensions:
*     512 bytes/sector
*      94 sectors/track
*      15 tracks/cylinder
*    1455 cylinders
*
*  HBA Dimensions:
*     512 bytes/sector
*      94 sectors/track
*      15 tracks/cylinder
*    1455 cylinders
*
* systid:
*  1:    DOSOS12
*  2:    PCIXOS
*  4:    DOSOS16
*  5:    EXTDOS
*  6:    DOSBIG
*  86:   DOSDATA
*  98:   OTHEROS
*  99:   UNIXOS
*  130:  SUNIXOS
*
* Id  Act Bhead Bsect Bcyl  Ehead  Esec  Ecyl Rsect  Numsect
 130  128 44    3     0     46    30    1001 1410   2050140
* /dev/rdsk/c0t0d0s2 partition map
*
* Dimensions:
*      512 bytes/sector
*       94 sectors/track
*       15 tracks/cylinder
*     1110 sectors/cylinder
*     1454 cylinders
*     1452 accessible cylinders
*
* Flags:
*   1: unmountable
*  10: read-only
*                          First    Sector    Last
* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
       2      5    01       1410   2045910   2047319
       7      6    00       4230   2043090   2047319  /space
       8      1    01          0      1410     1409
       9      9    01       1410      2820     422987

您已为基于 x86 的系统创建了磁盘配置文件。测试配置文件包含有关使用磁盘配置文件测试配置文件的信息。


使用站点特定的安装程序

您也可以使用开始脚本和结束脚本创建自己的安装程序来安装 Solaris 软件。

在 profile 字段中指定减号 (-) 时,由开始脚本和结束脚本控制如何在系统上安装 Solaris 软件,而不是由配置文件和 Solaris 安装程序控制。

例如,如果下面的规则匹配系统,则 x_install.beg 开始脚本和 x_install.fin 结束脚本将 Solaris 软件安装在名为 clover 的系统上:

hostname clover x_install.beg - x_install.fin 

第 5 章 创建自定义规则和探测关键字(任务)

本章提供创建自定义规则和探测关键字的信息和步骤。

探测关键字

要理解什么是探测关键字,首先需要回顾一下什么是规则关键字。规则关键字是一个预定义的词法单元或单词,它说明一般的系统属性,如主机名 hostname 或内存大小 memsize。规则关键字及其关联值使您能够将一个具有相同属性的系统与一个配置文件匹配。这种系统属性的匹配定义了如何在组中的每个系统上安装 Solaris 软件。

自定义 JumpStart 环境变量用在开始脚本和结束脚本中,它们是根据需要进行设置的。例如,只有在使用了 installed 规则关键字之后,有关系统上安装了哪个操作系统的信息才会在 SI_INSTALLED 中提供。

在某些情况下,出于匹配系统和运行配置文件以外的其他目的,也可能需要在开始脚本或结束脚本中提取相同的信息。探测关键字提供了解决方法。探测关键字提取属性信息并消除了设置匹配条件和运行配置文件的需要。

有关探测关键字和值的列表,请参见探测关键字和值

创建 custom_probes 文件

规则关键字和值探测关键字和值描述的规则关键字和探测关键字可能无法完全满足您的需求。可以通过创建 custom_probes 文件,自定义规则关键字或探测关键字。

custom_probes 文件是一个 Bourne shell 脚本,它包含两种函数。您必须将 custom_probes 文件保存在保存了 rules 文件的同一 JumpStart 目录中。您可以在 custom_probes 文件中定义的两种函数如下:

custom_probes 文件的语法

custom_probes 文件可以包含任何有效的 Bourne shell 命令、变量或算法。


注 –

您可以在 custom_probes 文件中定义需要单个变量的探测函数和比较函数。当您在 rules 文件中使用相应的自定义探测关键字时,关键字后面的变量将被解释(为 $1)。

rules 文件中使用相应的自定义规则关键字时,将依次解释这些变量。该序列在关键字之后开始,并在下一个 && 或开始脚本(先出现的项)之前结束。


custom_probes 文件必须满足以下要求:

为提高明确性和改善结构,请首先在文件的顶部定义所有的探测函数,后跟所有的比较函数。

custom_probes 中的函数名称的语法

探测函数的名称必须以 probe_ 开头。比较函数的名称必须以 cmp_ 开头。

probe_ 开头的函数定义新的探测关键字。例如,函数 probe_tcx 定义新的探测关键字 tcx。以 cmp_ 开头的函数定义新的规则关键字。例如,cmp_tcx 定义新的规则关键字 tcx

Procedure创建 custom_probes 文件

  1. 使用文本编辑器创建 Bourne shell 脚本文本文件。将该文件命名为 custom_probes

  2. custom_probes 文本文件中,定义您的探测函数和比较函数。


    注 –

    您可以在 custom_probes 文件中定义需要变量的探测函数和比较函数。当您在 rules 文件中使用相应的自定义探测关键字时,关键字后面的变量将依次被解释(为 $1、$2,依此类推)。

    rules 文件中使用相应的自定义规则关键字时,将依次解释这些变量。该序列在关键字之后开始,并在下一个 && 或开始脚本(先出现的项)之前结束。


  3. custom_probes 文件保存在 JumpStart 目录中的 rules 文件旁边。

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

custom_probes 文件和关键字的示例

在以下目录中可以找到探测函数和比较函数的其他示例:

下面的 custom_probes 文件包含测试 TCX 图形卡是否存在的探测函数和比较函数。


示例 5–1 custom_probes 文件

#!/bin/sh
# 
# custom_probe script to test for the presence of a TCX graphics card.
# 

# 
# PROBE FUNCTIONS
# 
probe_tcx() {
  SI_TCX=`modinfo | grep tcx | nawk '{print $6}'`
  export SI_TCX
}

# 
# COMPARISON FUNCTIONS
# 
cmp_tcx() {
  probe_tcx

  if [ "X${SI_TCX}" = "X${1}" ]; then
     return 0
  else
     return 1
  if
}

下面的示例 rules 文件显示如何使用前面示例中定义的探测关键字 tcx。如果 TCX 图形卡已安装并在系统中被找到,则运行 profile_tcx。否则,运行 profile


注 –

总是将探测关键字放置在 rules 文件的开头或开头附近。这样,可确保在其他可能依赖于这些探测关键字的规则关键字之前读取和运行这些关键字。



示例 5–2 自定义在 rules 文件中使用的探测关键字

probe tcx
tcx     tcx     -     profile_tcx     -
any     any     -     profile         -

验证 custom_probes 文件

在使用配置文件、rulescustom_probes 文件之前,必须运行 check 脚本验证是否已正确设置这些文件。如果所有的配置文件、规则以及探测函数和比较函数均已正确设置,则创建 rules.okcustom_probes.ok 文件。表 5–1 介绍了 check 脚本的作用。

表 5–1 使用 check 脚本时发生的情况

阶段 

描述 

check 搜索 custom_probes 文件。

如果文件存在,check 将基于 custom_probes 文件创建 custom_probes.ok 文件,删除所有注释和空白行,并保留所有 Bourne shell 命令、变量和算法。然后,check 在结尾添加以下注释行:

# version=2 checksum=num

Procedure验证 custom_probes 文件

  1. 验证 check 脚本是否位于 JumpStart 目录中。


    注 –

    check 脚本位于 Solaris Operating System DVD 或 Solaris Software - 1 CD 中的 Solaris_10/Misc/jumpstart_sample 目录下。


  2. 转到 JumpStart 目录。

  3. 运行 check 脚本以验证 rules 文件和 custom_probes 文件。


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

    使用来自平台的 Solaris 软件映像的 check 脚本代替您正在使用的系统中的 check 脚本来验证 custom_probes 文件。path 是本地磁盘或已挂载的 Solaris Operating System DVD 或 Solaris Software - 1 CD 上的映像。

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

    -r file_name

    指定一个文件名(名称 custom_probes 除外)。通过使用 -r 选项,可以在将一组函数集成到 custom_probes 文件中之前验证这些函数的有效性。

    check 脚本运行时,它会报告 rules 文件和 custom_probes 文件以及每个配置文件的有效性。如果没有遇到任何错误,该脚本将报告:“自定义 JumpStart 配置正常”并在 JumpStart 目录中创建 rules.okcustom_probes.ok 文件。

  4. 确定 custom_probes.ok 文件是否为可执行文件。

    • 如果是,请转至步骤 5

    • 如果不是,请键入以下命令:


      # chmod +x custom_probes
      
  5. 确保 root 拥有 custom_probes.ok 文件,并且权限设置为 755。

第 6 章 执行自定义 JumpStart 安装(任务)

本章介绍如何在基于 SPARC 或基于 x86 的系统中执行自定义 JumpStart 安装。在要安装 Solaris 软件的系统中您需要遵循这些过程。

JumpStart 安装的限制

许多问题可能会导致 JumpStart 安装期间出错。有关特定信息,请查看下表。

表 6–1 JumpStart 安装限制

问题 

描述 

更多信息 

已不再需要使用 JumpStart 样例脚本来抑制 NFSv4 提示 

对于 Solaris 10 发行版,在介质上提供了 JumpStart 样例脚本 set_nfs4_domain,以防止在 JumpStart 安装期间出现提示。此脚本可在安装期间抑制 NFSv4 提示。已不再需要此脚本。从 Solaris 10 8/07 发行版开始,使用 sysidcfg 关键字 nfs4_domain 来抑制提示。set_nfs4_domain 脚本不再用于抑制提示。

如果安装了非全局区域,而且 sysidcfg 文件中存在新的 nfs4_domain 关键字,则首次引导非全局区域时会设置域。否则,在引导过程完成之前,将显示 Solaris 交互式安装程序,并提示您提供域名。

《Solaris 10 5/08 安装指南:基于网络的安装》中的“nfs4_domain 关键字”

sysidcfg 文件中选择键盘语言可防止提示

如果您的键盘不是自识别键盘,而且您希望防止在 JumpStart 安装期间出现提示,请在 sysidcfg 文件中选择键盘语言。对于 JumpStart 安装,缺省语言为美国英语。要选择其他语言及其对应的键盘布局,请在 sysidcfg 文件中设置 keyboard 关键字。

如果具有非全局区域,请使用 Solaris Live Upgrade 进行升级 

可以使用 JumpStart 升级安装有非全局区域的系统,但是建议使用 Solaris Live Upgrade 程序进行升级。JumpStart 可能需要很长的升级时间,因为完成升级所需的时间会随安装的非全局区域数线性增长。 

《Solaris 10 5/08 安装指南:Solaris Live Upgrade 和升级规划》

归档文件不能包含非全局区域 

如果使用 Solaris Flash 归档文件进行安装,则不会在系统上正确安装包含非全局区域的归档文件。 

有关创建非全局区域的常规信息,请参见《系统管理指南:Solaris Containers-资源管理和 Solaris Zones》

SPARC:其他硬件要求 

有关在平台上完成 JumpStart 安装可能需要的任何其他要求,请参阅硬件文档。 

 

SPARC: 任务图:针对自定义 JumpStart 安装设置系统

表 6–2 任务图:针对自定义 JumpStart 安装设置系统

任务 

描述 

参考 

检查系统是否受支持。 

检查在 Solaris 环境中系统支持的硬件文档。 

http://docs.sun.com 上的 Solaris Sun 硬件平台指南

检查系统是否有足够的磁盘空间用于 Solaris 软件。 

验证是否已规划了足够的空间在系统上安装 Solaris 软件。 

《Solaris 10 5/08 安装指南:规划安装和升级》中的第 4  章 “系统要求、原则和升级(规划)”

(可选)设置系统参数。 

您可以预配置系统信息,以避免在安装或升级时被提示输入该信息。 

《Solaris 10 5/08 安装指南:基于网络的安装》中的第 2  章 “预配置系统配置信息(任务)”

针对自定义 JumpStart 安装准备系统。 

创建并验证 rules 文件和配置文件。

第 3 章,准备自定义 JumpStart 安装(任务)

(可选)准备可选的自定义 JumpStart 功能。 

如果使用了开始脚本、结束脚本或其他可选功能,请准备这些脚本或文件。 

第 4 章,使用可选的自定义 JumpStart 功能(任务)第 5 章,创建自定义规则和探测关键字(任务)

(可选)准备从网络安装 Solaris 软件。 

要从远程 Solaris Operating System DVD 或 Solaris Software for SPARC Platforms CD 映像安装系统,您需要对系统进行设置,以从安装服务器或引导服务器引导和安装。 

《Solaris 10 5/08 安装指南:基于网络的安装》中的第 5  章 “使用 DVD 介质从网络进行安装(任务)”

《Solaris 10 5/08 安装指南:基于网络的安装》中的第 6  章 “使用 CD 介质从网络进行安装(任务)”

(可选)准备 Solaris Flash 归档文件安装。 

设置 Solaris Flash 归档文件安装的具体信息。 

准备使用自定义 JumpStart 安装来安装 Solaris Flash 归档文件

执行安装或升级。 

引导系统以便初始化安装或升级。 

SPARC: 使用自定义 JumpStart 程序执行安装或升级

SPARC: 执行自定义 JumpStart 安装

在自定义 JumpStart 安装过程中,JumpStart 程序尝试将要安装的系统与 rules.ok 文件中的规则进行匹配。JumpStart 程序从第一条规则到最后一条规则通读这些规则。当安装的系统与规则中定义的所有系统属性一致时发生匹配。如果系统与规则匹配,JumpStart 程序即停止读取 rules.ok 文件,然后根据该匹配规则的配置文件开始安装系统。

Procedure准备使用自定义 JumpStart 安装来安装 Solaris Flash 归档文件

对于初始安装,可安装完全归档文件;如果您已安装了归档文件,则可安装差别归档文件以进行更新。使用自定义 JumpStart 安装方法或使用 Solaris Live Upgrade,可以在不活动的引导环境中安装归档文件。本步骤提供使用自定义 JumpStart 来安装归档文件的说明。

  1. 检查以下限制。

    描述 

    示例 

    注意:使用 archive_location 关键字安装 Solaris Flash 归档文件时,归档文件和安装介质必须包含相同的操作系统版本。

    例如,如果归档文件是 Solaris 10 5/08 操作系统且您使用的是 DVD 介质,则必须使用 Solaris 10 5/08 DVD 介质来安装归档文件。如果操作系统的版本不匹配,将无法在克隆系统中安装归档文件。 


    注意 – 注意 –

    当安装了非全局区域,将无法正确创建 Solaris Flash 归档文件。Solaris Flash 功能与 Solaris Zones 分区技术不兼容。如果创建了 Solaris Flash 归档文件,当在下列条件下部署归档文件时,所生成的归档文件无法正确安装:

    • 归档文件是在非全局区域中创建的

    • 归档文件是在安装了非全局区域的全局区域中创建的


     

  2. 在安装服务器上,创建自定义 JumpStart rules 文件。

    有关创建自定义 JumpStart 文件的详细说明,请参阅第 3 章,准备自定义 JumpStart 安装(任务)

  3. 在安装服务器上,创建自定义 JumpStart 配置文件。

    有关 Solaris Flash 归档文件配置文件的示例,请参见配置文件示例

    基于在表 8–2 中自定义 JumpStart 关键字的现有列表,只有以下关键字在安装 Solaris Flash 归档文件时有效:

    关键字 

    初始安装 

    差别归档文件 

    (必需)archive_location

    fdisk(仅适用于 x86)

    filesys


    注 –

    不能将关键字 filesys 的值设置为 auto


     

    forced_deployment

     

    (必需)install_type

    local_customization

    no_content_check

     

    no_master_check

     

    package

     

    root_device

    1. install_type 关键字的值设置为下列类型之一。

      • 对于完全归档文件安装,将该值设置为 flash_install

      • 对于差别归档文件安装,将该值设置为 flash_update

    2. 使用 archive_location 关键字来添加 Solaris Flash 归档文件的路径。

      有关 archive_location 关键字的详细信息,请参阅archive_location 关键字

    3. 指定文件系统配置。

      Solaris Flash 归档文件提取过程不支持分区的自动布局。

    4. (可选)如果希望在安装归档文件的同时安装附加软件包,请使用 package 关键字。有关更多信息,请参见package 配置文件关键字

    5. (可选)如果要在克隆系统上安装一个附加的 Solaris Flash 归档文件,请为要安装的每个归档文件添加一个 archive_location 行。

  4. 在安装服务器上,添加要与 Solaris Flash 归档文件一起安装的客户程序。

    有关详细说明,请参阅以下章节:

  5. 在克隆系统上执行自定义 JumpStart 安装。

    有关详细说明,请参阅SPARC: 使用自定义 JumpStart 程序执行安装或升级

ProcedureSPARC: 使用自定义 JumpStart 程序执行安装或升级

  1. 如果系统是网络的一部分,请确保已将以太网连接器或类似的网络适配器连接到了系统上。

  2. 如果要安装通过 tip(1) 行连接的系统,请确保所显示的窗口宽度和长度至少分别为 80 列和 24 行。

    要确定 tip 窗口的当前尺寸,请使用 stty(1) 命令。

  3. 如果使用系统的 DVD-ROM 或 CD-ROM 驱动器安装 Solaris 软件,请将 Solaris Operating System for SPARC Platforms DVD 或 Solaris Software for SPARC Platforms - 1 CD 插入驱动器。

  4. 如果使用了配置文件软盘,请将此配置文件软盘放入系统的软盘驱动器。

  5. 引导系统。

    • 如果系统是新的,刚从包装箱中拿出来,请打开系统。

    • 如果要安装或升级现有系统,则关闭该系统。在 ok 提示符下,键入 boot 命令的适当选项。boot 命令的语法如下。


      ok boot [cd–dvd|net] - install [url|ask] options
      

      例如,如果键入以下命令,将使用 JumpStart 配置文件通过网络安装 OS。


      ok boot net - install http://131.141.2.32/jumpstart/config.tar
      

      有关 boot 命令选项的描述,请参见下表。


    仅适用于 SPARC –

    系统将检查硬件、系统组件以及基于 SPARC 的系统引导。引导过程将持续几分钟。


  6. 如果没有预配置 sysidcfg 文件中的系统信息,则在收到系统提示时,请回答有关系统配置的问题。

  7. 按照屏幕上的说明来安装软件。

    当 JumpStart 程序完成 Solaris 软件的安装后,系统将自动重新引导。

    完成安装后,安装日志将保存在文件中。您可以在以下目录中找到安装日志:

    • /var/sadm/system/logs

    • /var/sadm/install/logs

SPARC: boot 命令的命令参考

boot 命令的语法如下。


ok boot [cd–dvd|net] - install [url|ask] options

下表描述了适用于 JumpStart 安装的 boot 命令的命令行选项。

选项 

描述 

[cd–dvd|net]

指定从 CD 或 DVD 引导,或者从网络上的安装服务器引导。 

  • cd-dvd-使用 cdrom 从 CD 或 DVD 引导。

  • net-指定从网络上的安装服务器引导。

[url| ask]

指定自定义 JumpStart 文件的位置或提示您指定位置。 

  • url-指定文件的路径。可以为位于 HTTP 或 HTTPS 服务器中的文件指定 URL。

    HTTP 服务器


    http://server_name:IP_address/jumpstart_dir_path/
    compressed_config_file&proxy_info
    
    • 如果将一个 sysidcfg 文件放置在压缩配置文件中,必须指定包含该文件的服务器的 IP 地址,如下例所示:


      http://131.141.2.32/jumpstart/config.tar
    • 如果将压缩配置文件保存在位于防火墙后面的 HTTP 服务器上,则在引导过程中必须使用代理说明符。不需要为包含该文件的服务器指定 IP 地址。必须指定代理服务器的 IP 地址,如下例所示:


      http://www.shadow.com/jumpstart/config.tar&proxy=131.141.6.151
  • ask-指定在系统引导并连接到网络后,安装程序提示您键入压缩的配置文件的位置。如果使用该选项,您将无法执行完全无人参与的 JumpStart 安装。

    如果通过按 Return 来跳过提示,Solaris 安装程序将交互式地配置网络参数。然后,安装程序提示您键入压缩配置文件的位置。

options

  • dhcp-指定使用 DHCP 服务器获取引导系统所需的网络安装信息。该选项对于 JumpStart 安装不是必需的。如果不通过键入 dhcp 来指定要使用 DHCP 服务器,则系统将使用 /etc/bootparams 文件或命名服务 bootparams 数据库。例如,如果您希望保留静态 IP 地址,您将不会指定 dhcp

  • 选项 nowintext 不适用于 JumpStart 安装。这些选项对于交互式安装很有帮助。有关更多信息,请参见《Solaris 10 5/08 安装指南:基本安装》中的“使用 Solaris 安装程序执行安装或升级”

x86: 任务图:针对自定义 JumpStart 安装设置系统

表 6–3 x86: 任务图:针对自定义 JumpStart 安装设置系统

任务 

描述 

参考 

确定是否需要保留现有的操作系统和用户数据。 

如果系统中的现有操作系统使用整个磁盘,则您必须保留现有操作系统以使其可以与 Solaris 10 5/08 软件共存。这一决定确定了如何指定系统配置文件中的 fdisk(1M) 关键字。

x86: fdisk 配置文件关键字

检查系统是否受支持。 

检查在 Solaris 环境中系统支持的硬件文档。 

硬件生产商文档 

检查系统是否有足够的磁盘空间用于 Solaris 软件。 

验证是否已规划了足够的空间在系统上安装 Solaris 软件。 

《Solaris 10 5/08 安装指南:规划安装和升级》中的第 4  章 “系统要求、原则和升级(规划)”

(可选)设置系统参数。 

您可以预配置系统信息,以避免在安装或升级时被提示输入该信息。 

《Solaris 10 5/08 安装指南:基于网络的安装》中的第 2  章 “预配置系统配置信息(任务)”

针对自定义 JumpStart 安装准备系统。 

创建并验证 rules 文件和配置文件。

第 3 章,准备自定义 JumpStart 安装(任务)

(可选)准备可选的自定义 JumpStart 功能。 

如果使用了开始脚本、结束脚本或其他可选功能,请准备这些脚本或文件。 

第 4 章,使用可选的自定义 JumpStart 功能(任务)第 5 章,创建自定义规则和探测关键字(任务)

(可选)准备从网络安装 Solaris 软件。 

要从远程 Solaris Operating System for x86 Platforms DVD 或 Solaris Software For x86 Platforms CD 映像安装系统,您需要设置系统以从安装服务器或引导服务器引导和安装。 

《Solaris 10 5/08 安装指南:基于网络的安装》中的第 6  章 “使用 CD 介质从网络进行安装(任务)”

(可选)准备 Solaris Flash 归档文件安装。 

设置 Solaris Flash 归档文件安装的具体信息。 

准备使用自定义 JumpStart 安装来安装 Solaris Flash 归档文件

执行安装或升级。 

引导系统以便初始化安装或升级。 

x86: 使用自定义 JumpStart 程序和 GRUB 执行安装或升级

x86: 执行自定义 JumpStart 安装

在自定义 JumpStart 安装过程中,JumpStart 程序尝试将要安装的系统与 rules.ok 文件中的规则进行匹配。JumpStart 程序从第一条规则到最后一条规则通读这些规则。当安装的系统与规则中定义的所有系统属性一致时发生匹配。一旦系统与规则匹配,JumpStart 程序即停止读取 rules.ok 文件,然后根据匹配规则的配置文件开始安装系统。

可以使用自定义 JumpStart 安装 Solaris Flash 归档文件。有关说明,请参见准备使用自定义 JumpStart 安装来安装 Solaris Flash 归档文件

请选择以下过程之一:

Procedurex86: 使用自定义 JumpStart 程序和 GRUB 执行安装或升级

通过本过程可以使用 GRUB 菜单为基于 x86 的系统安装 Solaris OS。

  1. 如果系统是网络的一部分,请确保已将以太网连接器或类似的网络适配器连接到了系统上。

  2. 如果要安装通过 tip(1) 行连接的系统,请确保所显示的窗口宽度和长度至少分别为 80 列和 24 行。

    要确定 tip 窗口的当前尺寸,请使用 stty(1) 命令。

  3. 确定是否要使用配置文件软盘。

    配置文件软盘不再用于引导系统,但可以准备一张只包含 JumpStart 目录的软盘。 以后在执行 JumpStart 安装并从 CD-ROM 引导时可以使用该软盘。

    • 如果使用配置文件软盘,请将此配置文件软盘插入系统的软盘驱动器。

    • 如果不使用配置文件软盘,则继续执行步骤 4

  4. 确定如何引导系统。

    • 如果使用 Solaris Operating System DVD 或 Solaris Software - 1 CD 引导,请插入光盘。系统的 BIOS 必须支持从 DVD 或 CD 引导。

    • 如果从网络引导,请使用引导前执行环境 (PXE) 网络引导。系统必须支持 PXE。通过使用系统 BIOS 设置工具或网络适配器的配置设置工具,使系统能够使用 PXE。

  5. (可选)如果希望从 DVD 或 CD 引导,请在系统的 BIOS 中更改引导设置,将其设置为从 DVD 或 CD 介质引导。请参见硬件文档获取相关说明。

  6. 如果系统关闭,请打开系统。如果系统已打开,请重新引导系统。

    此时将显示 GRUB 菜单。此菜单提供了引导项的列表。


    GNU GRUB version 0.95 (631K lower / 2095488K upper memory)
    +-------------------------------------------------------------------+
    |Solaris 10 5/08 image_directory                                      |
    |Solaris Serial Console ttya                                           |
    |Solaris Serial Console ttyb (for lx50, v60x and v65x               |
    +-------------------------------------------------------------------+
    Use the ^ and v keys to select which entry is highlighted. Press
    enter to boot the selected OS, 'e' to edit the commands before
    booting, or 'c' for a command-line.

    image_directory 是安装映像所在目录的名称。JumpStart 文件的路径是使用 add_install_client 命令和 -c 选项进行定义的。


    注 –

    现在无需从 GRUB 项引导,即可编辑引导项。编辑 GRUB 项后,再执行 JumpStart 安装。有关如何编辑 GRUB 项和安装选项列表的说明,请参见x86: 通过编辑 GRUB boot 命令执行自定义 JumpStart 安装


  7. 出现提示时,执行以下指令之一:


    Select the type of installation you want to perform:
     
             1 Solaris Interactive
             2 Custom JumpStart
             3 Solaris Interactive Text (Desktop session)
             4 Solaris Interactive Text (Console session)
             5. Apply driver updates
             6. Single User Shell
    Enter the number of your choice.
    Please make a selection (1-6).

    要选择自定义 JumpStart 方法,则键入 2 并按 Enter 键。

    JumpStart 安装随即开始。


    注 –
    • 如果 30 秒内未进行选择,则 Solaris 交互式安装程序将启动。可以在命令行中键入任何键来停止计时器。

    • 如果选择 1、3 或 4 项,将使用交互式安装进行安装。有关交互式安装的信息,请参见《Solaris 10 5/08 安装指南:基本安装》

    • 如果选择第 5 项,则将安装驱动程序更新。

    • 如果选择第 6 项,则可以执行维护任务。


  8. 如果没有预配置 sysidcfg 文件中的系统信息,则在收到系统提示时,请回答有关系统配置的问题。

  9. 按照屏幕上的说明来安装软件。

    当 JumpStart 程序完成 Solaris 软件的安装后,系统将自动重新引导。同时,GRUB menu.lst 文件将自动更新。然后,下一次使用 GRUB 菜单时,将显示所安装的 Solaris 实例。

    完成安装后,安装日志将保存在文件中。您可以在以下目录中找到安装日志:

    • /var/sadm/system/logs

    • /var/sadm/install/logs

x86: 通过编辑 GRUB boot 命令执行自定义 JumpStart 安装

在某些情况下(如为了进行调试),可能需要修改 GRUB boot 命令。以下过程描述了执行自定义 JumpStart 安装之前编辑 GRUB boot 命令的步骤。

Procedurex86: 修改 GRUB boot 命令

  1. 要开始安装,请执行在前面x86: 使用自定义 JumpStart 程序和 GRUB 执行安装或升级部分描述的步骤 1步骤 5

  2. 如果系统关闭,请打开系统。如果系统已打开,请重新引导系统。

    此时将显示 GRUB 菜单。此菜单提供了引导项的列表。所提供的项是要安装的 Solaris 实例。


    GNU GRUB version 0.95 (631K lower / 2095488K upper memory)
    +-------------------------------------------------------------------+
    |Solaris 10 5/08 image_directory                                      |
    |Solaris Serial Console ttya                                                |
    |Solaris Serial Console ttyb (lx50, v60x and v68)                  |
    +-------------------------------------------------------------------+
    Use the ^ and v keys to select which entry is highlighted. Press
    enter to boot the selected OS, 'e' to edit the commands before
    booting, or 'c' for a command-line.

    image_directory 是安装映像所在目录的名称。


    注 –
    • 如果使用了 NFS 以及 add_install_client 命令和 -c 选项设置 JumpStart 目录的路径,则不需要将该路径包含在引导项中。

    • 如果未使用 NFS,则必须记录包含 JumpStart 目录的压缩配置文件的路径。


  3. 要停止引导进程并使用菜单项编辑器,请键入 e

    此时将显示 GRUB 编辑菜单。


    kernel /I86PC.Solaris_11-8/multiboot kernel/unix -B console=ttyb,\
    install_media=131.141.2.32:/export/mary/v11 \
    module /I86PC.Solaris_11-8/x86.new
  4. 使用方向键选择引导项。

  5. 要编辑所选的命令,请键入 e

    将显示与以下示例相似的命令。


    grub edit>kernel /I86PC.Solaris_11-8/multiboot kernel/unix -B \
    console=ttyb,install_media=131.141.2.32:/export/mary/_\
    module /I86PC.Solaris_11-8/x86.new
  6. 通过键入所需的选项来编辑命令。

    用于 JumpStart 安装的语法如下所示:


    grub edit>kernel /I86PC.Solaris_11-image_directory/multiboot kernel/unix/ \
    - install [url|ask] options -B install_media=media_type
    

    有关 JumpStart 选项的描述,请参见x86: 用于引导系统的命令参考

    在以下示例中,OS 是通过网络以及自定义 JumpStart 配置文件进行安装的。


    kernel /I86PC.Solaris_11-8/multiboot kernel/unix/ - install \
    -B install_media=131.141.2.32:/export/mary/v11 \
    module /I86PC.Solaris_11-8/x86.new
  7. 要接受编辑,请按 Enter 键。

    系统将保存所做更改并显示 GRUB 主菜单。


    注 –

    按 Esc 键返回到 GRUB 主菜单,并且不保存所做更改。


  8. 要开始安装,请键入 b

x86: 用于引导系统的命令参考

下表介绍了 GRUB 菜单引导命令的命令行选项。所列选项适用于 JumpStart 安装。

boot 命令的语法如下。


kernel /I86PC.Solaris_11-image_directory/multiboot kernel/unix/ - install \
[url|ask] options -B install_media=media_type
表 6–4 GRUB 菜单引导命令参考

选项 

描述 

- install

执行自定义 JumpStart 安装。 

在以下示例中,系统将从 DVD 介质引导并使用下列选项: 

  • - install 执行自定义 JumpStart 安装

  • file://jumpstart/config.tar 查找本地磁盘上的 JumpStart 配置文件


kernel /I86pc.Solaris_11.8/multiboot - install file://jumpstart/config.tar \
 -B install_media=dvdrom module /I86Solaris_11.8/x86.new

[url| ask]

指定自定义 JumpStart 文件的位置或提示您指定位置。 

  • url-指定文件的路径。可以为位于 HTTP 或 HTTPS 服务器上的文件指定 URL。

    HTTP 服务器的语法如下:


    http://server_name:IP_address/jumpstart_dir_path/
    compressed_config_file&proxy_info
    
    • 如果将一个 sysidcfg 文件放置在压缩配置文件中,必须指定包含该文件的服务器的 IP 地址,如下例所示:


      kernel /I86pc.Solaris_11.8/multiboot install \
      http://192.168.2.1/jumpstart/config.tar \
       -B install_media=192.168.2.1/export/Solaris_11.8/boot \
      module /I86PC.Solaris_11.8/x86.new
    • 如果将压缩配置文件保存在位于防火墙后面的 HTTP 服务器上,则在引导过程中必须使用代理说明符。不需要为包含该文件的服务器指定 IP 地址。必须指定代理服务器的 IP 地址,如下例所示:


      kernel /I86pc.Solaris_11.8/multiboot install \
      http://www.shadow.com/jumpstart/config.tar&proxy=131.141.6.151 \
       -B install_media=192.168.2.1/export/Solaris_11.8/boot \
      module /I86PC.Solaris_11.8/x86.new
  • ask-指定在系统引导并连接到网络后,安装程序提示您键入压缩的配置文件位置。如果使用该选项,您将无法执行完全无人参与的 JumpStart 安装。

    如果通过按 Return 来跳过提示,Solaris 安装程序将交互式地配置网络参数。然后,安装程序提示您键入压缩配置文件的位置。

    以下示例将执行自定义 JumpStart 安装并从 DVD 介质引导。在系统连接到网络后,将提示您键入配置文件的位置。


    kernal /boot/multiboot kernel/unix install ask -B \
    install_media=192.168.2.1:export/sol_11_x86/boot module \
    /I86PC.Solaris_11.8_

options

  • dhcp-指定使用 DHCP 服务器获取引导系统所需的网络安装信息。该选项对于 JumpStart 安装不是必需的。如果不通过键入 dhcp 来指定要使用 DHCP 服务器,则系统将使用 /etc/bootparams 文件或命名服务 bootparams 数据库。例如,如果您希望保留静态 IP 地址,您将不会指定 dhcp。例如:


    kernel /I86pc.Solaris_11.8/multiboot install \
    dhcp -B install_media=192.168.2.1:/export/Solaris_11.8/ \
    boot module /I86PC.Solaris_11.8/x86.new
  • 选项 nowintext 不适用于 JumpStart 安装。这些选项对于交互式安装很有帮助。有关更多信息,请参见《Solaris 10 5/08 安装指南:基本安装》中的“通过 GRUB 使用 Solaris 安装程序执行安装或升级”

第 7 章 使用自定义 JumpStart 进行安装(示例)

本章提供了一个示例,该示例使用自定义 JumpStart 安装程序在基于 SPARC 和基于 x86 的系统上设置和安装 Solaris 软件。

样例站点安装

图 7–1 显示本示例的站点安装。

图 7–1 样例站点安装

本图显示了工程设计子网上的安装服务器和市场营销子网上的引导服务器。

在此样例站点上,条件如下:

创建安装服务器

由于这两个组均需要从网络安装 Solaris 10 5/08 软件,因此使用 server-1 作为这两个组的安装服务器。使用 setup_install_server(1M) 命令将映像复制到 server-1 本地磁盘的 /export/install 目录中。从下列任一介质复制映像。

必须将映像从光盘复制到一个空目录中,在这些示例中为 sparc_10 目录和 x86_10 目录。


示例 7–1 SPARC: 复制 Solaris 10 5/08 CD

将 Solaris Software for SPARC Platforms - 1 CD 放入连接到 server-1 的 CD-ROM 驱动器,然后键入以下命令:


server-1# mkdir -p /export/install/sparc_10
server-1# cd /CD_mount_point/Solaris_10/Tools
server-1# ./setup_install_server /export/install/sparc_10

将 Solaris Software for SPARC Platforms - 2 CD 放入连接到 server-1 的 CD-ROM 驱动器,然后键入以下命令:


server-1# cd /CD_mount_point/Solaris_10/Tools
server-1# ./add_to_install_server /export/install/sparc_10

为要安装的每张 Solaris Software CD 重复前一命令。

将 SPARC: Solaris Languages for SPARC Platforms CD 放入连接到 server-1 的 CD-ROM 驱动器,然后键入以下命令:


server-1# cd /CD_mount_point/Solaris_10/Tools
server-1# ./add_to_install_server /export/install/sparc_10


示例 7–2 x86: 复制 Solaris 10 5/08 CD

将 Solaris Software for x86 Platforms - 1 CD 放入连接到 server-1 的 CD-ROM 驱动器,然后键入以下命令:


server-1# mkdir -p /export/install/x86_10
server-1# cd /CD_mount_point/Solaris_10/Tools
server-1# ./setup_install_server /export/install/x86_10

将 Solaris Software for x86 Platforms - 2 CD 放入连接到 server-1 的 CD-ROM 驱动器,然后键入以下命令:


server-1# cd /CD_mount_point/Solaris_10/Tools
server-1# ./add_to_install_server /export/install/x86_10

为要安装的每张 Solaris Software CD 重复前一命令。

将 Solaris Languages for x86 Platforms CD 放入连接到 server-1 的 CD-ROM 驱动器,然后键入以下命令:


server-1# cd /CD_mount_point/Solaris_10/Tools
server-1# ./add_to_install_server /export/install/x86_10


示例 7–3 SPARC: 复制 Solaris 10 5/08 DVD

将 Solaris Operating System for SPARC Platforms DVD 插入连接到 server-1 的 DVD-ROM 驱动器,然后键入以下命令:


server-1# mkdir -p /export/install/sparc_10
server-1# cd /DVD_mount_point/Solaris_10/Tools
server-1# ./setup_install_server /export/install/sparc_10


示例 7–4 x86: 复制 Solaris Operating System for x86 Platforms DVD

将 Solaris Operating System for x86 Platforms DVD 放入连接到 server-1 的 DVD-ROM 驱动器,然后键入以下命令:


server-1# mkdir -p /export/install/x86_10
server-1# cd /DVD_mount_point/Solaris_10/Tools
server-1# ./setup_install_server /export/install/x86_10

x86: 创建市场营销系统的引导服务器

系统无法从位于其他子网中的安装服务器进行引导,因此将 server-2 作为市场营销组所在子网的引导服务器。使用 setup_install_server(1M) 命令从 Solaris Operating System for x86 Platforms DVD 或 Solaris Software for x86 Platforms - 1 CD 复制引导软件。引导软件将被复制到 server-2 本地磁盘的 /export/boot 目录中。

选择介质并将引导软件安装到本地磁盘上。

setup_install_server 命令中,-b 指定 setup_install_server 要将引导信息复制到名为 /export/boot 的目录中。

创建 JumpStart 目录

至此,您已设置了安装服务器和引导服务器,接下来将在 server-1 中创建一个 JumpStart 目录。您可以使用网络上的任何系统。此目录保存 Solaris 软件的自定义 JumpStart 安装所需要的文件。设置此目录的方法是从 Solaris Operating System DVD 映像或从已复制到 /export/install 的 Solaris Software - 1 CD 映像复制样例目录:


server-1# mkdir /jumpstart
server-1# cp -r /export/install/sparc_10/Solaris_10/Misc/jumpstart_sample /jumpstart

共享 JumpStart 目录

要使网络中的系统能够访问 rules 文件和配置文件,您需要共享 /jumpstart 目录。要使目录能够共享,需要将下行添加到 /etc/dfs/dfstab 文件:

share -F nfs -o ro,anon=0 /jumpstart

然后,在命令行中键入 shareall 命令:


server-1# shareall

SPARC: 创建工程设计组的配置文件

对于工程设计系统,在 /jumpstart 目录中创建名为 eng_prof 的文件。eng_prof 文件包含以下各项,这些项定义了要在工程设计组的系统中安装的 Solaris 10 5/08 软件:

install_type  initial_install
system_type   standalone
partitioning  default
cluster       SUNWCprog
filesys       any 512 swap

以上示例配置文件指定下列安装信息。

install_type

该安装将被视为初始安装而不是升级。

system_type

工程设计系统是独立系统。

partitioning

JumpStart 软件使用缺省的磁盘分区在工程设计系统上安装 Solaris 软件。

cluster

将安装开发者系统支持软件组。

filesys

工程设计组中的每个系统都将有 512 MB 的交换空间。

x86: 创建市场营销组的配置文件

对于市场营销系统,在 /jumpstart 目录中创建名为 marketing_prof 的文件。marketing_prof 文件包含以下各项,这些项定义了要在市场营销组的系统中安装的 Solaris 10 5/08 软件:

install_type  initial_install
system_type   standalone
partitioning  default
cluster       SUNWCuser
package       SUNWaudio

以上示例配置文件指定下列安装信息。

install_type

该安装将被视为初始安装而不是升级。

system_type

市场营销系统是独立系统。

partitioning

JumpStart 软件将使用缺省的磁盘分区在市场营销系统上安装 Solaris。

cluster

将安装最终用户 Solaris 软件组。

package

音频演示教程软件包将被添加到每个系统。

更新 rules 文件

现在,必须将规则添加到 rules 文件中。Solaris 安装程序使用这些规则在自定义 JumpStart 安装过程中为每个系统选择正确的安装(配置文件)。

在该站点上,每个部门都位于各自的子网上并有各自的网络地址。工程设计部门位于 255.222.43.0 子网中。市场营销部门位于 255.222.44.0 子网中。您可以使用此信息控制为工程设计系统和市场营销系统安装 Solaris 10 5/08 软件的方式。在 /jumpstart 目录中,编辑 rules 文件,删除所有的示例规则,并将以下行添加到该文件中:


network 255.222.43.0 - eng_prof -
network 255.222.44.0 - marketing_prof -

基本上,这些规则说明位于 255.222.43.0 网络中的系统将通过使用 eng_prof 配置文件来安装 Solaris 10 5/08 软件。而位于 255.222.44.0 网络中的系统将通过使用 marketing_prof 配置文件来安装 Solaris 10 5/08 软件。


注 –

可以使用样例规则,以便使用网络地址标识分别要通过使用 eng_profmarketing_prof 来安装 Solaris 10 5/08 软件的系统。还可以使用主机名、内存大小或模型类型作为规则关键字。表 8–1 包含可在 rules 文件中使用的关键字的完整列表。


验证 rules 文件

设置 rules 和配置文件后,运行 check 脚本来验证文件是否正确:


server-1# cd /jumpstart
server-1# ./check

如果 check 脚本没有找到任何错误,该脚本将创建 rules.ok 文件。

SPARC: 将工程设计系统设置为从网络安装

设置 /jumpstart 目录和文件后,在安装服务器 server-1 中使用 add_install_client 命令设置工程设计系统,以便从安装服务器安装 Solaris 软件。server-1 也是工程设计组的子网的引导服务器。


server-1# cd /export/install/sparc_10/Solaris_10/Tools
server-1# ./add_install_client -c server-1:/jumpstart host-eng1 sun4u
server-1# ./add_install_client -c server-1:/jumpstart host-eng2 sun4u

add_install_client 命令中,所使用的选项具有以下含义:

-c

指定服务器 (server-1) 和 JumpStart 目录的路径 (/jumpstart)。使用 NFS 时使用此选项。


注 –

如果未使用 NFS,则使用以下命令指定 JumpStart 目录的路径:

  • 对基于 SPARC 的系统,在 boot 命令中指定路径

  • 对基于 x86 的系统,通过编辑 GRUB 菜单项指定路径


host-eng1

工程设计组中的某个系统的名称。

host-eng2

工程设计组中的另一个系统的名称。

sun4u

指定将 server-1 用作安装服务器的系统的平台组。该平台组是面向 Ultra 5 系统的。

x86: 将市场营销系统设置为从网络安装

接下来,将在引导服务器 (server-2) 上使用 add_install_client 命令。该命令将市场营销系统设置为从引导服务器进行引导,并从安装服务器 (server-1) 安装 Solaris 软件:


server-2# cd /marketing/boot-dir/Solaris_10/Tools
server-2# ./add_install_client -s server-1:/export/install/x86_10 \
-c server-1:/jumpstart host-mkt1 i86pc
server-2# ./add_install_client -s server-1:/export/install/x86_10 \
-c server-1:/jumpstart host-mkt2 i86pc
server-2# ./add_install_client -d -s server-1:/export/install/x86_10 \
-c server-1:/jumpstart SUNW.i86pc i86pc
server-2# ./add_install_client -c server-1:/jumpstart host-mkt1 sun4u
server-2# ./add_install_client -c server-1:/jumpstart host-mkt2 sun4u

add_install_client 命令中,所使用的选项具有下列含义:

-d

指定客户机使用 DHCP 获取网络安装参数。此选项对使用 PXE 网络引导从网络引导的客户机是必需的。对于不使用 PXE 网络引导的网络引导客户机,-d 是可选的。

-s

指定安装服务器 (server-1) 和 Solaris 软件的路径 (/export/install/x86_10)。

-c

指定服务器 (server-1) 和 JumpStart 目录的路径 (/jumpstart)。使用 NFS 时使用此选项。


注 –

如果未使用 NFS,则使用以下命令指定 JumpStart 目录的路径:

  • 对基于 SPARC 的系统,在 boot 命令中指定路径

  • 对基于 x86 的系统,通过编辑 GRUB 菜单项指定路径


host-mkt1

市场营销组中的某个系统的名称。

host-mkt2

市场营销组中的另一个系统的名称。

sun4u

指定将 server-1 用作安装服务器的系统的平台组。该平台组是面向 Ultra 5 系统的。

SUNW.i86pc

用于所有 Solaris x86 客户机的 DHCP 类名称。如果希望用一个命令来配置所有的 Solaris x86 DHCP 客户机,请使用此类名称。

i86pc

指定使用该引导服务器的系统的平台组。平台名称代表基于 x86 的系统。

SPARC: 引导工程设计系统并安装 Solaris 软件

设置服务器和文件后,可通过在每个系统的 ok (PROM) 提示符下使用以下 boot 命令引导工程设计系统:


ok boot net - install

Solaris OS 会自动安装到工程设计组的系统上。

x86: 引导市场营销系统并安装 Solaris 软件

可以从以下位置之一引导系统:

Solaris 软件会自动安装在市场营销组的系统中。

第 8 章 自定义 JumpStart(参考)

本章列出您可以在 rules 文件、配置文件、开始脚本和结束脚本中使用的关键字和值。

规则关键字和值

表 8–1 介绍了可在 rules 文件中使用的关键字和值。有关创建 rules 文件的详细说明,请参见创建 rules 文件

表 8–1 规则关键字和值的描述

关键字 

值 

匹配项 

any

减号 (-)

任意项。使用 any 关键字总会成功。

arch

processor_type

processor_type 的有效值包括:

  • SPARC:sparc

  • x86:i386

系统的处理器类型。 

uname -p 命令报告系统的处理器类型。

disksize

actual_disk_name size_range

actual_disk_name-磁盘名称,格式为 cxt ydz,如 c0t3d0c0d0,或者特殊字 rootdisk 。如果使用 rootdisk,那么将按以下顺序确定要匹配的磁盘:

  • SPARC:包含预安装的引导映像的磁盘。这种磁盘是一种基于 SPARC 的新系统,出厂时安装了 JumpStart

  • c0t3d0s0 磁盘(如果该磁盘存在)

  • 按照内核探测顺序搜索到的第一个可用磁盘

size_range-磁盘的大小,必须指定为一个范围 (x- x),以 MB 为单位。    


注 –

计算 size_range 时,请记住 1 MB 等于 1,048,576 字节。被宣传为 "535 MB" 的磁盘可能仅包含 510 MB 的磁盘空间。JumpStart 程序会将该 "535 MB" 的磁盘作为 510 MB 的磁盘进行处理,因为 535,000,000 / 1,048,576 = 510。"535 MB" 的磁盘与 530-550 的 size_range 并不匹配。


系统磁盘的名称和大小(以 MB 为单位)。 

示例: 

disksize c0t3d0 250-300

在该示例中,JumpStart 程序尝试匹配名为 c0t3d0 的系统磁盘。该磁盘可以保存 250 MB 到 300 MB 的信息。

示例: 

disksize rootdisk 750-1000

在该示例中,JumpStart 程序尝试按下列顺序匹配磁盘: 

  1. 包含预安装引导映像的系统磁盘

  2. c0t3d0s0 磁盘(如果该磁盘存在)

  3. 可包含 750 MB 到 1 GB 信息的第一个可用磁盘

domainname

actual_domain_name

系统的域名,它控制着命名服务确定信息的方式。 

安装系统后,domainname 命令就可以报告系统的域名。

hostaddress

actual_IP_address

系统的 IP 地址。 

hostname

actual_host_name

系统的主机名。 

安装系统后,uname -n 命令就可以报告系统的主机名。

installed

slice version

slice-磁盘片名称,格式为 cwtxdysz,如 c0t3d0s5,或特殊字 anyrootdisk。如果使用 any,JumpStart 程序将尝试按照内核探测顺序来匹配所有的系统磁盘。如果使用了 rootdisk,则按以下顺序确定要匹配的磁盘:

  • SPARC:包含预安装的引导映像的磁盘。这种磁盘是一种基于 SPARC 的新系统,出厂时安装了 JumpStart

  • c0t3d0s0 磁盘(如果该磁盘存在)

  • 按照内核探测顺序搜索到的第一个可用磁盘

version-版本名称或特殊字 anyupgrade。如果使用 any,那么将匹配任何一个 Solaris 发行版或 SunOS 发行版。如果使用 upgrade,那么将匹配任何支持的和可升级的 Solaris 发行版。

如果 JumpStart 程序找到一个 Solaris 发行版但无法确定版本,则返回的版本为 SystemV

包含与特定 Solaris 软件版本相对应的根 (/) 文件系统的磁盘。

示例: 

installed c0t3d0s1 Solaris 10

在该示例中,JumpStart 程序尝试匹配在 c0t3d0s1 上包含 Solaris 根 (/) 文件系统的系统。

karch

actual_platform_group

有效值为 sun4ui86pcprephttp://docs.sun.com 上的 Solaris Sun 硬件平台指南中描述了系统及其相应平台组的列表。

系统的平台组。 

安装系统后,arch -k 命令或 uname -m 命令就可以报告该系统的平台组。

memsize

physical_mem

该值必须是 MB 值范围 x- x 或单个 MB 值。

系统物理内存的大小(以 MB 为单位)。 

示例: 

memsize 64-128

该示例尝试匹配物理内存大小在 64 MB 到 128 MB 之间的系统。 

如果已经安装了系统,prtconf 命令输出的第 2 行将报告系统的物理内存大小。

model

actual_platform_name

系统的平台名称。有关有效平台名称的列表,请参见 http://docs.sun.com 上的 Solaris Sun 硬件平台指南

要查找已安装的系统的平台名称,请使用 uname -i 命令或 prtconf 命令输出的第 5 行。


注 –

如果 actual_platform_name 包含空格,那么您必须使用下划线 (_) 来代替空格。

示例:

SUNW,Sun_4_50


network

network_num

系统的网络号。JumpStart 程序通过在系统的 IP 地址和子网掩码之间执行逻辑“与”来确定该值。 

示例: 

network 192.168.2.0

如果子网掩码是 255.255.255.0,该示例尝试将系统与 192.168.2.8 IP 地址匹配。 

osname

Solaris_x

已经安装在系统上的某个版本的 Solaris 软件。 

示例: 

osname Solaris 10

在本示例中,JumpStart 程序尝试匹配已安装了 Solaris 10 5/08 OS 的系统。 

probe

probe_keyword

有效的探测关键字或有效的自定义探测关键字。 

示例: 

probe disks

本示例按内核探测顺序(如 c0t3d0s1c0t4d0s0)返回基于 SPARC 的系统的磁盘大小,以 MB 为单位。JumpStart 程序会设置 SI_DISKLIST SI_DISKSIZESSI_NUMDISKSSI_TOTALDISK 环境变量。


注 –

probe 关键字的独特之处在于,它既不尝试匹配属性,也不尝试运行配置文件,而只是返回一个值。因此,您不能使用 probe 规则关键字指定开始脚本、配置文件和结束脚本。


第 5 章,创建自定义规则和探测关键字(任务)中介绍了探测关键字。

totaldisk

size_range

该值必须指定为 MB 范围 (x- x)。


注 –

计算 size_range 时,请记住 1 MB 等于 1,048,576 字节。被宣传为 "535 MB" 的磁盘可能仅有 510 MB 的磁盘空间。JumpStart 程序会将该 "535 MB" 的磁盘作为 510 MB 的磁盘进行处理,因为 535,000,000 / 1,048,576 = 510。"535 MB" 的磁盘与 530-550 的 size_range 并不匹配。


系统上的总磁盘空间(以 MB 为单位)。总磁盘空间包括连接到系统上的所有可操作磁盘的空间。 

示例: 

totaldisk 300-500

在本示例中,JumpStart 程序尝试匹配总磁盘空间在 300 MB 到 500 MB 之间的系统。 

配置文件关键字和值

本节说明了可在配置文件中使用的配置文件关键字和值。有关创建配置文件的详细说明,请参见创建配置文件

配置文件关键字快速参考

借助表 8–2,您可根据安装方案快速确定可以使用的关键字。除非在关键字描述中另有说明,否则该关键字只能用于初始安装选项。

表 8–2 配置文件关键字概述
 

安装方案 

配置文件关键字 

独立系统(非联网的) 

独立系统(联网的)或服务器 

OS 服务器 

升级 

升级时重新分配磁盘空间 

archive_location(安装 Solaris Flash 归档文件)

     

backup_media

       

boot_device

   

bootenv createbe

   

client_arch

   

   

client_root

   

   

client_swap

   

   

cluster(添加软件组)

   

cluster(添加或删除簇)

dontuse

   

fdisk(仅适用于 x86)

   

filesys(挂载远程文件系统)

 

   

filesys(创建本地文件系统)

   

filesys(创建镜像的文件系统)

 

 

forced_deployment (安装 Solaris Flash 差别归档文件)

 

 

 

geo

install_type

layout_constraint

       

local_customization(安装 Solaris Flash 归档文件)

 

 

 

locale

metadb(创建状态数据库副本)

 

 

no_master_check(安装 Solaris Flash 差别归档文件)

 

 

 

no_content_check(安装 Solaris Flash 差别归档文件)

 

 

 

num_clients

   

   

package

partitioning

 

 

patch

root_device

system_type

 

 

usedisk

   

配置文件关键字描述和示例

archive_location 关键字

archive_location retrieval_type location
retrieval_type

retrieval_typelocation 的值取决于 Solaris Flash 归档文件的存储位置。以下部分包含可用于 retrieval_typelocation 的值以及如何使用 archive_location 关键字的示例。

location

以下各节对位置进行了详细说明。


注意 – 注意 –

安装了非全局区域后,将无法正确创建 Solaris Flash 归档文件。Solaris Flash 功能与 Solaris Zones 分区技术不兼容。如果创建了 Solaris Flash 归档文件,当在下列条件下部署归档文件时,所生成的归档文件无法正确安装:


NFS 服务器上存储的归档文件

如果归档文件存储在 NFS 服务器上,则对 archive_location 关键字使用以下语法。


archive_location nfs server_name:/path/filename retry n
server_name

存储归档文件的服务器的名称。

path

要从指定服务器检索的归档文件的位置。如果该路径含有 $HOST,那么 Solaris Flash 安装实用程序将使用要安装的克隆系统的名称替换 $HOST。

filename

Solaris Flash 归档文件的名称。

retry n

可选的关键字。n 是 Solaris Flash 实用程序尝试挂载归档文件的最大次数。


示例 8–1 NFS 服务器上存储的归档文件

archive_location nfs golden:/archives/usrarchive

archive_location nfs://golden/archives/usrarchive

HTTP 或 HTTPS 服务器上存储的归档文件

如果归档文件存储在 HTTP 服务器上,则对 archive_location 关键字使用以下语法。


archive_location http://server_name:port/path/filename optional_keywords

如果归档文件存储在 HTTPS 服务器上,则对 archive_location 关键字使用以下语法。


archive_location https://server_name:port/path/filename optional_keywords
server_name

存储归档文件的服务器的名称。

port

可选的端口。port 可以是一个端口号,也可以是在运行时确定其端口号的 TCP 服务的名称。

如果不指定端口,那么 Solaris Flash 安装实用程序将使用缺省的 HTTP 端口号 80。

path

要从指定服务器检索的归档文件的位置。如果该路径含有 $HOST,那么 Solaris Flash 安装实用程序将使用要安装的克隆系统的名称替换 $HOST。

filename

Solaris Flash 归档文件的名称。

optional_keywords

可在从 HTTP 服务器检索 Solaris Flash 归档文件时指定的可选关键字。

表 8–3 用于 archive_location HTTP 的可选关键字

关键字 

值定义 

auth basic user_name password

如果归档文件位于有口令保护的 HTTP 服务器上,那么您必须在配置文件中包含访问 HTTP 服务器所需的用户名和口令。 


注 –

在准备与自定义 JumpStart 一起使用的配置文件中使用此认证方法具有一定的风险。未经授权的用户可能会拥有对包含口令的配置文件的访问权限。


timeout min

使用 timeout 关键字,可以以分钟为单位,指定在无法接收到来自 HTTP 服务器的数据的情形下允许等待的最大时间长度。如果发生超时,则连接将被关闭、重新打开并恢复。如果指定 timeout 值为 0(零),则不重新打开连接。

  • 如果重新连接超时,那么 Solaris Flash 安装实用程序将尝试在归档文件中的最后一个已知位置处恢复安装。如果 Solaris Flash 安装实用程序无法在最后一个已知位置处恢复安装,那么将从归档文件的开头重新开始检索,并且将放弃超时前检索到的数据。

  • 如果安装软件包时发生超时重新连接,那么将从软件包开头重试该软件包,并且将放弃超时前检索到的数据。

proxy host:port

proxy 关键字允许您指定代理主机和代理端口。您可以使用代理主机从防火墙的另一侧检索 Solaris Flash 归档文件。指定 proxy 关键字时必须提供一个代理端口。


示例 8–2 HTTP 或 HTTPS 服务器上存储的归档文件

archive_location http://silver/archives/usrarchive.flar timeout 5 

auth basic user_name password 关键字的示例:

archive_location http://silver/archives/usrarchive.flar timeout 5 user1 secret

FTP 服务器上存储的归档文件

如果归档文件存储在 FTP 服务器上,则对 archive_location 关键字使用以下语法。


archive_location ftp://user_name:password@server_name:port/path/filename optional_keywords
user_name:password

配置文件中访问 FTP 服务器所需的用户名和口令。

server_name

存储归档文件的服务器的名称。

port

端口是可选项。port 可以是一个端口号,也可以是在运行时确定其端口号的 TCP 服务的名称。

如果不指定端口,那么 Solaris Flash 安装实用程序将使用缺省的 FTP 端口号 21。

path

要从指定服务器检索的归档文件的位置。如果该路径含有 $HOST,那么 Solaris Flash 安装实用程序将使用要安装的克隆系统的名称替换 $HOST。

filename

Solaris Flash 归档文件的名称。

optional_keywords

可在从 FTP 服务器检索 Solaris Flash 归档文件时指定的可选关键字。

表 8–4 用于 archive_location FTP 的可选关键字

关键字 

值定义 

timeout min

使用 timeout 关键字,可以以分钟为单位,指定在无法接收到来自 HTTP 服务器的数据的情形下允许等待的最大时间长度。如果发生超时,则连接将被关闭、重新打开并恢复。如果指定 timeout 值为 0(零),则不重新打开连接。

  • 如果重新连接超时,那么 Solaris Flash 安装实用程序将尝试在归档文件中的最后一个已知位置处恢复安装。如果 Solaris Flash 安装实用程序无法在最后一个已知位置处恢复安装,那么将从归档文件的开头重新开始检索,并且将放弃超时前检索到的数据。

  • 如果安装软件包时发生超时重新连接,那么将从软件包开头重试该软件包,并且将放弃超时前检索到的数据。

proxy host:port

proxy 关键字允许您指定代理主机和代理端口。您可以使用代理主机从防火墙的另一侧检索 Solaris Flash 归档文件。指定 proxy 关键字时必须提供一个代理端口。


示例 8–3 FTP 服务器上存储的归档文件

archive_location ftp://user1:secret@silver/archives/usrarchive.flar timeout 5

本地磁带上存储的归档文件

如果归档文件存储在磁带上,则对 archive_location 关键字使用以下语法。


archive_location local_tape device position
device

存储 Solaris Flash 归档文件的磁带机的名称。如果设备名称使用了规则路径,那么 Solaris Flash 安装实用程序将从设备节点的路径检索归档文件。如果设备名称未使用规则路径,那么 Solaris Flash 安装实用程序会将 /dev/rmt/ 添加到其路径中。

position

指定磁带机上存储归档文件的位置。如果未提供位置,那么 Solaris Flash 安装实用程序将从磁带机上的当前位置检索归档文件。通过指定 position,您可以将开始脚本或 sysidcfg 文件放置于磁带机上归档文件前面的位置上。


示例 8–4 本地磁带上存储的归档文件

archive_location local_tape /dev/rmt/0n 5

archive_location local_tape 0n 5

本地设备上存储的归档文件

如果将 Solaris Flash 归档文件存储在面向文件系统的、可随机访问的设备(如软盘或 DVD)上,那么您可以从本地设备检索 Solaris Flash 归档文件。对于 archive_location 关键字,使用以下语法。


注 –

通过使用本地磁带语法,您可以从面向流的设备(如磁带)中检索归档文件。



archive_location local_device device path/filename file_system_type
device

存储 Solaris Flash 归档文件的驱动器的名称。如果设备名称使用了规则路径,那么将直接挂载该设备。如果设备名称未使用规则路径,那么 Solaris Flash 安装实用程序会将 /dev/dsk/ 添加到其路径中。

path

Solaris Flash 归档文件的路径,相对于指定设备上的文件系统的根。如果该路径含有 $HOST,那么 Solaris Flash 安装实用程序将使用要安装的克隆系统的名称替换 $HOST。

filename

Solaris Flash 归档文件的名称。

file_system_type

指定设备上文件系统的类型。如果未提供文件系统类型,那么 Solaris Flash 安装实用程序将尝试挂载 UFS 文件系统。如果 UFS 挂载失败,那么 Solaris Flash 安装实用程序将尝试挂载 HSFS 文件系统。


示例 8–5 本地设备上存储的归档文件

要从 UFS 文件系统格式的本地硬盘驱动器上检索归档文件,请使用以下命令:

archive_location local_device c0t0d0s0 /archives/$HOST

要从包含 HSFS 文件系统的本地 CD-ROM 上检索归档文件,请使用以下命令:

archive_location local_device c0t0d0s0 /archives/usrarchive

本地文件上存储的归档文件

您可以检索作为本地文件存储在从中引导克隆系统的 miniroot 中的归档文件。执行自定义 JumpStart 安装时,从 DVD、CD 或基于 NFS 的 miniroot 引导系统。安装软件从该 miniroot 装入和运行。因而,存储在 DVD、CD 或基于 NFS 的 miniroot 中的 Solaris Flash 归档文件可以作为本地文件进行访问。对于 archive_location 关键字,请使用以下语法。


archive_location local_file path/filename
path

归档文件的位置。从 Solaris Software - 1 CD 或者从 Solaris Operating System DVD 引导系统时,路径必须可由该系统作为本地文件访问。在从 Solaris Software - 1 CD 或从 Solaris Operating System DVD 引导时,系统不能访问 /net 或其他任何自动挂载的目录。

filename

Solaris Flash 归档文件的名称。


示例 8–6 本地文件上存储的归档文件

archive_location local_file /archives/usrarchive

backup_media 配置文件关键字

backup_media type path

需要重新分配磁盘空间时,只能将 backup_media 用于升级选项。

backup_media 定义在升级过程中,由于空间不足而需要重新分配空间时,用于备份文件系统的介质。如果备份需要多个磁带或软盘,那么在升级过程中会提示您插入磁带或软盘。

有效的 type

有效的 path

规格 

local_tape

/dev/rmt/n

将被升级的系统上的本地磁带机。path 必须是该磁带机的字符(原始)设备路径。n 是磁带机的编号。

local_diskette

/dev/rdisketten

将被升级的系统上的本地软盘驱动器。path 必须是该软盘驱动器的字符(原始)设备路径。n 是软盘驱动器的编号。

用于备份的软盘必须已经格式化。 

local_filesystem

/dev/dsk/cwt xdys z

/file_system

将被升级的系统上的本地文件系统。您不能指定升级过程中会被更改的本地文件系统。path 可以是磁盘片的块设备路径。例如,/dev/dsk/c wtxd ysz 中的 tx 可能是不需要的。或者,path 可以是指向 /etc/vfstab 文件挂载的文件系统的绝对路径。

remote_filesystem

host:/file_system

远程系统上的 NFS 文件系统。path 必须包含远程系统 host 的名称或 IP 地址,以及指向 NFS 文件系统 file_system 的绝对路径。NFS 文件系统必须具有读/写访问权限。

remote_system

user@host :/directory

远程系统上,可通过远程 shell rsh 访问的目录。将被升级的系统必须能够通过远程系统的 .rhosts 文件访问该远程系统。path 必须包含远程系统 host 的名称和指向目录 directory 的绝对路径。缺省情况下,如果未指定用户登录 ID user,那么将使用 root


示例 8–7 backup_media 配置文件关键字

backup_media local_tape /dev/rmt/0

backup_media local_diskette /dev/rdiskette1

backup_media local_filesystem /dev/dsk/c0t3d0s4

backup_media local_filesystem /export

backup_media remote_filesystem system1:/export/temp

backup_media remote_system user1@system1:/export/temp

boot_device 配置文件关键字

boot_device device eeprom

boot_device 指定 JumpStart 程序安装根 (/) 文件系统的设备和系统的引导设备。boot_device 必须匹配任何指定根 (/) 文件系统的 filesys 关键字和 root_device 关键字。

如果没有在配置文件中指定 boot_device 关键字,则缺省情况下,在安装过程中将指定以下 boot_device 关键字:


boot_device any update
device

请使用以下值之一。

SPARC: cw txdy szcx dysz

JumpStart 程序放置根 (/) 文件系统的磁盘片,例如 c0t0d0s0

x86: cw txdy cxdy

JumpStart 程序放置根 (/ ) 文件系统的磁盘,例如 c0d0

existing

JumpStart 程序将根 (/) 文件系统放置在系统的现有引导设备上。

any

JumpStart 程序选择放置根 (/) 文件系统的位置。JumpStart 程序将尝试使用系统的现有引导设备。如有必要,JumpStart 程序可能会选择其他引导设备。

eeprom

选择以便更新或保存系统的 EEPROM。

如果更改系统的当前引导设备,eeprom 值还允许您更新系统的 EEPROM。通过更新系统的 EEPROM,系统可以从新引导设备自动引导。


注 –

x86:必须指定 preserve 值。


update

JumpStart 程序将系统的 EEPROM 更新到指定的引导设备,以便已安装的系统自动从中引导。

preserve

未更改系统的 EEPROM 中的引导设备值。如果指定了新引导设备而没有更改系统的 EEPROM,那么您需要手动更改系统的 EEPROM,以便它能够从新引导设备自动引导。


示例 8–8 boot_device 配置文件关键字

boot_device c0t0d0s2 update

bootenv createbe 配置文件关键字

bootenv createbe bename new_BE_name filesystem mountpoint:device:fs_options 
[filesystem...]

bootenv createbe 关键字允许您在安装 Solaris OS 的同时快速创建空且非活动的引导环境。至少,您必须创建根 (/) 文件系统。系统会保留指定文件系统的片,但不会复制任何文件系统;将命名引导环境,但在使用 Solaris Flash 归档文件安装之前不会真正创建该引导环境。使用归档文件安装空引导环境时,文件系统会被安装在保留的片上。下面列出了benamefilename 的值。

bename new_BE_name

bename 指定了要创建的新引导环境的名称。new_BE_name 不能超过 30 个字符,只能包含字母数字字符,不能包含多字节字符。名称在系统上必须是唯一的。

filesystem mountpoint: device:fs_options

filesystem 确定将在新引导环境中创建的文件系统的类型和数量。至少必须定义一个包含根 (/) 文件系统的片。文件系统可位于同一个磁盘上,也可以分布在多个磁盘上。

  • mountpoint 可以是任何有效的挂载点,也可以是表示交换片的 –(连字符)。

  • 首次引导正在安装的操作系统时,device 必须处于可用状态。此设备与 JumpStart 特殊存储设备(例如 free)无关,并且不能是 Solaris 卷管理器卷或 Veritas 卷管理器卷。device 是磁盘设备的名称,格式为 /dev/dsk/cwtxd ysz

  • fs_options 可以是以下内容之一:

    • ufs,表示 UFS 文件系统。

    • swap,表示交换文件系统。交换挂载点必须为 (连字符)。

有关配置文件示例和使用此关键字的背景,请参见以下参考资料:

有关配置文件的示例 

示例 3–11

有关使用能够创建、升级和激活非活动引导环境的 Solaris Live Upgrade 的背景 

《Solaris 10 5/08 安装指南:Solaris Live Upgrade 和升级规划》中的第 2  章 “Solaris Live Upgrade(概述)”

有关使用 Solaris Flash 归档文件的背景 

《Solaris 10 5/08 安装指南:Solaris Flash 归档文件(创建和安装)》中的第 1  章 “Solaris Flash(概述)”

client_arch 配置文件关键字

client_arch karch_value ...

client_arch 指定操作系统服务器将支持与该服务器所用平台组不同的平台组。如果未在配置文件中指定 client_arch,那么使用此操作系统服务器的任何无盘客户机都必须包含与该服务器所使用的平台组相同的平台组。您必须指定希望操作系统服务器支持的每个平台组。

karch_value 的有效值是 sun4ui86pc。有关平台名称和各种系统的详细列表,请参见 http://docs.sun.com 上的 Solaris Sun 硬件平台指南


注 –

只有当 system_type 被指定为 server 时,才可以使用 client_arch


client_root 配置文件关键字

client_root root_size

client_root 定义为每个客户机分配的根空间量 root_size(以MB 为单位)。如果未在服务器的配置文件中指定 client_root,那么安装软件将为每个客户机分配 15 MB 的根空间。客户机根空间的大小与 num_clients 关键字组合使用,以确定要为 /export/root 文件系统保留多少空间。


注 –

只有当 system_type 被指定为 server 时,才可以使用 client_root


client_swap 配置文件关键字

client_swap swap_size

client_swap 定义为每个无盘客户机分配的交换空间量 swap_size(以 MB 为单位)。如果未在配置文件中指定 client_swap ,则缺省情况下,将分配 32 MB 的交换空间。


注 –

仅当 system_type 被指定为 server 时,您才可以使用 client_swap



示例 8–9 client_swap 配置文件关键字

以下示例指定每个无盘客户机将具有 64 MB 的交换空间。

client_swap 64

确定 swap 大小的方式

如果配置文件没有指定 swap 的大小,则 JumpStart 程序将根据系统的物理内存确定交换空间的大小。表 8–5 显示如何在自定义 JumpStart 安装过程中确定 swap 的大小。

表 8–5 确定 swap 的大小

物理内存(以 MB 为单位) 

交换空间(以 MB 为单位) 

16-64 

32 

64-128 

64 

128-512 

128 

大于 512 

256 

JumpStart 程序将 swap 的大小设置为不超过 swap 所在磁盘的 20%。如果放置其他文件系统后,该磁盘上包含空闲空间,则分配结果将有所不同。如果有空闲空间,则 JumpStart 程序会将空闲空间分配给 swap,如果可能,将分配表 8–5 中显示的大小。


注 –

物理内存和交换空间之和至少应为 32 MB。


cluster 配置文件关键字(添加软件组)

cluster group_name

cluster 指定要添加到系统中的软件组。


注 –

软件组是包含簇和软件包集合的元簇。通过使用 cluster 关键字和 group_name 变量安装软件组。只能在初始安装中安装 cluster 关键字。该 cluster 关键字指向位于 clustertoc(4) 文件中的元簇。

簇是名为 SUNWname 的软件包的集合。使用 cluster 关键字和 cluster_name 变量可以安装簇。可以在初始安装或升级时从软件组(元簇)添加或删除簇。


下表列出了每个软件组的 group_name

软件组 

group_name

精简网络支持软件组 

SUNWCrnet

核心系统支持软件组 

SUNWCreq

最终用户 Solaris 软件组 

SUNWCuser

开发者 Solaris 软件组 

SUNWCprog

完整 Solaris 软件组 

SUNWCall

完整 Solaris 软件组加 OEM 支持 

SUNWCXall

下列限制适用:

有关软件组的更多信息,请参见《Solaris 10 5/08 安装指南:规划安装和升级》中的“软件组的磁盘空间建议”

cluster 配置文件关键字(添加或删除簇)

cluster cluster_name add_delete_switch

cluster 指定了在系统上要安装的软件组中是添加簇还是删除簇。

cluster_name

簇名称的格式必须为 SUNWCname

add_delete_switch

可选关键字,用于指明是添加还是删除指定的簇。使用 adddelete 值。如果不指定 adddelete,则在缺省情况下使用 add

在升级期间使用 cluster 时,将会出现下列情况:


注 –

软件组是包含簇和软件包集合的元簇。通过使用 cluster 关键字和 group_name 变量安装软件组。只能在初始安装中安装 cluster 关键字。该 cluster 关键字指向位于 clustertoc(4) 文件中的元簇。

簇是软件包的集合。可以将簇组合到一起形成软件组(元簇)。簇的名称始终采用 SUNW<name> 的格式。使用 cluster 关键字和 cluster_name 变量可以安装簇。可以在初始安装或升级时从软件组(元簇)添加或删除簇。


dontuse 配置文件关键字

dontuse disk_name ...

缺省情况下,当指定 partitioning default 时,JumpStart 程序使用系统上所有可操作的磁盘。dontuse 用于指定不希望 JumpStart 程序使用的一块或多块磁盘。必须按照以下格式指定 disk_namecxtydzcydz,例如 c0t0d0


注 –

不能在同一配置文件中同时指定 dontuse 关键字和 usedisk 关键字。


x86: fdisk 配置文件关键字

fdisk disk_name type size

fdisk 定义了如何在基于 x86 的系统上设置 fdisk 分区。您可以多次指定 fdisk。当 fdisk 对基于 x86 的系统进行分区时,将发生以下情况:

disk_name

使用以下值可指定在哪个位置创建或删除 fdisk 分区:

  • cxt ydzc ydz-特定磁盘,例如 c0t3d0

  • rootdisk-包含系统根磁盘(进行安装的位置)的值的变量。根磁盘由 JumpStart 程序确定,如确定系统根磁盘的方式中所述。

  • all-所有选中的磁盘。

type

使用以下值可指定要在指定磁盘上创建或删除的 fdisk 分区的类型:

  • solaris-Solaris fdisk 分区(SUNIXOS fdisk 类型)。

  • dosprimary-主 DOS fdisk 分区的别名,不适用于为数据 DOS 扩展或保留的 fdisk 分区。通过将 size 的值指定为 delete 来删除 fdisk 分区时,dosprimary 是 DOSHUGE、DOSOS12 和 DOSOS16 fdisk 类型的别名。创建 fdisk 分区时,dosprimary 是 DOSHUGE fdisk 分区的别名。

  • DDD-整数 fdisk 分区。DDD 是 1 和 255(含 1 和 255)之间的一个整数。


    注 –

    仅当 sizedelete 时,您才可以指定此值。


  • 0xHH – 十六进制 fdisk 分区。HH 是 01 到 FF 之间的十六进制数。


    注 –

    仅当 sizedelete 时,您才可以指定此值。


下表显示了用于某些 fdisk 类型的整数和十六进制数。

fdisk 类型

DDD

HH

DOSOS12 

1

01

PCIXOS 

2

02

DOSOS16 

4

04

EXTDOS 

5

05

DOSHUGE 

6

06

DOSDATA 

86

56

OTHEROS 

98

62

UNIXOS 

99

63

size

请使用以下值之一:

  • DDD-在指定磁盘上创建大小为 DDDfdisk 分区,以 MB 为单位。DDD 必须是一个整数,JumpStart 程序自动将其向上舍入为最接近的柱面界限。指定 0 与指定 delete 的效果是相同的。

  • all – 在整个磁盘上创建 fdisk 分区,所有的现有 fdisk 分区都将被删除。


    仅适用于 x86 –

    仅当 typesolaris 时,您才可以指定 all 值。


  • maxfree-在指定磁盘上的最大连续可用空间中创建 fdisk 分区。如果磁盘上已存在指定 typefdisk 分区,则使用现有的 fdisk 分区,而不是在磁盘上创建新的 fdisk 分区。


    仅适用于 x86 –

    磁盘必须包含至少一个未使用的 fdisk 分区。此外,磁盘必须有空闲空间,否则安装将失败。只有当 typesolarisdosprimary 时,才能指定 maxfree 值。


  • delete-删除指定磁盘上所有指定 typefdisk 分区。

filesys 配置文件关键字(挂载远程文件系统)

filesys server:path server_address mount_pt_name mount_options

通过将 filesys 和所列的值一起使用,JumpStart 程序将已安装的系统设置为在引导系统时自动挂载远程文件系统。您可以多次指定 filesys

server

远程文件系统所在的服务器的名称,后面为一个冒号。

path

远程文件系统的挂载点名称。例如,/usr/export/home

server_address

server:path 中指定的服务器的 IP 地址。如果网络上未运行命名服务,那么可以使用 server_address 值来填充带有服务器的主机名和 IP 地址的 /etc/hosts 文件。如果未指定服务器的 IP 地址,那么您必须指定一个减号 (-)。例如,如果网络上已经运行命名服务,那么您不需要指定服务器的 IP 地址。

mount_pt_name

要挂载远程文件系统的挂载点的名称。

mount_options

一个或多个挂载选项,与 mount(1M) 命令的 -o 选项相同。挂载选项被添加到指定的 mount_pt_name/etc/vfstab 项。


注 –

如果需要指定多个挂载选项,这些挂载选项必须用逗号分隔,并且各选项之间不留空格,例如 ro,quota



示例 8–10 filsys 配置文件关键字

filesys sherlock:/export/home/user2 - /home

filesys 配置文件关键字(创建本地文件系统)

filesys slice size file_system optional_parameters

通过将 filesys 和所列的值一起使用,JumpStart 程序在安装期间创建本地文件系统。您可以多次指定 filesys

slice

请使用以下值之一:

any

JumpStart 程序将文件系统放置于任意磁盘。


注 –

size 的值为 existingallfreestart:size,或 ignore 时,不能指定 any 选项。sizeignore 时,不能指定 any


cw txdy szcx dysz

JumpStart 程序放置文件系统的磁盘片,例如 c0t0d0s0c0d0s0

rootdisk.sn

包含系统根磁盘的值的变量,根磁盘由 JumpStart 程序确定,如确定系统根磁盘的方式中所述。sn 后缀表示该磁盘上的特定片。


注 –

根磁盘由 JumpStart 程序确定,根磁盘可确定将要安装 OS 的位置。rules 文件使用探测关键字 "rootdisk",但是此关键字在 rules 文件中的使用方式与在 JumpStart 配置文件中的使用方式不同。在 rules 文件中无法使用探测关键字 "rootdisk" 来设置安装位置。探测关键字 rootdisk 确定安装时的引导位置。请参见表 8–10


size

请使用以下值之一:

num

将文件系统的大小设置为 num,以 MB 为单位。

existing

使用现有文件系统的当前大小。


注 –

使用 existing 值时,您可以通过将 file_system 指定为不同的 mount_pt_name 来更改现有片的名称。


auto

根据所选软件,自动确定文件系统的大小。

all

指定的 slice 将整个磁盘用于该文件系统。指定 all 值时,系统无法将其他文件系统放置于指定的磁盘上。

free

将磁盘上其余的未用空间用于该文件系统。


注 –

如果将 free 用作 filesys 的值,那么 filesys 项必须是配置文件中的最后一项。


start:size

对文件系统进行明确地分区。start 是片的起始柱面。size 是片的柱面数。

file_system

file_system 值是可选的,并且在 slice 被指定为 any cwtx dysz 的情况下使用。缺省情况下,如果未指定 file_system,那么将设置为 unnamed。如果设置了 unnamed,则不能指定 optional_parameters 值。请使用以下值之一:

mount_pt_name

文件系统的挂载点名称,例如 /var

swap

将指定的 slice 用作 swap

overlap

将指定的 slice 定义为表示磁盘区域。VTOC 值是 V_BACKUP。缺省情况下,片 2 是重叠片,表示整个磁盘。


注 –

仅当 sizeexistingallstart:size 时,您才可以指定 overlap


unnamed

指定的 slice 被定义为原始片,因此该 slice 没有挂载点名称。缺省情况下,如果未指定 file_system,那么将使用 unnamed

ignore

指定的 slice 不由 JumpStart 程序来使用或识别。您可以使用此选项以指定希望在安装期间忽略的磁盘上的某个文件系统。JumpStart 程序将在同一块磁盘上创建一个新的同名文件系统。仅当指定了 partitioning existing 时,您才可以使用 ignore

optional_parameters

请使用以下值之一:

preserve

保存指定的 slice 上的文件系统。


注 –

只有当 sizeexisting 并且 slicecwtxdysz 时,才可以指定 preserve


mount_options

一个或多个挂载选项,与 mount(1M) 命令的 -o 选项相同。挂载选项被添加到指定的 mount_pt_name/etc/vfstab 项。


注 –

如果需要指定多个挂载选项,这些挂载选项必须用逗号分隔,并且各选项之间不留空格,例如 ro,quota


filesys 配置文件关键字(创建 RAID-1 卷)

filesys mirror[:name]slice [slice] size file_system optional_parameters

通过将 filesys mirror 关键字和所列的值一起使用,JumpStart 程序创建了创建镜像的文件系统所需的 RAID-1 卷和 RAID-0 卷。您可以多次指定 filesys mirror,为不同的文件系统创建 RAID-1 卷(镜像)。


注 –

filesys mirror 关键字仅用于初始安装。


name

此可选关键字允许您命名 RAID-1 卷(镜像)。镜像名称必须以字母 "d" 开头,后接 0 到 127 之间的数字,例如 d100。如果您未指定镜像名称,那么自定义 JumpStart 程序将指定一个镜像名称。有关如何命名镜像的原则,请参见《Solaris 10 5/08 安装指南:规划安装和升级》中的“自定义 JumpStart 和 Solaris Live Upgrade 的 RAID 卷名要求和原则”

slice

此值指定磁盘片,自定义 JumpStart 程序将您要复制的文件系统放置在该磁盘片中。该值必须遵循以下格式:cwtxd ysz,例如 c0t0d0s0c0t0d0s5。自定义 JumpStart 程序将在该片上创建 RAID-0 卷(单片串联),然后创建 RAID-1 卷以镜像该串联。最多可以为两个 RAID-0 卷指定两个片。

size

此值指定文件系统的大小,以 MB 为单位。

file_system

此值指定正在复制的文件系统的大小。自定义 JumpStart 程序使用指定片创建 RAID-1 卷,并在指定文件系统上挂载 RAID-1 卷。除了关键文件系统,如根 (/)、/usr/var,您还可以将 swap 指定为文件系统。

optional_parameters

一个或多个挂载选项,与 mount(1M) 命令的 -o 选项相同。挂载选项被添加到指定的 file_system/etc/vfstab 项。如果需要指定多个挂载选项,这些挂载选项必须用逗号分隔,并且各选项之间不留空格,例如 ro,quota

有关在安装期间创建镜像文件系统的更多信息,请参见《Solaris 10 5/08 安装指南:规划安装和升级》中的第 8  章 “在安装过程中创建 RAID-1 卷(镜像)(概述)”

forced_deployment 配置文件关键字(安装 Solaris Flash 差别归档文件)

forced_deployment

forced_deployment 强制在某个克隆系统(不同于软件所需的系统)上安装 Solaris Flash 差别归档文件。


注意 – 注意 –

如果使用了 forced_deployment,那么将删除所有的新文件,以便使克隆系统达到预期的状态。如果不能确定是否要删除文件,请使用缺省设置来终止安装以保护新文件。


geo 配置文件关键字

geo region

geo 指定升级系统时要在系统上安装或添加的一个或多个区域语言环境。region 指定包含要安装的语言环境的地理区域。下表列出了可为 region 指定的值。

值 

描述 

N_Africa

北非,包括埃及 

C_America

中美洲,包括哥斯达黎加、萨尔瓦多、危地马拉、墨西哥、尼加拉瓜和巴拿马 

N_America

北美洲,包括加拿大和美国 

S_America

南美洲,包括阿根廷、玻利维亚、巴西、智利、哥伦比亚、厄瓜多尔、巴拉圭、秘鲁、乌拉圭和委内瑞拉 

Asia

亚洲,包括日本、韩国、中华人民共和国、台湾地区和泰国 

Ausi

澳洲,包括澳大利亚和新西兰 

C_Europe

中欧,包括奥地利、捷克共和国、德国、匈牙利、波兰、斯洛伐克和瑞士 

E_Europe

东欧,包括阿尔巴尼亚、波斯尼亚、保加利亚、克罗地亚、爱沙尼亚、拉脱维亚、立陶宛、马其顿、罗马尼亚、俄罗斯、塞尔维亚、斯洛文尼亚和土耳其 

N_Europe

北欧,包括丹麦、芬兰、冰岛、挪威和瑞典 

S_Europe

南欧,包括希腊、意大利、葡萄牙和西班牙 

W_Europe

西欧,包括比利时、法国、英国、爱尔兰和荷兰 

M_East

中东,包括以色列 

《国际语言环境指南》中给出了语言环境组成部分的值的完整列表,这些语言环境值构成了以前列出的每个区域语言环境。


注 –

您可以为需要添加到系统中的每种语言环境指定一个 geo 关键字。


install_type 配置文件关键字

install_type initial_upgrade_flash_switch

install_type 定义了是要在系统上清除然后安装新的 Solaris OS、升级系统上的现有 Solaris OS,还是要在系统上安装 Solaris Flash 归档文件。


注 –

您必须在配置文件中指定 install_type,并且 install_type 必须是每个配置文件中的第一个配置文件关键字。


必须为 initial_upgrade_flash_switch 使用下列选项之一:

initial_install

指定执行 Solaris OS 的初始安装

upgrade

指定执行 Solaris OS 的升级

flash_install

指定安装将覆写所有文件的 Solaris Flash 归档文件

flash_update

指定安装仅覆写指定文件的 Solaris Flash 差别归档文件


注 –

某些配置文件关键字只能用于 initial_install 选项。某些配置文件关键字只能用于 upgrade 选项。某些配置文件关键字只能用于 flash_install 选项。


layout_constraint 配置文件关键字

layout_constraint slice constraint minimum_size

layout_constraint 指定了在升级期间,自动布局由于空间问题而需要重新分配空间时,该自动布局对文件系统的约束。

限制 

描述 

该关键字仅与升级选项一起使用。 

需要重新分配磁盘空间时,只可将 layout_constraint 用于升级选项。

如果未指定 layout_constraint 关键字

JumpStart 程序将按照以下方式设置磁盘布局: 

  • 将需要更多升级空间的文件系统标记为可更改的。

  • 将与需要更多空间的文件系统位于同一块磁盘上的文件系统且由 /etc/vfstab 文件挂载的文件系统标记为可更改的。

  • 将剩余的文件系统标记为固定的,因为自动布局不能更改这些文件系统。

如果指定一个或多个 layout_constraint 关键字

JumpStart 程序将按照以下方式设置磁盘布局: 

  • 将需要更多升级空间的文件系统标记为可更改的。

  • 使用指定的约束标记为其指定了 layout_constraint 关键字的文件系统。

  • 将其余的文件系统标记为固定的。

如果未将文件系统标记为可更改的 

您不能更改需要更多升级空间的文件系统上的约束,因为这些文件系统一定会被标记为可更改的。您可以使用 layout_constraint 关键字更改需要更多升级空间的文件系统上的 minimum_size 值。

如果文件系统需要更多升级空间 

为帮助自动布局重新分配空间,请将更多文件选择为可更改的或可移动的,尤其是那些与需要更多升级空间的文件系统位于同一块磁盘上的文件系统。 

slice

指定在其上指定约束的文件系统的磁盘片。您必须使用以下格式指定系统的磁盘片:cwtxdyszcxdysz

constraint

请为指定的文件系统使用以下约束之一:

changeable

自动布局可将文件系统移动到另一个位置,并且可以更改该文件系统的大小。只能在由 /etc/vfstab 文件挂载的文件系统上指定 changeable 约束。可以通过指定 minimum_size 值来更改文件系统的大小。

将一个文件系统标记为可更改的,并且未指定 minimum_size 时,文件系统的最小值将被设置为比所需的最小值大 10%。例如,如果文件系统的最小值是 100 MB,那么更改后的大小则是 110 MB。如果指定了 minimum_size,那么会将剩余的所有空闲空间(原始大小减去最小大小)用于其他文件系统。

movable

自动布局可以将该文件系统移动到同一块磁盘或其他磁盘上的另一个片中。文件系统的大小保持不变。

available

自动布局可以使用文件系统上的所有空间来重新分配空间。文件系统中的所有数据都将丢失。available 约束只能在不是通过 /etc/vfstab 文件挂载的文件系统上指定。

collapse

自动布局将指定的文件系统移动和折叠到父文件系统中。作为升级的一部分,您可以使用 collapse 选项来减少系统上的文件系统数。例如,如果系统上有 /usr/usr/share 两个文件系统,那么折叠 /usr/share 文件系统可以将其移动到父文件系统 /usr 中。您只能在由 /etc/vfstab 文件挂载的文件系统上指定 collapse 约束。

minimum_size

指定自动布局重新分配空间后,文件系统的大小。minimum_size 选项允许您更改文件系统的大小。如果将未分配的空间添加到文件系统中,那么文件系统的大小可能会更大。但是,该大小永远不会小于您指定的值。minimum_size 值是可选的。仅当已将文件系统标记为“可更改的”时才能使用该值,而且最小值不能小于文件系统用于现有文件系统内容所需的大小。


示例 8–11 layout_constraint 配置文件关键字

layout_constraint c0t3d0s1 changeable 200

layout_constraint c0t3d0s4 movable

layout_constraint c0t3d1s3 available

layout_constraint c0t2d0s1 collapse

local_customization 配置文件关键字(安装 Solaris Flash 归档文件)

local_customization local_directory

在克隆系统上安装 Solaris Flash 归档文件之前,可以创建自定义脚本以保留克隆系统上的本地配置。local_customization 关键字指定了存储这些脚本的目录。local_directory 是克隆系统上指向脚本的路径。

有关 predeployment 脚本和 postdeployment 脚本的信息,请参见《Solaris 10 5/08 安装指南:Solaris Flash 归档文件(创建和安装)》中的“创建自定义脚本”

locale 配置文件关键字

locale locale_name

注 –

locale 既可以与初始安装选项一起使用,也可以与升级选项一起使用。


locale 指定了在升级时针对指定的 locale_name 安装或添加的语言环境软件包。locale_name 值与那些用于 $LANG 环境变量的值相同。《国际语言环境指南》中包含有效语言环境值的列表。

当使用 locale 关键字时,请考虑以下情况:

metadb 配置文件关键字(创建状态数据库副本)

metadb slice [size size-in-blocks] [count number-of-replicas]

metadb 关键字允许您在自定义 JumpStart 安装期间创建 Solaris 卷管理器状态数据库副本 (mediates)。您可以在配置文件中多次使用 metadb 关键字,以在不同的磁盘片上创建状态数据库副本。

slice

您必须指定希望自定义 JumpStart 程序在其上放置状态数据库副本的磁盘片。slice 的值必须遵循以下格式 cwtxdysz

size size-in-blocks

size 可选关键字允许您指定要创建的状态数据库副本的大小,以块为单位。如果未指定 size 值,自定义 JumpStart 程序将使用缺省大小 8192 块作为状态数据库副本的大小。

count number-of-replicas

您可以指定要创建的状态数据库副本的数量,方法是在配置文件中设置可选的 count 关键字值。缺省情况下,如果未指定 count 值,那么自定义 JumpStart 程序将创建三个状态数据库副本。

有关在安装期间创建 Solaris 卷管理器状态数据库副本的更多信息,请参见《Solaris 10 5/08 安装指南:规划安装和升级》中的“状态数据库副本原则和要求”

no_content_check 配置文件关键字(安装 Solaris Flash 归档文件)

no_content_check

使用 Solaris Flash 差别归档文件安装克隆系统时,您可以使用 no_content_check 关键字以忽略逐个文件验证的过程。逐个文件验证的过程可以确保克隆系统是主系统的副本。除非能够确定克隆系统是原始主系统的副本,否则请避免使用该关键字。


注意 – 注意 –

如果使用了 no_content_check,那么所有的新文件都将被删除,以便使克隆系统达到期望的状态。如果不能确定是否要删除文件,请使用缺省设置来终止安装以保护新文件。


有关安装 Solaris Flash 差别归档文件的信息,请参见准备使用自定义 JumpStart 安装来安装 Solaris Flash 归档文件

no_master_check 配置文件关键字(安装 Solaris Flash 归档文件)

no_master_check

使用 Solaris Flash 差别归档文件安装克隆系统时,可以使用 no_master_check 关键字来忽略旨在确定克隆系统是从原始主系统生成的检查过程。除非能够确定克隆系统是原始主系统的副本,否则请避免使用该关键字。

有关安装 Solaris Flash 差别归档文件的信息,请参见准备使用自定义 JumpStart 安装来安装 Solaris Flash 归档文件

num_clients 配置文件关键字

num_clients client_num

安装服务器时,会为每个无盘客户机的根 (/) 和 swap 文件系统分配空间。num_clients 定义了服务器支持的无盘客户机的数目 client_num。如果未在配置文件中指定 num_clients,则缺省情况下,将分配五个无盘客户机。


注 –

只有当 system_type 被指定为 server 时,才可以使用 num_clients


package 配置文件关键字

package package_name [add [retrieval_type location]| delete]

package 既可以与初始安装选项一起使用,也可以与升级选项一起使用。使用 package 关键字可执行下列操作:

package_name

SUNWname 格式指定软件包名称。要查看有关已安装的系统上的软件包及其名称的详细信息,请使用 pkginfo -l 命令。

add | delete

指定要添加还是删除指定软件包。如果不指定 adddelete,则在缺省情况下使用 add


注 –

通过将另一软件包项添加到配置文件并省略位置,可添加多个软件包。如果将位置留空,则所有后续软件包都使用前一个软件包的位置。


[retrieval_type location]

指定从正在安装的 Solaris 分发之外的其他位置添加一个或多个软件包。retrieval_typelocation 的值取决于软件包存储的位置。以下各节介绍了可用于 retrieval_typelocation 的值,以及如何使用 package_name 关键字的示例。

NFS 服务器上存储的软件包

如果软件包存储在 NFS 服务器上,请为 package 关键字使用下列语法之一。


package package_name add nfs server_name:/path [retry n]
package package_name add nfs://server_name:/path [retry n]
package_name

SUNWname 格式指定软件包名称。要查看有关已安装的系统上的软件包及其名称的详细信息,请使用 pkginfo -l 命令。

server_name

指定存储软件包的服务器的名称。

path

指定所指定的服务器上的软件包目录的位置。如果路径包含 $HOST,则 $HOST 由正在安装的主机系统名称替换。

retry n

是可选关键字。n 是安装过程尝试挂载目录的最大次数。


示例 8–12 使用 NFS 添加软件包

在本示例中,package 配置文件关键字将添加 NFS 位置 nfs://golden/packages/Solaris_10/ 的 SUNWnew 软件包。如果挂载失败,将尝试进行五次 NFS 挂载。

package SUNWnew add nfs golden:/packages/Solaris_10 retry 5

HTTP 服务器上存储的软件包

如果软件包存储在 HTTP 服务器上,请为 package 关键字使用下列语法之一。


package package_name add http://server_name[:port] path optional_keywords
package package_name add http server_name[:port] path optional_keywords
package_name

SUNWname 格式指定软件包名称。要查看有关已安装的系统上的软件包及其名称的详细信息,请使用 pkginfo -l 命令。

server_name

指定存储软件包的服务器的名称。

port

指定可选端口。port 可以是一个端口号,也可以是在运行时确定其端口号的 TCP 服务的名称。

如果不指定端口,将使用缺省的 HTTP 端口号 80。

path

指定要从指定服务器检索的软件包的位置。使用 HTTP 服务器时,软件包必须为软件包数据流格式。

optional_keywords

指定从 HTTP 服务器检索软件包时使用的可选关键字。

表 8–6 与 HTTP 一起使用的可选 package 关键字

关键字 

值定义 

timeout min

使用 timeout 关键字,可以以分钟为单位,指定在无法接收到来自 HTTP 服务器的数据的情形下允许等待的最大时间长度。如果发生超时,则连接将被关闭、重新打开并恢复。如果指定 timeout 值为 0(零),则不重新打开连接。

如果重新连接发生超时,那么将从软件包开头重试该软件包,并且将放弃在超时前检索到的数据。 

proxy host:port

proxy 关键字允许您指定代理主机和代理端口。您可以使用代理主机从防火墙的另一侧检索 Solaris 软件包。指定 proxy 关键字时必须提供一个代理端口。


示例 8–13 使用 HTTP 添加软件包

在本示例中,package 配置文件关键字将添加 HTTP 位置 http://package.central/Solaris_10Solaris 10 目录中列出的所有软件包。如果五分钟后未检索到数据,将重新检索软件包数据。前一个软件包数据被放弃。可使用以下任一格式。

package SUNWnew add http package.central/Solaris_10 timeout 5 
package SUNWnew add http://package.central/Solaris_10 timeout 5 


示例 8–14 通过将 HTTP 与代理端口一起使用添加软件包

在本示例中,package 配置文件关键字将添加 HTTP 位置 http://package.central/Solaris_10Solaris_10 目录中列出的所有软件包。通过使用 proxy 关键字,跨防火墙检索软件包。

package SUNWnew add http://package.central/Solaris_10 proxy webcache.east:8080

本地设备上存储的软件包

如果在面向文件系统的随机访问设备(例如,软盘或 DVD-ROM)上存储软件包,则可以从本地设备检索 Solaris 软件包。请按照以下语法使用 package 关键字。

package package_name add local_device device path file_system_type
package_name

SUNWname 格式指定软件包名称。要查看有关已安装的系统上的软件包及其名称的详细信息,请使用 pkginfo -l 命令。

device

指定 Solaris 软件包驻留的驱动器的名称。如果设备名称使用了规则路径,那么将直接挂载该设备。如果设备名称未使用规则路径,那么安装实用程序会将 /dev/dsk/ 添加到其路径中。

path

指定 Solaris 软件包的路径(相对于指定的设备上的根 (/) 文件系统)。

file_system_type

指定设备上文件系统的类型。如果未提供文件系统类型,那么安装实用程序将尝试挂载 UFS 文件系统。如果 UFS 挂载失败,那么安装实用程序将尝试挂载 HSFS 文件系统。


示例 8–15 通过将本地设备与 UFS 文件系统一起使用来添加软件包

在本示例中,package 配置文件关键字将添加本地设备 c0t6d0s0 的 /Solaris_10/Product 目录中的 SUNWnew 软件包。这是 UFS 文件系统。

package SUNWnew add local_device c0t6d0s0 /Solaris_10/Product ufs


示例 8–16 使用本地设备从 HSFS 文件系统添加软件包

在本示例中,package 配置文件关键字将添加本地设备 c0t6d0s0 的 /Solaris_10/Product 目录中的 SUNWnew 软件包。这是 HSFS 文件系统。

package SUNWnew add local_device c0t6d0s0 /Solaris_10/Product  hsfs

本地文件上存储的软件包

可从用于引导系统的 miniroot 安装软件包。执行自定义 JumpStart 安装时,从 DVD、CD 或基于 NFS 的 miniroot 引导系统。安装软件从该 miniroot 装入和运行。因而,存储在 DVD、CD 或基于 NFS 的 miniroot 中的软件包可作为本地文件进行访问。请按照以下语法使用 package 关键字。


package package_name add local_file path 
package_name

SUNWname 格式指定软件包名称。要查看有关已安装的系统上的软件包及其名称的详细信息,请使用 pkginfo -l 命令。

path

指定软件包的位置。从 Solaris Software - 1 CD 或者从 Solaris Operating System DVD 引导系统时,路径必须可由该系统作为本地文件访问。从 Solaris Software - 1 CD 或者从 Solaris Operating System DVD 引导系统时,系统不能访问 /net


示例 8–17 使用本地文件添加软件包

在本示例中,package 配置文件关键字将添加 /Solaris_10/Product 目录中的 SUNWnew 软件包。

package SUNWnew add local_file /Solaris_10/Product

使用 package 关键字时的限制

使用 package 关键字时,请注意下列限制:

使用 package 关键字时的升级行为

package 用于升级时,JumpStart 程序将执行以下操作:

partitioning 配置文件关键字

partitioning type

partitioning 定义如何在安装过程中将磁盘拆分为片以用于文件系统。

如果未在配置文件中指定 partitioning,则缺省情况下,将使用 default 类型的分区。

type

请使用以下值之一:

default

JumpStart 程序选择磁盘并创建要安装指定软件的文件系统(由 filesys 关键字指定的文件系统除外)。首先选择 rootdisk。如果指定的软件不适合 rootdisk,那么 JumpStart 程序将使用其他磁盘。

existing

JumpStart 使用系统磁盘上的现有文件系统。保留除 //usr/usr/openwin /opt/var 以外的所有文件系统。JumpStart 程序使用文件系统超级块中的上一个挂载点字段来确定片所代表的文件系统挂载点。


注 –

同时使用 filesyspartitioning existing 配置文件关键字时,您必须将大小 size 设置为 existing


explicit

JumpStart 使用磁盘并创建由 filesys 关键字指定的文件系统。如果只使用 filesys 关键字指定根 (/) 文件系统,那么将在根 (/) 文件系统中安装所有 Solaris 软件。


注 –

如果使用了 explicit 配置文件值,那么您必须使用 filesys 关键字指定要使用的磁盘和要创建的文件系统。


patch 配置文件关键字

patch patch_id_list | patch_file patch_location optional_keywords]
patch_id_list

指定要安装的修补程序 ID 号。该列表应为 Solaris 修补程序 ID 的逗号分隔列表。按列表中指定的顺序安装修补程序。不要在逗号后添加空格,例如:112467-01,112765-02。

patch_file

位于 patch_location 中的包含修补程序列表的文件。修补程序按文件中指定的顺序安装。

patch_location

指定修补程序所在的位置。允许的位置如下:

  • NFS 服务器

  • HTTP 服务器

  • 本地设备

  • 本地文件

optional_keywords

可选关键字与存储修补程序的位置相关。以下部分介绍了可用位置和可选关键字。

NFS 服务器上存储的修补程序

如果修补程序存储在 NFS 服务器上,请为 patch 关键字使用下列语法之一。


patch patch_id_list | patch_file nfs server_name:/patch_directory [retry n]
patch patch_id_list | patch_file nfs://server_name/patch_director  [retry n]
patch_id_list

指定要安装的修补程序 ID 号。该列表应为 Solaris 修补程序 ID 的逗号分隔列表。按列表中指定的顺序安装修补程序。

patch_file

位于 patch_location 中的包含修补程序列表的文件。修补程序按文件中指定的顺序安装。

server_name

指定存储修补程序的服务器的名称。

patch_directory

指定所指定的服务器上的修补程序目录的位置。修补程序必须为单独的修补程序格式。

retry n

是可选关键字。n 是安装实用程序尝试挂载目录的最大次数。


示例 8–18 使用 NFS 从有序列表添加修补程序

在本示例中,patch 配置文件关键字将添加 NFS 修补程序目录 nfs://patch_master/Solaris/v10/patchespatch 文件中列出的所有修补程序。按 patch 中列出的顺序安装修补程序。如果挂载失败,将尝试进行五次 NFS 挂载。

patch patch_file nfs://patch_master/Solaris/v10/patches retry 5


示例 8–19 使用 NFS 添加修补程序

在本示例中,patch 配置文件关键字将添加 patch_master 服务器上的修补程序目录 /Solaris/v10/patches 中的修补程序 112467–01 和 112765–02。

patch 112467-01,112765-02 nfs patch_master:/Solaris/v10/patches

HTTP 服务器上存储的修补程序

如果修补程序存储在 HTTP 服务器上,请为 patch 关键字使用下列语法之一。


patch  patch_id_list | patch_file http://server_name [:port] patch_directory optional_http_keywords

patch  patch_id_list | patch_file http server_name [:port] patch_directory optional_http_keywords
patch_id_list

指定要安装的修补程序 ID 号。该列表应为 Solaris 修补程序 ID 的逗号分隔列表。按列表中指定的顺序安装修补程序。不要在逗号后添加空格,例如:112467-01,112765-02。

patch_file

位于 patch_location 中的包含修补程序列表的文件。修补程序按文件中指定的顺序安装。

server_name

指定存储修补程序的服务器的名称。

port

指定可选端口。port 可以是一个端口号,也可以是在运行时确定其端口号的 TCP 服务的名称。

如果不指定端口,将使用缺省的 HTTP 端口号 80。

patch_directory

指定要从指定服务器检索的修补程序目录的位置。在使用 HTTP 服务器时,修补程序必须为 JAR 格式。

optional_keywords

指定从 HTTP 服务器检索修补程序时使用的可选关键字。

表 8–7 与 HTTP 一起使用的可选 patch 关键字

关键字 

值定义 

timeout min

使用 timeout 关键字,可以以分钟为单位,指定在无法接收到来自 HTTP 服务器的数据的情形下允许等待的最大时间长度。如果发生超时,则连接将被关闭、重新打开并恢复。如果指定 timeout 值为 0(零),则不重新打开连接。

如果重新连接发生超时,那么将从软件包开头重试该软件包,并且将放弃在超时前检索到的数据。 

proxy host:port

proxy 关键字允许您指定代理主机和代理端口。您可以使用代理主机从防火墙的另一侧检索 Solaris 软件包。指定 proxy 关键字时必须提供一个代理端口。


示例 8–20 使用 HTTP 从有序列表添加修补程序

在本示例中,patch 配置文件关键字添加 HTTP 位置 http://patch.central/Solaris/v10/patchespatch_file 文件中列出的所有修补程序。按照 patch 文件中指定的顺序安装修补程序。如果五分钟后未检索到任何数据,那么将重新检索修补程序数据,并且将放弃此前的修补程序数据。

patch patch_file http://patch.central/Solaris/v10/patches timeout 5


示例 8–21 使用 HTTP 添加修补程序

在本示例中,patch 配置文件关键字项将添加修补程序位置 http://patch_master/Solaris/v10/patches 中的修补程序 112467–01 和 112765–02。

patch 112467-01,112765-02 http://patch.central/Solaris/v10/patches

本地设备上存储的修补程序

如果在面向文件系统的随机访问设备(例如,软盘或 DVD-ROM)上存储软件包,则可以从本地设备检索 Solaris 软件包。请按照以下语法使用 patch 关键字。


patch patch_id_list | patch_file local_device \
device path file_system_type
patch_id_list

指定要安装的修补程序 ID 号。该列表应为 Solaris 修补程序 ID 的逗号分隔列表。按列表中指定的顺序安装修补程序。不要在逗号后添加空格,例如:112467-01,112765-02。

patch_file

位于 patch_location 中的包含修补程序列表的文件。修补程序按文件中指定的顺序安装。

device

指定 Solaris 软件包驻留的驱动器的名称。如果设备名称使用了规则路径,那么将直接挂载该设备。如果设备名称未使用规则路径,那么安装实用程序会将 /dev/dsk/ 添加到其路径中。

path

指定 Solaris 修补程序的路径(相对于指定的设备上的根 (/) 文件系统)。

file_system_type

指定设备上文件系统的类型。如果未提供文件系统类型,那么安装实用程序将尝试挂载 UFS 文件系统。如果 UFS 挂载失败,那么安装实用程序将尝试挂载 HSFS 文件系统。


示例 8–22 通过使用本地设备按有序列表添加修补程序

在本示例中,patch 配置文件关键字将添加本地设备 c0t6d0s0 的 /Solaris_10/patches 目录中 patch_file 文件列出的所有修补程序。patch 文件确定要安装的修补程序的顺序。

patch patch_file c0t6d0s0 /Solaris_10/patches


示例 8–23 使用本地设备添加修补程序

在本示例中,patch 配置文件关键字将添加本地设备 c0t6d0s0 中的修补程序目录 /Solaris_10/patches 中的修补程序 112467–01 和 112765–02。

patch 112467-01,112765-02 local_device c0t6d0s0 /Solaris_10/patches

本地文件上存储的修补程序

可从用于引导系统的 miniroot 安装修补程序。执行自定义 JumpStart 安装时,从 DVD、CD 或基于 NFS 的 miniroot 引导系统。安装软件从该 miniroot 装入和运行。因而,可将存储在 DVD、CD 或基于 NFS 的 miniroot 中的修补程序作为本地文件进行访问。请按照以下语法使用 patch 关键字。

patch patch_id_list | patch_file local_file patch _directory 
patch_id_list

指定要安装的修补程序 ID 号。该列表应为 Solaris 修补程序 ID 的逗号分隔列表。按列表中指定的顺序安装修补程序。不要在逗号后添加空格,例如:112467-01,112765-02。

patch_file

位于 patch_location 中的包含修补程序列表的文件。修补程序按文件中指定的顺序安装。

patch_directory

指定修补程序目录的位置。从 Solaris Software - 1 CD 或者从 Solaris Operating System DVD 引导系统时,修补程序目录必须可由该系统作为本地文件访问。从 Solaris Software - 1 CD 或者从 Solaris Operating System DVD 引导系统时,系统不能访问 /net


示例 8–24 通过使用本地文件按有序列表添加修补程序

在本示例中,patch 配置文件关键字将添加 /Solaris_10/patches 目录中 patch_file 文件列出的所有修补程序。patch 文件确定要安装的修补程序的顺序。

patch patch_cal_file /Solaris_10/patches


示例 8–25 使用本地文件添加修补程序

在本示例中,patch 配置文件关键字将添加修补程序目录 /Solaris_10/patches 中的修补程序 112467–01 和 112765–02。

patch 112467-01,112765-02 local_file /Solaris_10/patches

使用 patch 关键字的限制

使用 patch 关键字时,请注意下列限制:

root_device 配置文件关键字

root_device slice

root_device 指定系统的根磁盘。确定系统根磁盘的方式中提供了其他信息。


注 –

根磁盘由 JumpStart 程序确定,根磁盘可确定将要安装 OS 的位置。rules 文件使用探测关键字 "rootdisk",但是此关键字在 rules 文件中的使用方式与在 JumpStart 配置文件中的使用方式不同。在 rules 文件中无法使用探测关键字 "rootdisk" 来设置安装位置。探测关键字 rootdisk 确定安装时的引导位置。请参见表 8–10


升级系统时,root_device 指定了要升级的根 (/) 文件系统和由其 /etc/vfstab 文件挂载的文件系统。如果系统上有多个根 (/) 文件系统可以升级,那么必须指定 root_device。您必须使用以下格式指定 slicecwtxdyszcxdysz

使用 root_device 关键字时,请考虑以下情况:


示例 8–26 root_device 配置文件关键字

root_device c0t0d0s2

确定系统根磁盘的方式

系统的根磁盘是系统上包含根 (/) 文件系统的磁盘。在配置文件中,可以使用 rootdisk 变量来代替磁盘名, JumpStart 程序会将其设置为系统的根磁盘。表 8–8 说明 JumpStart 程序如何确定用于安装的系统根磁盘。


注 –

JumpStart 程序只在初始安装期间确定系统根磁盘的大小。您不能在升级期间更改系统根磁盘的大小。


表 8–8 JumpStart 确定系统根磁盘的方式(初始安装)

阶段 

操作 

如果在配置文件中指定了 root_device 关键字,那么 JumpStart 程序会将 rootdisk 设置为根设备。

如果没有设置 rootdisk,并且在配置文件中指定了 boot_device 关键字,那么 JumpStart 程序会将 rootdisk 设置为根设备。

如果没有设置 rootdisk,而且在配置文件中指定了 filesys c wtxd ysz size / 项,那么 JumpStart 程序会将 rootdisk 设置为该项中指定的磁盘。

如果没有设置 rootdisk,而且在配置文件中指定了 rootdisk.s n 项,那么 JumpStart 程序会按照内核探测顺序,在系统磁盘的指定片上搜索现有根文件系统。如果找到了一个磁盘,那么 JumpStart 程序会将 rootdisk 设置为找到的磁盘。

如果没有设置 rootdisk 并且在配置文件中指定了 partitioning existing,则 JumpStart 程序按内核探测顺序,在系统磁盘上搜索现有的根文件系统。如果找不到根文件系统或找到多个根文件系统,那么将发生错误。如果找到一个根文件系统,那么 JumpStart 程序会将 rootdisk 设置为找到的磁盘。

如果没有设置 rootdisk,那么 JumpStart 程序会将 rootdisk 设置为安装根 (/) 文件系统的磁盘。

system_type 配置文件关键字

system_type type_switch

system_type 定义要安装 Solaris OS 的系统的类型。

type_switch 代表选项 standaloneserver,它用于指示要安装 Solaris 软件的系统类型。如果没有在配置文件中指定 system_type,则在缺省情况下,使用 standalone

usedisk 配置文件关键字

usedisk disk_name ...

缺省情况下,如果指定了 partitioning default,那么 JumpStart 程序将使用系统上所有可操作的磁盘。usedisk 配置文件关键字指定了希望 JumpStart 程序使用的一个或多个磁盘。必须以 cxt ydzc ydz 格式指定 disk_name,例如 c0t0d0c0d0s0

如果在配置文件中指定 usedisk,则 JumpStart 程序仅使用在 usedisk 关键字后指定的磁盘。


注 –

您不能在同一配置文件中同时指定 dontuse 关键字和 usedisk 关键字。


自定义 JumpStart 环境变量

您可以在开始脚本和结束脚本中使用环境变量。例如,您可以使用开始脚本提取磁盘大小 SI_DISKSIZES ,然后根据该脚本提取的实际磁盘大小在系统上安装或不安装特定的软件包。

所收集的关于系统的信息存储在这些环境变量中,通常根据在 rules 文件中使用的规则关键字和值来确定是否设置这些变量。

例如,关于系统上已经安装哪个操作系统的信息只有在使用了 installed 关键字之后,才能在 SI_INSTALLED 中获得。

表 8–9 对这些变量及其值进行了说明。

表 8–9 安装环境变量

环境变量 

值 

SI_ARCH

安装客户机的硬件体系结构。当在 rules 文件中使用了 arch 关键字时,将设置 SI_ARCH 变量。

SI_BEGIN

开始脚本的名称(如果使用了开始脚本)。 

SI_CLASS

用于安装“安装客户机”的配置文件的名称。 

SI_DISKLIST

安装客户机上以逗号分隔的磁盘名称列表。当在 rules 文件中使用并匹配了 disksize 关键字时,将设置 SI_DISKLIST 变量。SI_DISKLISTSI_NUMDISKS 变量用于确定 rootdisk 所使用的物理磁盘。确定系统根磁盘的方式中介绍了 rootdisk

SI_DISKSIZES

安装客户机上以逗号分隔的磁盘大小列表。当在 rules 文件中使用并匹配了 disksize 关键字时,将设置 SI_DISKSIZES 变量。

SI_DOMAINNAME

域名。当在 rules 文件中使用并匹配了 dommainname 关键字时,将设置 SI_DOMAINNAME 变量。

SI_FINISH

结束脚本的名称(如果使用了结束脚本)。 

SI_HOSTADDRESS

安装客户机的 IP 地址。 

SI_HOSTNAME

安装客户机的主机名。当在 rules 文件中使用并匹配了 hostname 关键字时,将设置 SI_HOSTNAME 变量。

SI_INSTALLED

具有特定的操作系统(例如 Solaris、SunOS 或 System V)的磁盘的设备名称。当在 rules 文件中使用并匹配了 installed 关键字时,将设置 SI_INSTALLED 变量。SI_INST_OSSI_INST_VER 用于确定 SI_INSTALLED 的值。

SI_INST_OS

操作系统的名称。SI_INST_OSSI_INST_VER 用于确定 SI_INSTALLED 的值。

SI_INST_VER

操作系统的版本。SI_INST_OSSI_INST_VER 用于确定 SI_INSTALLED 的值。

SI_KARCH

安装客户机的内核体系结构。当在 rules 文件中使用并匹配了 karch 关键字时,将设置 SI_KARCH 变量。

SI_MEMSIZE

安装客户机上的物理内存数量。当在 rules 文件中使用并匹配了 memsize 关键字时,将设置 SI_MEMSIZE 变量。

SI_MODEL

安装客户机的模型名。当在 rules 文件中使用并匹配了 model 关键字时,将设置 SI_MODEL 变量。

SI_NETWORK

安装客户机的网络号。当在 rules 文件中使用并匹配了 network 关键字时,将设置 SI_NETWORK 变量。

SI_NUMDISKS

安装客户机上的磁盘数目。当在 rules 文件中使用并匹配了 disksize 关键字时,将设置 SI_NUMDISKS 变量。SI_NUMDISKSSI_DISKLIST 变量用于确定 rootdisk 所使用的物理磁盘。确定系统根磁盘的方式中介绍了 rootdisk

SI_OSNAME

Solaris 软件映像上的操作系统发行版。例如,如果您是在基于 Solaris Operating System DVD 或 Solaris Software - 1 CD 映像上的操作系统版本的系统上安装 Solaris 软件,那么可以在脚本中使用 SI_OSNAME 变量。

SI_ROOTDISK

由逻辑名称 rootdisk 代表的磁盘的设备名。当在 rules 文件中将 disksizeinstalled 关键字设置为 rootdisk 时,将设置 SI_ROOTDISK 变量。SI_ROOTDISK 变量设置安装时从其进行引导的设备。


注 –

在 rules 文件中无法使用探测关键字 "rootdisk" 来设置安装位置。有关在 JumpStart 配置文件中设置的 "rootdisk" 变量的信息,请参见确定系统根磁盘的方式


SI_ROOTDISKSIZE

由逻辑名称 rootdisk 代表的磁盘的大小。当在 rules 文件中将 disksizeinstalled 关键字设置为 rootdisk 时,将设置 SI_ROOTDISKSIZE 变量。

SI_TOTALDISK

安装客户机上的磁盘空间总量。当在 rules 文件中使用并匹配了 totaldisk 关键字时,将设置 SI_TOTALDISK 变量。

探测关键字和值

表 8–10 说明了每个规则关键字及其等效的探测关键字。


注 –

总是将探测关键字放置在 rules 文件的开头或开头附近。


表 8–10 探测关键字的描述

规则关键字 

等效的探测关键字 

探测关键字的描述 

any

无 

 

arch

arch

确定内核体系结构(i386 或 SPARC)并设置 SI_ARCH

disksize

disks

以 MB 为单位、按内核探测顺序 c0t3d0s0、c0t3d0s1、c0t4d0s0 返回系统磁盘的大小。disksize 设置 SI_DISKLISTSI_DISKSIZESSI_NUMDISKSSI_TOTALDISK

domainname

domainname

返回系统的 NIS/NIS+ 域名或空白,并设置 SI_DOMAINNAMEdomainname 关键字返回 domainname(1M) 的输出。

hostaddress

hostaddress

返回系统的 IP 地址,即 ifconfig(1M) -a 的输出中列出的第一个不是 lo0 的地址,并且设置 SI_HOSTADDRESS

hostname

hostname

返回系统的主机名(它是 uname(1) -n 的输出)并设置 SI_HOSTNAME

installed

installed

返回在系统上安装的 Solaris OS 的版本名称,并设置 SI_ROOTDISKSI_INSTALLED

如果 JumpStart 程序找到一个 Solaris 发行版但无法确定版本,则返回的版本为 SystemV

karch

karch

返回系统的平台组(例如 i86pc、sun4m 和 sun4),并设置 SI_KARCH。有关平台名称的列表,请参见 http://docs.sun.com 上的 Solaris Sun 硬件平台指南

memsize

memsize

返回系统上的物理内存的大小(以 MB 为单位),并设置 SI_MEMSIZE

model

model

返回系统的平台名称并设置 SI_MODEL。有关平台名称的列表,请参见 http://docs.sun.com 上的 Solaris Sun 硬件平台指南

network

network

返回系统的网络号,它由 JumpStart 程序通过在系统的 IP 地址和子网掩码之间执行逻辑“与”来确定。系统的 IP 地址和子网掩码是从 ifconfig(1M) -a 的输出中列出的第一个不是 lo0 的地址中提取的。network 关键字设置 SI_NETWORK

osname

osname

返回在 CD 或 CD 组上找到的 Solaris OS 的版本和操作系统名称,并设置 SI_OSNAME

如果 JumpStart 程序找到一个 Solaris 发行版但无法确定版本,则返回的版本为 SystemV

  

rootdisk

返回系统根磁盘的名称和大小(以 MB 为单位),并设置 SI_ROOTDISK

totaldisk

totaldisk

返回系统上的总磁盘空间(以 MB 为单位),并设置 SI_TOTALDISK。总磁盘空间包括连接到系统上的所有可操作磁盘。