JavaScript is required to for searching.
跳过导航链接
退出打印视图
在 Oracle Solaris 11.1 中使用映像包管理系统打包和交付软件     Oracle Solaris 11.1 Information Library (简体中文)
为本文档评分
search filter icon
search icon

文档信息

前言

1.  IPS 设计目标、概念和术语

IPS 设计目标

软件自组装

软件自组装工具

原子软件对象

配置组合

执行器和 SMF 服务

Oracle Solaris 中的软件自组装的示例

Apache Web Server

交付配置片段的多个软件包

IPS 软件包生命周期

IPS 术语和组件

可安装的映像

软件包标识符:FMRI

软件包发布者

软件包名称

软件包版本

软件包内容:操作

文件操作

目录操作

链接操作

硬链接操作

设置操作

驱动程序操作

依赖操作

许可证操作

传统操作

签名操作

用户操作

组操作

软件包系统信息库

2.  使用 IPS 打包软件

3.  安装、删除和更新软件包

4.  指定软件包相关项

5.  允许变量

6.  以编程方式修改软件包清单

7.  在软件包安装过程中自动进行系统更改

8.  有关软件包更新的高级主题

9.  对 IPS 软件包进行签名

10.  处理非全局区域

11.  修改已发布的软件包

A.  对软件包进行分类

B.  如何使用 IPS 打包 Oracle Solaris OS

请告诉我们如何提高我们的文档:
过于简略
不易阅读或难以理解
重要信息缺失
错误的内容
需要翻译的版本
其他
Your rating has been updated
感谢您的反馈!

您的反馈将非常有助于我们提供更好的文档。 您是否愿意参与我们的内容改进并提供进一步的意见?

IPS 设计目标

设计 IPS 是为了消除早期软件分发、安装和维护机制中长期存在并对 Oracle Solaris 客户、开发者、维护者以及 ISV 造成严重问题的一些问题。

IPS 基本设计目标包括:

最大限度地缩短停机时间。

通过使软件更新能够在计算机正在执行生产工作时进行,最大限度地缩短计划内停机时间。

通过支持快速重新引导至可运转的已知软件配置,最大限度地缩短计划外停机时间。

自动化安装和更新。

尽可能自动化新软件的安装和对现有软件的更新。

降低介质要求。

解决软件大小日益增长以及分发介质空间有限所带来的难题。

验证软件安装是否正确。

确保能够确定是否按照软件包设计者(发布者)定义的步骤正确安装了软件包。此类检查应当不具有可欺骗性。

支持轻松虚拟化。

引入相应机制(尤其是通过使用区域)以在各种级别轻松实现 Oracle Solaris 的虚拟化。

简化升级。

减少为现有系统生成修补程序或升级程序需要做的工作。

支持轻松创建软件包。

使其他软件发布者(ISV 和最终用户自己)可以轻松创建和发布适用于 Oracle Solaris 的软件包。

这些目标引出了以下理念:

按需创建引导环境。

利用 ZFS 快照和克隆功能,根据需要动态创建引导环境。

  • 由于 Oracle Solaris 11 要求将 ZFS 作为根文件系统,所以区域文件系统也需要位于 ZFS 上。

  • 用户可以根据需要创建任意数量的引导环境。

  • IPS 可以根据需要(在修改正在运行的系统之前出于备份目的或者为安装新版本的 OS)自动创建引导环境。

统一安装、修补和更新。

消除用于安装、修补和更新的重复机制与代码。

此理念将导致 Oracle Solaris 的维护方式发生一些重大改变,包括以下重要示例:

  • 所有 OS 软件更新和修补都直接通过 IPS 来执行。

  • 任何时候只要安装了新软件包,该软件包就已经是恰好合适的版本。

最大限度地降低不正确安装的机率。

软件包安装的无欺骗性验证要求可带来以下结果:

  • 如果软件包需要支持以多种方式进行安装,则开发者必须指定这些方式,以便验证过程可以考虑此项。

  • 脚本编写过程本身是不可验证的,因为包管理系统无法确定脚本编写者的意图。此问题与稍后讨论的其他问题一起决定了在打包操作期间禁止脚本编写。

  • 软件包不能包含用来编辑其清单的任何机制,因为如果有这样的机制,验证将无法进行。

  • 如果管理员希望通过不符合原始发布者的定义的方式安装软件包,则包管理系统应当能够让管理员轻松地重新发布要更改的软件包,以便明确更改范围,使更改在升级后不会丢失,并且可以采用与原始软件包相同的方式进行验证。

提供软件系统信息库。

为了不受空间大小的限制,引入了一个软件系统信息库模型,可通过几种不同的方法访问此模型。可以将不同的系统信息库源组合到一起以提供一整套软件包,并且这些系统信息库可以作为单个文件进行分发。这样,将不需要像以前那样要求在单个介质上包含所有可用软件。为支持断开连接的操作或有防火墙的操作,提供了用于复制和合并系统信息库的工具。

在软件包中包含元数据。

支持多个(可能存在竞争关系的)软件发布者这一需求将导致以下决策:将所有打包元数据存储在软件包本身中,不存在用于存储诸如所有软件包及其相关项之类信息的任何主数据库。出于性能考虑,系统信息库中包含了来自软件发布者的可用软件包的目录,但也可以通过软件包中包含的数据重新生成该目录。