Go to main content

手册页部分 8:系统管理命令

退出打印视图

更新时间: 2018年8月8日 星期三
 
 

archiveadm(8)

名称

archiveadm - Oracle Solaris 归档文件实用程序

用法概要

archiveadm <subcommand> [options] <arguments>
            create  <archive name>
                [-z|--zone <zone(s)>]
                [-D|--exclude-dataset <dataset(s)>]
                [-Z|--exclude-zone <zone(s)>]
                [-r|--recovery]
                [-e|--exclude-media]
                [-s|--skip-capacity-check]
                [--dehydrate[--publisher <publisher name(s)>]]

                [   --root-only] 
            info  <archive name>
                [-p|--parsable | -t|--targets [-s|--system <system name>]]
                [-k|--key]
                [-c|--cert]
                [-C|--ca-cert]
                [-v|--verbose]
            info  <archive name>
                -o|--output property[,...]
                [-p|--parsable]
                [-s|--system <system_name>]
                [-H|--exclude-headers]
            create-media    <archive name>
                [-g|--global-zone <global-zone>]
                [-s|--source <ISO image> | <repository URI>]
                [-k|--key <ssl_key]
                [-c|--cert <ssl_cert]
                [-d|--dataset <name>]
                [-f|--format <iso or usb>]
                [-o|--output <path for final image>]
            rehydrate  <dehydrated archive name> <archive name>

描述

archiveadm 实用程序向用户提供了为正在运行的 Oracle Solaris 系统创建归档映像以用于系统克隆和恢复的功能。此实用程序还可以用来在创建归档文件后检索关于归档文件的信息,以及基于归档文件创建可引导的介质。

所创建的归档文件类型是 Oracle Solaris 统一归档文件。Oracle Solaris 统一归档文件是基于 Oracle Solaris 引导环境和 ZFS 数据流的多系统归档文件。统一归档文件包含在创建归档文件期间选择的一个或多个系统。可以在总的统一归档文件内将每个系统封装在自己的归档中,以便将来可以有选择地进行部署。另外,也可以创建单个的整体归档文件,这将生成包含多个嵌入系统的单一可部署归档文件。

统一归档文件仅含包括文件系统、卷和快照的 ZFS 数据集。所有其他文件系统和卷类型均不包括在统一归档文件内。区域中的任何文件系统资源也不包括在区域的归档数据内。但是,如果 fs 资源中的类型属性具有值 lofs 或值 zfs,则 special 属性所引用的数据可能会包括在全局区域的归档文件中,前提是其表示 ZFS 文件系统。

在创建 Oracle Solaris 统一归档文件后,可以使用 Oracle Solaris 自动化安装程序或 Oracle Solaris Zones 软件实用程序对其进行部署。

在进行 Oracle Solaris 自动化安装程序部署期间,归档文件被设置为一个安装服务配置参数,类似于使用 IPS 发布者时的操作。当客户机引导服务时,安装软件为系统配置必需的 ZFS 池(包括原始系统本地设置的任何 ZFS 池属性),然后,归档的系统将被接收到新池中。

从主机系统部署 Oracle Solaris Zones 期间,使用 zonecfg(8)zoneadm(8) 实用程序。要配置新区域,可使用 zonecfg(8) 提取 Oracle Solaris 统一归档文件中的配置数据。zoneadm(8) 实用程序可用于直接从归档文件安装区域。还可以在进行 Oracle Solaris 自动化安装程序新部署期间,随全局区域一起安装各个区域。

缺省情况下,Oracle Solaris 统一归档文件以轻量形式创建,该归档文件基于系统的活动引导环境和相关数据集。在区域系统的上下文中,相关数据集指的是区域的委托数据集。对于主机全局区域的归档文件,相关数据集指的是系统上任何未划归区域的数据集。这些归档文件称为“克隆归档文件”,因为它们适合用于系统克隆。这些归档文件最适合在许多节点上快速部署相同的定制映像。

可以创建包含所有引导环境而非仅包含活动引导环境的归档文件。这种类型的归档文件更适合用于系统恢复,因此称为“恢复归档文件”。此模式将创建包含所选区域的单系统归档文件。所选全局区域内的任何非全局区域都将被嵌入归档文件内,并且将包括所有系统的所有引导环境。

在创建克隆归档文件期间,可以在归档文件中显式包括或排除特定系统。请注意,包括特定的系统列表将隐式排除所有其他系统。相反,排除特定的系统列表将隐式包括所有其他系统。

当创建恢复归档文件时,可以选择一个特定的系统。如果系统是具有已安装区域的主机,则可以在归档文件中嵌入那些区域。如果需要某个特定区域的恢复归档文件,则可以选择该区域。在创建恢复归档文件时不允许排除系统。

还可以排除特定的数据集,这将进一步降低归档文件的大小。缺省情况下,所有归档文件都排除所有交换和转储设备。另外,克隆归档文件中将排除 VARSHARE 数据集;恢复归档文件中将包括该数据集。

archiveadm 实用程序支持名为 system:clonepkg(1) 恢复标记,可以在针对归档文件克隆期间需要恢复的那些文件的软件包清单中指定该标记。这些文件将恢复为其交付时的状态。

创建归档文件期间,部分内容会使用 pkg(1) 恢复标记恢复到原始状态。创建恢复归档文件期间会使用 system:dev-init 恢复标记。创建克隆归档文件期间会使用 system:dev-initsystem:clone 恢复标记。结果是,恢复归档文件和克隆归档文件都清除了设备配置。只有克隆归档文件具有特定于实例的信息(例如日志文件内容)和一些已恢复到初始状态的配置文件。有关更多信息,请参见《Packaging and Delivering Software With the Image Packaging System in Oracle Solaris 11.4》。

可以选择创建一个仅包含根池中的数据的归档文件。将 –-root-only 选项与 create 子命令一起使用时,将从归档文件中排除所有非根池。

在部署期间,可以选择性地从克隆统一归档文件中部署归档的系统。还可以将系统部署为区域,这用于实现全局到非全局 (Global-to-Non-global, G2N) 转换功能。请注意,单系统恢复归档文件不可选择;整个恢复归档文件将被部署为单一部署。

为了归档共享存储资源上的区域,这些区域必须作为单个系统进行归档。这也适用于克隆归档文件和恢复归档文件。此外,只能从恢复归档文件中排除共享存储上的区域。任何其他排除均将失败。

可以基于 Oracle Solaris 统一归档文件创建可引导的安装介质。用户可以提供选项来定义安装介质的构建区域和内容。然后,可以使用生成的介质映像来创建恢复介质或定制安装介质。

下文中的“子命令”部分逐一介绍了该实用程序的三个主函数。

选项

支持以下选项:

–h,–-help

输出说明实用程序用法的帮助消息。

子命令

支持以下子命令:

archiveadm create <archive name>
[–r|–-recovery]
[–z|–-zone <zone(s)>]
[–Z|–-exclude-zone < zone(s)>]
[–D|–-exclude-dataset < dataset(s)>]
[–e|–-exclude-media ]
[–s|–-skip-capacity-check]
[–-dehydrate[–-publisher <publisher name(s)>]]
[–-root-only]

create 命令将驱动创建新的 Oracle Solaris 统一归档文件。该命令需要新的归档文件的位置和名称。这作为可写入目录中新归档文件名称的路径来传递。create 命令要求用户具有 solaris.user.manage 授权。

不带选项时,create 将构建调用该命令的系统的归档文件。如果系统是一个全局区域,则会包括主机上的所有虚拟系统。归档文件包括每个系统的活动引导环境以及所有相关的数据集。对于区域,相关数据集的列表等于委托数据集的列表。在全局区域中,将对未划归区域的所有数据集进行归档。

所有归档文件都排除所有交换和转储设备。缺省情况下所有克隆归档文件都排除 VARSHARE 数据集。

–r|–-recovery

此选项创建一个适用于系统恢复的归档文件。此归档文件类型包括一个包含选定区域的单一可部署系统。如果区域是全局区域,则归档文件将包含该区域以及它所承载的所有非全局区域。归档文件中将包括所有系统的所有引导环境(包括处于非活动状态的引导环境)。

[–z|–-zone <zone(s) >]

此选项用来提供要归档的区域名称或区域名称列表,暗示不对所有其他系统进行归档。

[–Z|–-exclude-zone < zone(s)>]

此选项用来提供要从归档文件中排除的区域名称或区域名称列表,暗示包括所有其他系统。–-zone–-exclude-zone 是互斥的。使用 –-recovery 时此选项无效。

[–D|–-exclude-dataset < dataset(s)>]

此选项用来从归档文件中排除一个或多个数据集。将从归档文件中递归排除所传递的数据集名称,这意味着还将排除在层次结构中属于所排除数据集的“子代”的任何数据集。


注 -  此选项用于在创建全局区域或非全局区域(但不是内核区域)的归档文件时排除一个或多个数据集。
[–-root-only]

此选项用来排除所有非根池数据。将以递归方式从生成的归档文件映像中排除每个非根池。当需要仅包含根的归档文件且非根池列表未知时,这很有用。

[–e|–-exclude-media]

此选项可用于跳过统一归档中每个可部署系统的可引导介质的生成过程。为了增强归档文件的可移植性,会自动为每个可部署系统创建此介质。如果不需要此操作,可以使用此选项。

[–s|–-skip-capacity-check]

在创建归档流之前,会在暂存目录中执行容量检查。当用户希望跳过此容量检查时,可以使用此选项。

[–-dehydrate[–-publisher <publisher name(s)>]]

此选项用于在创建归档文件期间冻结归档文件映像。只有克隆归档文件支持冻结。

此外,可能还会提供 –-publisher 选项来指定要冻结的特定发布者,从而让归档文件部分冻结。如果有多个发布者,将使用发布者的逗号分隔列表对输出进行分隔。

冻结通过 pkg dehydrate 命令来实现。有关将在冻结中删除的确切内容的更多信息,请查阅 pkg(1) 手册页中的相应参考。

archiveadm info <archive name>
[–v|–-verbose]
[–k|–-key]
[–c|–-cert]
[–C|–-ca-cert]
[–p|–-parsable]
[–t|–-targets]
[–o|–-output property[,...]]
[–s|–-system <system_name>]
[–H|–-exclude-headers]

info 命令将提供作为 URI 传递的 Oracle Solaris 归档文件的内容的相关信息。如果该路径是文件系统可访问文件的相对或绝对路径,则 'file' URI 类型是可选的。HTTP 和 HTTPS 是其他受支持的 URI 类型。

此命令的输出提供与归档文件相关的数据,例如,归档文件创建时间以及关于原始系统的信息(例如主机名、体系结构和 Oracle Solaris 版本)。它还按系统名称列出可部署的系统归档文件。

[–v|–-verbose]

此选项提供关于可部署的系统归档文件的更多详细信息,包括活动引导环境的名称、所安装的 Oracle Solaris 的版本,以及部署每个系统归档文件所需的大小。verbose 模式下还显示创建了归档文件的主机上所安装的 Oracle Solaris OS 的版本、统一归档文件的唯一 ID (UUID) 以及每个系统归档文件的 UUID。

[–k|–-key]
[–c|–-cert]
[–C|–-ca-cert]

当提供的路径是一个 HTTPS URI 时,这些选项用来传递 HTTPS 凭证。客户机证书、CA 证书和密钥通过这些选项设置。

[–p|–-parsable]

此选项提供一组以冒号分隔的可解析值(与已设置格式的输出相对),这些值与归档文件信息相关。对于脚本编写或数据输入应用程序,这可能比较有用。详细和非详细的可解析输出都包括对输出进行标记的标题。

–p 选项与 –o 选项结合使用时,输出仅包含通过 –o 选项指定的属性,并按所请求的顺序列出这些属性。

[–t|–-targets]

此选项列出与原始系统上的存储配置相关的特定信息。配置元数据将随部署期间使用的数据一起归档,以便指导自动化安装程序如何配置客户机系统。此选项为用户提供了一种方法来观察 AI 在部署时将创建什么。

可以使用此选项来检索源系统的目标配置,为 AI 清单重新创建存储配置时可能会使用该目标配置。清单内容以 XML 格式显示,这样仅需稍做修改便可使用。

对于具有多个可部署系统的归档,可以将 –s 选项与 –t 选项结合使用来指定需要目标配置数据的系统。

[–o|–-output property[,...]]

此选项以表格格式显示用户指定的属性的信息。它接受不区分大小写并且以逗号分隔的属性列表。属性必须为下面所述的本机属性之一。

使用 –o 选项指定的属性必须属于同一属性类别:全部为本机归档文件属性或全部为本机系统属性。

支持以下本机归档文件属性:

ARCHIVE_UUID

此统一归档文件的 128 位唯一标识符。

ARCHIVE_VERSION

此统一归档文件的版本。

CREATION_TIME

此统一归档文件的创建时间戳 (UTC)。

DEHYDRATED_PUBLISHERS

冻结的归档文件的发布者(如果有)。

HOST_OS_VERSION

创建了统一归档文件的主机上所安装的 Oracle Solaris 的版本。例如,11.4

HOST_OS_BRANCH

创建了统一归档文件的主机上所安装的 osnet-incorporation 软件包的 IPS 分支。例如,11.4.0.0.0.123.0

ISA

'sparc' 或 'i386'。

OS_NAME

Solaris 名称。例如,'Oracle Solaris 11.4 X86'。

RECOVERY

如果归档文件类型为 'recovery',则为 'Yes';否则为 'No'。

SOURCE_HOST

源归档系统的主机名。

SYSTEMS

包含在此统一归档文件中的可部署系统。输出是以逗号分隔的系统名称列表。

支持以下本机系统属性:

ACTIVE_BE

创建归档文件时原始系统上的活动引导环境的名称。重新部署克隆归档文件时,活动引导环境将采用此名称。重新部署恢复归档文件时,部署的活动引导环境是此引导环境的副本,其后附有名称 "-recovery"。

AI_MEDIA

与此归档系统关联的 AI 介质的名称。

BRAND

归档区域的标记。

NAME

此系统的名称。

OS_BRANCH

osnet-incorporation 的 OS 分支。例如, '11.4.0.0.0.55.0'。

OS_VERSION

此系统上安装的 Oracle Solaris 的版本。例如,'11.4'。

ROOT_ONLY

如果此系统仅包含根数据,则为 'Yes';否则为 'No'。

SIZE

部署系统所需的估计最小大小。需要添加额外的空间才能实现交换和/或转储以及归档文件未解释的其他系统配置操作。

SYSTEM_UUID

此系统的 128 位唯一标识符。

[–s|–-system <system_name>]

此选项指定可部署系统归档文件的名称。–s 选项需要与 –o 选项或 –t 选项结合使用。

当使用 –o 选项显示本机系统属性时,必须使用 –s 选项显式指定系统。采用此用法时,–s 选项接受系统名称的逗号分隔列表。<system_name> 可以是本机归档文件属性 'systems' 的输出中列出的值之一,也可以是用于显示所有归档系统的特殊值 all

–s 选项与 –t 选项结合使用时,<system_name> 应指定需要目标配置数据的可部署系统。

[–H|–-exclude-headers]

此选项用于以可解析和不可解析模式输出不带标题的输出。

使用 –H 选项时必须使用 –o 选项。

archiveadm create-media <archive name>
[–g|–-global-zone <global-zone>]
[–s|–-source < ISO image> | <repository URI>]
[–k|–-key <ssl_key>]
[–c|–-cert <ssl_cert >]
[–d|–-dataset < name>]
[–f|–-format < iso or usb>]
[–o|–-output < path for final image>]

create-media 命令用来基于统一归档文件创建可引导的介质。然后可以使用生成的介质映像来基于归档文件内容引导和安装系统。归档文件是作为路径传递的。该路径可以是相对路径也可以是绝对路径。

[–g|–-global-zone]

从归档的全局区域创建介质。此开关允许用户选择从中创建介质的全局区域。生成的介质将部署指定的全局区域以及任何嵌套的区域的归档。

[–s|–-source]

可引导的介质基于 Solaris AI 映像。此开关项允许用户提供 AI 映像的来源。有效的来源是兼容的 Solaris 自动化安装 ISO 映像文件的路径或包含兼容的 pkg://solaris/install-image/solaris-auto-install 软件包的 Solaris IPS 系统信息库的 URI。兼容性基于 Solaris 的版本。

如果未传递来源,则将在执行 create-media 的系统上设置的所有 IPS 发布者中搜索 solaris-auto-install 软件包的兼容版本。

[–k|–-key]
[–c|–-cert]

当提供的来源是一个 HTTPS URI 时,这些选项用来传递 HTTPS 凭证。客户机证书和密钥通过这些选项设置。

[–d|–-dataset]

此开关项允许用户提供一个 ZFS 数据集作为创建介质时使用的暂存区域。如果未传递此暂存区域,则将使用 rpool 上的缺省暂存区域。

[–f|–-format]

选择生成的可引导介质的格式,即 ISO 或 USB 映像文件。如果生成的介质映像将大于 4GB,则仅支持 USB 格式。

[–o|–-output]

生成的介质映像文件的名称。如果不提供,则将使用缺省名称。

rehydrate <dehydrated archive name> <archive name>

rehydrate 命令用来基于冻结的统一归档文件创建解除冻结的统一归档文件。生成的归档文件是完全解除冻结的归档文件。解除冻结将会重新安装冻结所删除的全部文件和硬链接,以将归档文件映像恢复为其原始状态。解除冻结通过 pkg rehydrate 命令来实现。有关通过解除冻结恢复到冻结的归档文件的确切内容的更多信息,请查阅 pkg(1) 手册页中的相应参考。

冻结的归档文件和解除冻结的归档文件均作为路径传入。路径可以是相对路径或绝对路径。

示例

示例 1 创建缺省归档文件

此示例在不使用选项的情况下创建归档文件,这将创建包含主机上的所有系统的统一归档文件。

# archiveadm create ./archive.uar
示例 2 创建排除某些数据集的归档文件

此示例创建排除了 data/scratch 和 tank/tmp 数据集的归档文件。

# archiveadm create -D data/scratch,tank/tmp ./archive.uar
示例 3 归档单个区域

此示例创建一个单系统归档文件,其中包含一个区域的活动引导环境和相关 rpool 数据集以及所有委托数据集。

# archiveadm create -z zone1 ./archive.uar
示例 4 创建排除某些区域的归档文件

此示例创建排除了 "zone3" 和 "zone4" 区域的归档文件。

# archiveadm create -Z zone3,zone4 ./archive.uar
示例 5 归档 solaris-kz 区域

此示例创建一个单系统归档文件,其中包含一个 solaris-kz 标记区域。在单系统归档文件中,将归档内核区域中部署的任何区域。

# archiveadm create -z kz1 ./archive.uar
示例 6 使用指定发布者创建冻结的归档文件

此示例创建一个冻结的归档文件,用于将 solarisnightly 发布者冻结。

# archiveadm create --dehydrate --publisher solaris,nightly ./archive.uar
示例 7 检索基本的归档文件信息

此示例检索与归档文件相关的基本信息。


# archiveadm info ./archive.uar
        Archive Information
                          Creation Time:  2017-03-29T01:29:29Z
                            Source Host:  myhost
                           Architecture:  i386
                       Operating System:  Oracle Solaris 11.4 X86
                  Dehydrated Publishers:  nightly, solaris
                     Deployable Systems:  global,zone1
示例 8 检索详细的归档文件信息

此示例检索与归档文件及其可部署的系统归档相关的详细信息。


# archiveadm info --verbose archive.uar
        Archive Information
                         Creation Time:  2017-03-29T01:29:29Z
                           Source Host:  myhost
                          Architecture:  i386
                      Operating System:  Oracle Solaris 11.4 X86
                 Dehydrated Publishers:  nightly, solaris
                      Recovery Archive:  No
                             Unique ID:  d1689f79-0bca-6cea-e06c-f335e98006f0
                       Host OS Version:  11.4
                        Host OS Branch:  11.4.0.0.0.121.1
                       Archive Version:  1.0
  
                   Deployable Systems
                     'global'
                       OS Version:  11.4
                        OS Branch:  11.4.0.0.0.121.1
                        Active BE:  mybe1
                            Brand:  solaris
                   Installed Size:  21.44GB
                        Unique ID:  73ec33b8-55c2-6291-cabd-943f3b1c359e
                     'zone1'
                       OS Version:  11.4.0.0.0.105.2
                        Active BE:  solaris-6
                            Brand:  solaris
                      Size Needed:  345.90MB
示例 9 检索存储配置信息

此示例从归档文件中检索通过 Solaris 自动化安装程序部署该归档文件时将需要的目标资源的相关信息。


# archiveadm info --targets archive.uar
<target name="origin">
      <disk in_zpool="rpool" in_vdev="rpool-none" whole_disk="true">
        <disk_name name="SYS/HDD0" name_type="receptacle"/>
        <disk_prop dev_type="scsi" dev_vendor="HITACHI" dev_chassis="SYS"
dev_size="585937500secs"/>
        <gpt_partition name="0" action="create" force="false" part_type="bbp">
          <size val="524288secs" start_sector="256"/>
        </gpt_partition>
        <gpt_partition name="1" action="create" force="false" part_type="solaris">
          <size val="585396539secs" start_sector="524544"/>
        </gpt_partition>
        <gpt_partition name="8" action="create" force="false" part_type="reserved">
          <size val="16384secs" start_sector="585921083"/>
        </gpt_partition>
      </disk>
      <disk in_zpool="data" in_vdev="data-none" whole_disk="true">
        <disk_name name="SYS/HDD1" name_type="receptacle"/>
        <disk_prop dev_type="scsi" dev_vendor="HITACHI" dev_chassis="SYS"
dev_size="585937500secs"/>
        <gpt_partition name="0" action="create" force="false" part_type="solaris">
          <size val="585920827secs" start_sector="256"/>
        </gpt_partition>
        <gpt_partition name="8" action="create" force="false" part_type="reserved">
          <size val="16384secs" start_sector="585921083"/>
        </gpt_partition>
      </disk>
      <logical noswap="false" nodump="false">
        <zpool name="data" action="create" is_root="false" mountpoint="/data">
          <vdev name="data-none" redundancy="none"/>
        </zpool>
        <zpool name="rpool" action="create" is_root="true" mountpoint="/rpool">
          <vdev name="rpool-none" redundancy="none"/>
        </zpool>
      </logical>
    </target>
示例 10 创建介质

此示例创建一个可引导的 USB 映像,在引导时将从 "archive.uar" 部署全局区域。可以使用 usbcopy(8) 命令将其复制到 USB 设备。AI 映像组件将源自当前的 IPS 发布者列表。

# archiveadm create-media ./archive.uar
示例 11 基于 IPS 发布者创建介质

此示例创建可引导的介质,并且 AI 映像组件源自特定的 IPS 发布者。

# archiveadm create-media -s http://server.domain:port
                ./archive.uar
示例 12 在用户选择的构建区域中创建介质

此示例显示了如何使用 AI ISO 映像作为引导归档文件的来源来创建介质。

# archiveadm create-media -d data/build
                -s S11-2-x86-AI.iso ./archive.uar
示例 13 基于冻结的归档文件创建解除冻结的归档文件

此示例显示了如何基于冻结的归档文件创建解除冻结的归档文件。

# archiveadm rehydrate ./dehydrated_archive.uar ./rehydrated_archive.uar
示例 14 从所选的全局区域创建介质

此示例显示了如何从特定的已归档全局区域创建介质。

# archiveadm create-media -g kz-global ./archive.uar
示例 15 检索本机归档文件属性

此示例显示了如何检索本机归档文件属性。

# archiveadm info -o SOURCE_HOST,ISA,RECOVERY,SYSTEMS
                ./archive.uar
SOURCE_HOST   ISA  RECOVERY SYSTEMS
-----------   ---  -------- -------
ss12-aiserver i386 No       sys1,sys2,sys3,sys4
示例 16 检索本机系统属性

此示例显示了如何检索本机系统属性。

# archiveadm info -o NAME,ACTIVE_BE,BRAND
                -s sys1,sys2,sys3 ./archive.uar
Name Active_BE Brand
---- --------- -----
sys1 solaris-1 solaris
sys2 solaris-2 solaris
示例 17 检索不具有标题的可解析本机系统属性

此示例显示了如何检索不具有标题的可解析本机系统属性。

# archiveadm info -o NAME,ACTIVE_BE,BRAND
                -s all -p -H ./archive.uar
sys1|solaris-1|solaris
sys2|solaris-2|solaris
sys3|solaris-3|solaris
sys4|solaris-4|solaris

属性

有关下列属性的说明,请参见 attributes(7)

属性类型
属性值
可用性
install/archive|
接口稳定性
Uncommitted(未确定)

另请参见

ai_manifest(5)zoneadm(8)zonecfg(8)