JavaScript is required to for searching.
跳过导航链接
退出打印视图
添加和更新 Oracle Solaris 11.1 软件包     Oracle Solaris 11.1 Information Library (简体中文)
为本文档评分
search filter icon
search icon

文档信息

前言

1.  映像包管理系统简介

2.  IPS 图形用户界面

3.  获取有关软件包的信息

4.  安装和更新软件包

5.  配置已安装的映像

配置发布者

显示发布者信息

添加、修改或删除软件包发布者

控制可选组件的安装

显示和更改变量值

显示和更改侧面值

将软件包锁定为指定版本

放宽由 Incorporation 指定的版本约束

指定缺省的应用程序实现

避免安装组软件包中的某些软件包

更新映像

映像更新的最佳做法

指定要安装的版本

更新之前指定版本约束

约束可用的软件包

将映像降级

更多更新命令选项

配置映像和发布者属性

引导环境策略映像属性

签名软件包的属性

签名的软件包的映像属性

签名的软件包的发布者属性

配置软件包签名属性

其他映像属性

设置映像属性

显示映像属性的值

设置映像属性的值

重置映像属性的值

创建映像

查看操作历史记录

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

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

放宽由 Incorporation 指定的版本约束

每个属于 Oracle Solaris 11 OS 的软件包都对 incorporation 软件包具有依赖性。Incorporation 软件包约束其中合并的软件包的版本,以帮助系统在更新后仍保持可支持状态。某些合并的软件包可以安全地降级或升级到与 incorporation 所指定的版本不同的版本。这类合并的软件包在 incorporation 软件包中指定了 version-lock.pkg_name 侧面属性。 version-lock.pkg_name 侧面的缺省值为 true。要放宽对软件包的版本约束,请将其 version-lock.pkg_name 侧面的值设置为 false

在以下示例中,您希望将软件包降级到较早版本。pkg update 命令可对软件包进行降级与升级。

$ pkg list -af library/security/openssl
NAME (PUBLISHER)                    VERSION                    IFO
library/security/openssl            1.0.0.10-0.175.1.0.0.19.0  i--
library/security/openssl            1.0.0.10-0.175.1.0.0.18.0  --- 
$ pfexec pkg update library/security/openssl@1.0.0.10-0.175.1.0.0.18.0
Creating Plan (Solver setup): |
pkg update: No matching version of library/security/openssl can be installed:
  Reject: pkg://solaris/library/security/openssl@1.0.0.10,5.11-0.175.1.0.0.18.0:20120611T201116Z 
  Reason:  This version is excluded by installed incorporation 
  pkg://solaris/consolidation/userland/userland-incorporation@0.5.11,5.11-0.175.1.0.0.19.0:20120625T163952Z

要放宽对该软件包的版本约束,请将其 version-lock 侧面设置为 false。然后再次尝试降级。请注意,未创建一个新的 BE,而是创建了一个备份 BE。有关何时创建 BE 的信息,请参见引导环境策略映像属性

$ pfexec pkg change-facet facet.version-lock.library/security/openssl=false
            Packages to update: 850
     Variants/Facets to change:   1
       Create boot environment:  No
Create backup boot environment: Yes

PHASE                                          ITEMS
Removing old actions                             1/1
Updating image state                            Done
Creating fast lookup database                   Done
Reading search index                            Done
Building new search index                    850/850
$ pfexec pkg update library/security/openssl@1.0.0.10-0.175.1.0.0.18.0
            Packages to update:   1
       Create boot environment:  No
Create backup boot environment: Yes

DOWNLOAD                                  PKGS       FILES    XFER (MB)   SPEED
Completed                                  1/1       10/10      1.6/1.6    0B/s

PHASE                                          ITEMS
Removing old actions                             3/3
Installing new actions                           3/3
Updating modified actions                      14/14
Updating package state database                 Done
Updating package cache                           1/1
Updating image state                            Done
Creating fast lookup database                   Done
Reading search index                            Done
Updating search index                            1/1
$ pkg list library/security/openssl
NAME (PUBLISHER)                    VERSION                    IFO
library/security/openssl            1.0.0.10-0.175.1.0.0.18.0  i--

要防止降级或升级该软件包,请将该软件包冻结在当前版本。软件包列表中的 “f” 指示软件包已冻结。

$ pfexec pkg freeze -c "Downgrade to avoid bug" library/security/openssl
library/security/openssl was frozen at 1.0.0.10-0.175.1.0.0.18.0:20120611T201116Z
$ pkg list library/security/openssl
NAME (PUBLISHER)                    VERSION                    IFO
library/security/openssl            1.0.0.10-0.175.1.0.0.18.0  if-

要重新启用降级或升级,请使用 pkg unfreeze 命令来删除版本冻结。如果软件包的安装版本低于 incorporation 软件包中指定的版本,则将此软件包的 version-lock 侧面设置为 true 将安装 incorporation 软件包中指定的版本。

如果其他已安装的软件包与您要降级或升级的软件包之间存在 require 依赖关系,则您可能还需要对这些相关的软件包放宽版本约束。在以下示例中,已在 hexedit 软件包上解除了版本约束,但由于在 system/library 软件包中存在版本约束,所以安装遭到拒绝。

$ pfexec pkg install editor/hexedit@1.2.12-0.175.1.0.0.21.0
Creating Plan (Solver setup): -
pkg install: No matching version of editor/hexedit can be installed:
  Reject: pkg://solaris/editor/hexedit@1.2.12,5.11-0.175.1.0.0.21.0:20120723T170720Z
  Reason:  All versions matching 'require' dependency 
  pkg:/system/library@0.5.11,5.11-0.175.1.0.0.20.0 are rejected
    Reject: pkg://solaris/system/library@0.5.11,5.11-0.175.1.0.0.20.0:20120709T163421Z

pkg://solaris/system/library@0.5.11,5.11-0.175.1.0.0.21.0:20120723T163000Z
    Reason:  This version is excluded by installed incorporation 
    pkg://solaris/consolidation/osnet/osnet-incorporation@0.5.11,5.11-0.175.1.0.0.19.0:20120625T152525Z

除了单个的组件软件包,您还可以对 incorporation 放宽版本约束。在这种情况下,将某个 incorporation 的 version-lock 侧面设置为 false 可以将其解锁,使其与系统的其余部分不同步,而其中合并的软件包则继续保持同步。