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

文档信息

前言

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

2.  使用 IPS 打包软件

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

4.  指定软件包相关项

5.  允许变量

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

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

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

避免软件包内容冲突

重命名、合并和拆分软件包

重命名单个软件包

合并两个软件包

一个软件包兼并另一个软件包

重命名两个软件包

拆分一个软件包

使软件包过时

保留迁移的可编辑文件

删除或重命名目录时移动未打包的内容

交付应用程序的多个实现

交付要在引导环境之间共享的目录

如何将内容交付到共享目录

9.  对 IPS 软件包进行签名

10.  处理非全局区域

11.  修改已发布的软件包

A.  对软件包进行分类

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

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

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

重命名、合并和拆分软件包

软件组件的所需组织会因原始软件包中的错误、产品或其使用随时间的变化或周围软件环境的变化而发生变化。有时,只是软件包的名称需要更改。规划此类更改时,请考虑执行升级的用户,以确保不会出现无法预料的负面影响。

本节按 pkg update 注意事项复杂性从低到高的顺序讨论了以下三种类型的软件包重新组织:

  1. 重命名单个软件包

  2. 合并两个软件包

  3. 拆分一个软件包

重命名单个软件包

重命名单个软件包很简单。IPS 提供了一种机制来指明软件包已重命名。

要重命名软件包,请发布现有软件包的新版本,使其包含以下两个操作:

重命名的软件包无法交付除 dependset 操作以外的内容。

新软件包必须确保它无法与重命名之前的原始软件包同时安装。如果同一 incorporate 相关项同时涵盖了这两个软件包,则此限制是自动实现的。如果没有自动实现,则新软件包必须在重命名的版本中包含依赖于旧版软件包的 optional 相关项。这可以确保解析器不会同时选择这两个软件包,若同时选择会导致冲突检查失败。

安装此已重命名软件包的用户将自动接收新名称的软件包,因为新软件包是旧版本的一个相关项。如果没有任何其他软件包依赖于已重命名软件包,则它将自动被从系统中删除。存在旧版本的软件会导致许多已重命名软件包显示为已安装。当该旧版本的软件被删除时,也会自动删除已重命名软件包。

软件包可以多次重命名而不会出现问题,但是建议不要这样做,因为这样会使用户混淆。

合并两个软件包

合并软件包也非常简单。以下两种情况是合并软件包的示例:

一个软件包兼并另一个软件包

假定软件包 A@2 必须兼并软件包 B@3。要完成此操作,请将软件包 B 重命名为软件包 A@2。不要忘记在 A@2 中包括对 B@3optional 相关项,除非如上所述,两个软件包已合并且因此一起更新。将 B 升级到 B@3 的用户现在即安装了 A,因为 A 已兼并了 B

重命名两个软件包

在这种情况中,将两个软件包都命名为合并后的新软件包的名称,在新软件包中包含依赖于旧软件包的两个 optional 相关项(如果没有以其他方式对这两个软件包进行约束)。

拆分一个软件包

拆分软件包时,请按重命名单个软件包中介绍的过程重命名所得到的每个新软件包。如果所得到的其中一个新软件包未重命名,则该软件包的拆分前和拆分后版本不兼容,并且在最终用户尝试更新软件包时可能会违反相关项逻辑。

重命名原始软件包,并包含依赖于拆分得到的所有新软件包的 require 相关项。这可确保包含依赖于原始软件包的相关项的任何软件包都会获得所有新的软件包部分。

拆分的软件包的某些组件可以作为合并部分兼并到现有软件包中。请参见一个软件包兼并另一个软件包