跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 11 安装手册页 Oracle Solaris 11 Information Library (简体中文) |
- 转换 JumpStart 规则和配置文件以用于自动化安装程序 (Automated Installer, AI)。
js2ai [-h | --version]
js2ai -r | -p profile_name [-d jumpstart_dir] [-D destination_dir] [-lSv]
js2ai -s [-d jumpstart_dir] [-D destination_dir] [-Sv]
js2ai -V manifest
js2ai 是一个实用程序,用于将 Oracle Solaris 10 JumpStart rules、配置文件和 syscfg 配置文件转换为与自动化安装程序 (Automated Installer, AI) 兼容的格式。此实用程序“尽力”将那些可以转换的 JumpStart 关键字转换为 AI 上下文。尽管此转换过程并不为 JumpStart 创建完整的一对一对等项,但是它确实可以提供可用作模板的 AI 清单和系统配置文件条目,之后可借助此模板根据从 JumpStart 配置文件收集的信息创建完整的 AI 配置设置。
使用 js2ai 可以实现以下目的:
处理当前工作目录中的 rules 文件和关联的配置文件。
处理指定目录中的 rules 文件和关联的配置文件。
处理特定的配置文件或 sysidcfg 文件。
将生成的输出文件定向到特定的目录。有关 js2ai 输出文件的更多信息,请参见“示例”和“文件”部分。
表 1 JumpStart 规则关键字转换
|
不受 js2ai 支持的 JumpStart 规则关键字:
any installed disksize osname domainname probe hostname totaldisk
表 2 JumpStart 配置文件关键字
|
不受 js2ai 支持的 JumpStart 配置文件关键字:
archive_location geo backup_media layout_constraint bootenv local_customization client_arch metabd client_root no_master_check client_swap no_content_check cluster num_clients dontuse patch forced_deployment
如何在配置文件转换期间确定系统的根磁盘
由于在配置文件转换期间 js2ai 无法访问配置文件所引用的实际系统,因此 js2ai 将在转换期间使用尽可能与 JumpStart 匹配的进程来尝试确定根磁盘。
js2ai 工具执行以下步骤以确定用于根磁盘的设备。
|
如何在配置文件转换期间转换 any 设备
js2ai 工具执行以下步骤以确定在指定了 any 关键字时要使用的设备。
|
如何在配置文件转换期间确定 ZFS 根池
js2ai 工具执行以下步骤以确定用于 ZFS 根池的设备。在确定 ZFS 根池后,如果遇到的后续定义与已经确定的 ZFS 根池相冲突,则它们将标记为错误。
|
表 3 JumpStart sysidcfg 关键字
|
不受 js2ai 支持的 JumpStart sysidcfg 关键字:
nfs4_domain
js2ai 命令具有以下选项。在“示例”部分中对这些选项的作用进行了说明。
显示用法帮助消息。
显示 js2ai 实用程序的版本号。
指定 rules 以及配置文件或 sysidcfg 文件的位置。
指定输出文件的位置。
在 JumpStart 配置文件中搜索 package 关键字值的映像包管理系统 (Image Packaging System, IPS) 等效项时,会搜索在主机系统上安装的 IPS 软件包而不是 IPS 软件包系统信息库中的软件包。
转换指定的 JumpStart 配置文件并为所处理的配置文件生成清单。在这种情况下,不需要或不生成条件文件。
转换规则和关联的配置文件并为所处理的每个配置文件生成清单。
处理 sysidcfg 文件并将结果输出到 sc_profile.xml。
跳过验证。
提供有关在处理期间发生的操作的详细信息。
验证指定的 AI 清单文件或 SMF 系统配置文件。不支持 AI 条件验证。
在转换期间出现一个或多个错误时,js2ai 工具将生成错误报告。
# js2ai -r Process Unsupported Conversion Validation Name Warnings Errors Items Errors Errors -------- -------- ------- ----------- ---------- ---------- rules 0 0 2 0 - profile1 0 0 0 2 1 Conversion completed. One or more failures occurred. For errors see ./js2ai.log
对于 js2ai 在其中遇到错误的每个文件,该报告中都包含一个条目。要生成错误报告(即使未出现错误),请指定 - v 或 --verbose。
该报告将告知您在哪些文件中出现了哪种类型的错误。定义了以下五种错误类型:警告、处理错误、不支持的项、转换错误和验证错误。
不需要更正这些消息中的项。例如,您可能收到一条警告消息,指出未提供诸如主机名或超级用户口令之类的信息,将使用缺省值。
这些错误表示出现了阻止 js2ai 处理文件或文件中某行的问题。当文件存在语法错误时,通常就会发生处理错误。
这些项是指 js2ai 不支持的行。更改与关键字关联的值可能会消除此错误。
这些错误表示出现了阻止 js2ai 处理行的情况。应该手动更正这些错误,或者从文件中删除有问题的行。
这些错误是指根据 AI 所用的架构定义验证生成的清单时出现的错误。必须先更正这些错误,AI 才能使用清单。
js2ai.log 文件指出了在哪个行上出现了哪个错误。
# cat js2ai.log rules: line 4: unsupported keyword: disksize rules: line 4: unsupported keyword: installed net924_sun4c: line 4: unsupported keyword: cluster net924_sun4c: line 5: unsupported keyword: num_clients net924_sun4c: line 6: unsupported keyword: client_swap net924_sun4c: line 7: unsupported keyword: client_arch upgrade: line 1: unsupported value for 'install_type' specified: upgrade
如果出现清单验证错误,js2ai.log 文件将提供一个指向包含验证错误的日志文件的指针,如以下示例所示:
Validation Errors: profile1: manifest validation of ./AI_profile1/profile1.xml failed. For details see ./AI_profile1/profile_validation.log
规则和配置文件转换的建议策略
不存在 JumpStart 和 AI 之间的一对一转换。以下步骤提供了执行转换的一般过程。
js2ai 实用程序尝试标记它遇到的任何错误,但是 js2ai 假定所转换的规则、配置文件和 sysidcfg 文件是有效的。
将 rules、配置文件和 syscfg 配置文件的 JumpStart 配置目录复制到已安装 install/installadm 软件包的 Oracle Solaris 11 系统。
在步骤 2 中复制到 Oracle Solaris 11 系统的 JumpStart 配置目录中,运行 js2ai 转换工具。
# js2ai -rS
此命令将对 rules 文件和 rules 文件所引用的配置文件执行转换操作。将根据 AI 客户机置备清单 /usr/share/auto_install/manifest/default.xml 处理 rules 文件中引用的每个配置文件。此步骤将为 JumpStart rules 文件中指定的每个配置文件创建一个名为 AI_profile_name 的目录。AI_profile_name 目录包含已转换配置文件的一个或多个 AI 清单,其格式为 profile_name${arch}.xml。有关更多信息,请参见“文件”部分。
-S 选项用于跳过验证序列。验证在步骤 5 中执行。
如果输出了消息“成功完成转换”,请跳到步骤 5。否则,请检查 js2ai.log 文件并按以下步骤操作:
更正任何处理错误。
从 rules 和配置文件中删除作为不支持的项列出的任何行。
检查转换错误并更正错误(如果可能)。否则,请删除导致错误的行。
检查任何警告消息并确保不需要进行更正。
重复步骤 3,直到不再报告处理错误、不支持的项和转换错误。
不使用 -S 选项重新运行 js2ai。
# js2ai -r
如果已处理的任何配置文件出现任何验证错误,则必须手动更正生成的 AI 清单。检查 js2ai.log 文件以了解有关故障的详细信息。有关 AI 清单的信息,请参见 AI 文档。
转换与此 JumpStart 配置关联的任何 sysidcfg 文件。
对于每个 sysidcfg 文件,执行以下命令:
# js2ai -sS -d sysidcfg_dir
对于所处理的每个 sysidcfg 文件,此步骤将在调用 js2ai 命令的目录中创建一个名为 sc_profile.xml 的 AI 系统配置文件。可使用 -D 选项为 sc_profile.xml 文件指定其他目录。
如果输出了消息“成功完成转换”,请跳到步骤 8。否则,请检查 js2ai.log 文件并按以下步骤操作:
更正任何处理错误。
从 sysidcfg 文件中删除作为不支持的项列出的任何行。
检查转换错误并更正错误(如果可能)。否则,请删除导致错误的行。
检查任何警告消息并确保不需要进行更正。
重复步骤 6,直到不再报告处理错误、不支持的项和转换错误。
不使用 -S 选项重新运行 js2ai。
# js2ai -s -d sysidcfg_dir
如果处理的任何 sysidcfg 文件出现任何验证错误,则必须手动更正生成的 AI 系统配置文件。检查 js2ai.log 文件以了解有关故障的详细信息。有关系统配置文件的信息,请参见 AI 文档。
js2ai 转换过程已完成。对生成的条件、AI 清单和系统配置文件执行手动验证。Oracle Solaris 11 安装的磁盘空间要求与 Oracle Solaris 10 安装的磁盘空间要求不同。请确保在 AI 清单中分配的磁盘空间满足 Oracle Solaris 11 的要求。
配置 AI 以使用新生成的文件。将新生成的条件、AI 清单和系统配置文件添加到现有的 AI 安装服务。
使用带有 create-manifest 子命令的 installadm 命令添加每个 AI 清单以及用于选择该清单的条件。每个客户机只能使用一个 AI 清单。
# installadm create-manifest -n ai_service_name \ -f manifest_file -m manifest_name \ -C criteria_file
使用 create-profile 子命令添加每个配置文件以及用于选择该配置文件的条件。每个客户机可以使用一个或多个系统配置文件。
# installadm create-profile -n ai_service_name \ -f profile_file -p profile_name \ -C criteria_file
有关配置 AI 安装服务的信息,请参见 AI 文档和 installadm(1M) 手册页。
示例 1 处理 JumpStart 配置
以下命令处理当前目录中的 JumpStart 规则和配置文件。输出也放置在此目录中。
# js2ai -r
示例 2 处理特定的 JumpStart 目录
以下命令将处理指定目录中的 JumpStart 规则和配置文件,并将输出文件放置在同一目录中。
# js2ai -r -d /export/jumpstart
有关输出文件的更多信息,请参见示例 4 和“文件”部分。
示例 3 处理特定的 JumpStart 目录和单独的目标目录中的配置文件
以下命令处理 /export/jumpstart 目录中的 JumpStart rules 和配置文件,并将输出文件放置在 /export/output 中。
# js2ai -p profile1 -d /export/jumpstart -D /export/output
示例 4 指定的规则及其配置文件的示例输入和生成的输出
规则:
arch sparc && karch sun4u && \ model 'SUNW,Serverblade1' - profile -
配置文件:
install_type initial_install pool mypool auto auto auto c1t0d0s0
转换命令:
# js2ai -r -d /jumpstart -D /tmp/output
输出文件:
/tmp/output/AI_profile/profile.x86.xml /tmp/output/AI_profile/profile.sparc.xml /tmp/output/AI_profile/criteria-1.xml
将创建两个清单,一个用于 SPARC,另一个用于 x86,即使 rules 文件将 CPU 类型指定为 SPARC 也是如此。在转换过程中,将彼此独立地处理规则和配置文件。
示例 5 将生成的文件添加到 AI 安装服务
此示例使用在示例 4 中生成的文件将清单和条件添加到现有的服务。
文件:
/tmp/output/AI_profile/profile.sparc.xml /tmp/output/AI_profile/criteria-1.xml
installadm 命令:
# installadm create-manifest -n svc-name \ -f /tmp/output/AI_profile/profile.sparc.xml \ -m sparc_profile \ -C /tmp/output/AI_profile/criteria-1.xml
示例 6 处理 sysidcfg 文件
以下命令处理当前目录中的 sysidcfg 文件,并将生成的 SMF 系统配置文件作为 sc_profile.xml 输出到同一目录中。
# js2ai -s
将返回以下退出值:
所有文件都已成功处理。
出现错误。
包含已转换为与配置文件关联的新 AI 语法的所有对应文件的目录。
作为转换配置文件的结果而创建的清单文件。 ${arch} 可以是以下三个值之一: sparc、x86 或 generic。格式为 ${profile_name}.generic.xml 的清单文件可以同时用于安装 x86 和 SPARC 系统。
生成的 criteria-rule_number.xml 文件与 rules 文件中的规则相对应,rule_number 是基于其在 rules 文件中位置的规则编号。然后可以将此条件文件与 installadm 命令的 -C 选项一起使用。
由于多个规则可以指定同一配置文件,因此每个目录中可以存在多个条件文件,但是每个输出目录中应仅存在 ${profile_name}.${arch}.xml 文件的一个实例。
注 - 如果使用了 -p 选项,则不为所处理的配置文件生成条件文件。仅当与 -r 选项一起使用时才生成条件文件。
此文件包含在处理期间出现的意外情况的栈跟踪。通常不创建此文件。
此文件包含所处理文件以及在处理期间发现的任何错误的日志。
此文件是使用 -s 选项转换 sysidcfg 文件时生成的 SMF 系统配置文件。
有关下列属性的说明,请参见 attributes(5):
|
《从 Oracle Solaris 10 JumpStart 转换至 Oracle Solaris 11 自动化安装程序》