跳过导航链接 | |
退出打印视图 | |
添加和更新 Oracle Solaris 11.1 软件包 Oracle Solaris 11.1 Information Library (简体中文) |
对于大多数 IPS 命令,在非全局区域中的使用方式与在全局区域中相同。请注意,Oracle Solaris 10 标记区域与 Oracle Solaris 11 非全局区域不同。IPS 命令忽略 Oracle Solaris 10 标记区域。在本书中,“非全局区域”是指 Oracle Solaris 11 非全局区域。
全局区域与非全局区域的一个重要区别在于对软件包发布者的使用。在非全局区域中,系统信息库提供对全局区域中配置的软件包系统信息库的访问。所有非全局区域通过系统信息库来立即了解对全局区域进行的发布者配置更改。
在全局区域中安装、更新和卸载软件包会影响非全局区域。在全局区域中运行不带任何参数的 pkg update 命令时,会更新全局区域和每个非全局区域。有关示例,请参见同时更新多个非全局区域。在全局区域中运行指定了软件包名称的安装、更新或卸载命令时,IPS 仅在要求非全局区域与全局区域保持兼容时,才会检查每个非全局区域并进行更改。在全局区域中更改侧面和变量也会影响非全局区域。
提示 - 可使用 -n 选项来查看在非全局区域以及全局区域中将进行哪些更改。
如果在登录到非全局区域时运行软件包命令,则只会影响非全局区域。您可以在非全局区域安装不同的软件包以及安装同一软件包的不同版本,只要结果与全局区域兼容。您可以避免安装不同的软件包,将软件包冻结在不同的版本,设置中介来选择不同的缺省实现,以及在非全局区域映像中设置不同的侧面。
全局区域中安装的版本会对非全局区域中安装的软件包的版本施加限制。非全局区域中的某些软件包可能无法进行更新或降级,因为这些软件包在非全局区域中的版本必须与它们在全局区域中的版本相同。例如,每个非全局区域中名为 entire 的软件包必须与全局区域中的对应软件包相同。entire 软件包约束系统软件包版本,以便产生的一组软件包是可支持的映像。
在非全局区域中,系统信息库提供对全局区域中配置的软件包系统信息库的访问。所有非全局区域通过系统信息库来立即了解对全局区域进行的发布者配置更改。系统信息库将对 http、https 和 v4 文件系统信息库以及 .p5p 归档系统信息库使用代理。
区域代理是用于支持在区域中运行 pkg 命令,以与在全局区域中运行的系统信息库进行通信的一种服务。区域代理由两部分组成。以下服务在全局区域中运行:
svc:/application/pkg/zones-proxyd:default
以下服务在非全局区域中运行:
svc:/application/pkg/zones-proxy-client:default
有关系统信息库和区域代理服务的更多信息,请参见 pkg.sysrepo(1M) 手册页。
以下示例显示了全局区域中的发布者:
global:~$ pkg publisher PUBLISHER TYPE STATUS P LOCATION solaris origin online F http://pkg.oracle.com/solaris/release/ solaris origin online F file:///export/repoSolaris11/ devtool (disabled) origin online F http://pkg.example1.com/ isvpub origin online F http://pkg.example2.com/
以下示例显示当您登录到非全局区域时,这些相同的发布者如何显示:
z1:~$ pkg publisher PUBLISHER TYPE STATUS P LOCATION solaris (syspub) origin online T <system-repository> solaris (syspub) origin online F <system-repository> isvpub (syspub) origin online F <system-repository>
P 列中的 T 意味着此源具有代理。可使用以下命令之一获取更多信息:
z1:~$ pkg publisher -F tsv PUBLISHER STICKY SYSPUB ENABLED TYPE STATUS URI PROXY solaris true true true origin online http://pkg.oracle.com/solaris/release/ http://localhost:1008 solaris true true true origin online http://localhost:1008/solaris/omitted/ - z1:~$ pkg publisher solaris Publisher: solaris Alias: Origin URI: http://localhost:1008/solaris/91b04f12f39930ae8e27f5636b7a342e8f460133/ SSL Key: None SSL Cert: None Origin URI: http://pkg.oracle.com/solaris/release/ Proxy: http://localhost:1008 SSL Key: None SSL Cert: None Client UUID: c92e7a92-dce5-11e1-b7e5-8800209e4377 Catalog Updated: August 2, 2012 05:10:48 PM Enabled: Yes
您无法在非全局区域中重新配置系统信息库。例如,您无法更改位置为 <system-repository> 的发布者的源或属性,也无法更改这些发布者的发布者搜索顺序。
如果您无法访问某个发布者,您可以通过设置 http_proxy 环境变量或向 pkg set-publisher 命令指定 --proxy 选项在全局区域中设置代理。有关 --proxy 选项的信息,请参见 pkg(1) 手册页和添加、修改或删除软件包发布者。有关设置 http_proxy 和 https_proxy 环境变量的说明,请参见《Oracle Solaris 11.1 管理:Oracle Solaris Zones、Oracle Solaris 10 Zones 和资源管理》中的"在安装了区域的系统上进行代理配置"。有关代理环境变量的其他信息,请参见 curl(1) 手册页的“环境”部分。
要列出来自在全局区域中已配置的特定发布者的软件包,在全局区域和非全局区域中运行以下格式的命令均会给出相同的结果:
z1:~$ pkg list -a '//isvpub/*' NAME (PUBLISHER) VERSION IFO isvtool (isvpub) 1.0-0 ---
如果系统信息库未在全局区域内配置,但非全局区域可通过网络或文件系统进行访问,则当 file:///export/myrepo 为非全局区域可访问的系统信息库位置时,以下两个命令均会列出相同的软件包。
z1:~$ pkg list -af -g file:///export/myrepo z1:~$ pkgrepo list -s file:///export/myrepo
缺省情况下,在全局区域中使用 pkg update 命令时,包管理系统会逐一更新全局区域和每个非全局区域。要同时更新多个非全局区域,请使用 -C 选项或在全局区域中设置 PKG_CONCURRENCY 环境变量。-C n 选项和 PKG_CONCURRENCY=n 环境变量指定,如果 n 大于或等于 1,最多可并行更新 n 个映像。n 的缺省值为 1。如果 n 为 0 或为负数,则所有的非全局区域与全局区域并行更新。
如果指定了 -C 选项,则忽略 PKG_CONCURRENCY 环境变量。-C 选项以及 PKG_CONCURRENCY 环境变量可与 pkg install、pkg uninstall、pkg change-variant、pkg change-facet 和 pkg update 一起使用。
从全局区域更新非全局区域时,不需要引导非全局区域,仅需挂载非全局区域。
在以下示例中,两个非全局区域均与全局区域同时更新:
global:~$ pfexec pkg update -C 0 --be-name s11u1 Startup: Linked image publisher check ... Done Startup: Refreshing catalog 'solaris' ... Done Startup: Refreshing catalog 'isvpub' ... Done Startup: Checking that pkg(5) is up to date ... Done Planning: Solver setup ... Done Planning: Running solver ... Done Planning: Finding local manifests ... Done Planning: Package planning ... Done Planning: Merging actions ... Done Planning: Checking for conflicting actions ... Done Planning: Consolidating action changes ... Done Planning: Evaluating mediators ... Done Planning: Planning completed in 39.00 seconds Packages to remove: 2 Packages to install: 1 Packages to update: 640 Create boot environment: Yes Create backup boot environment: No Planning: Linked images: 0/2 done; 2 working: zone:z1 zone:z2 Planning: Linked image 'zone:z1' output: | Packages to install: 1 | Packages to update: 161 | Services to change: 2 ` Planning: Linked images: 1/2 done; 1 working: zone:z2 Planning: Linked image 'zone:z2' output: | Packages to install: 1 | Packages to update: 161 | Services to change: 2 ` Planning: Finished processing linked images. Download: 0/12068 items 0.0/350.9MB 0% complete ... Download: 11664/12068 items 336.1/350.9MB 95% complete Download: Completed 350.91 MB in 187.08 seconds (0B/s) Download: Linked images: 0/2 done; 2 working: zone:z1 zone:z2 Download: Linked images: 1/2 done; 1 working: zone:z1 Download: Finished processing linked images. Actions: 1/23382 actions (Removing old actions) Actions: 3867/23382 actions (Installing new actions) Actions: 8192/23382 actions (Updating modified actions) ... Actions: 23266/23382 actions (Updating modified actions) Actions: Completed 23382 actions in 96.16 seconds. Finalize: Updating package state database ... Done Finalize: Updating package cache ... Done Finalize: Updating image state ... Done Finalize: Creating fast lookup database ... Done Finalize: Reading search index ... Done Finalize: Building new search index ... Done Finalize: Linked images: 0/2 done; 2 working: zone:z1 zone:z2 Finalize: Linked images: 1/2 done; 1 working: zone:z2 Finalize: Finished processing linked images. A clone of s11 exists and has been updated and activated. On the next boot the Boot Environment s11u1 will be mounted on '/'. Reboot when ready to switch to this updated BE.