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
感谢您的反馈!

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

更改软件包发布者

另一种常见使用情况是在新的发布者名称下重新发布软件包。将软件包从多个系统信息库中整合到单个系统信息库时,这很有用。例如,您可能希望将软件包从具有多个不同开发团队的系统信息库中整合到用于集成测试的单个系统信息库中。

要在新的发布者名称下重新发布,请使用上述示例中显示的 pkgrecvpkgmogrifypkgrepopkgsend 步骤。

以下样例转换将发布者更改为 mypublisher

<transform set name=pkg.fmri -> edit value pkg://[^/]+/ pkg://mypublisher/>

可以使用简单的 shell 脚本迭代系统信息库中的所有软件包。使用 pkgrecv --newest 命令的输出仅处理系统信息库中的最新软件包。

以下脚本将上述转换保存在名为 change-pub.mog 的文件中,然后从 development-repo 重新发布到新的系统信息库 mypublisher,从而在此过程中更改了软件包发布者:

#!/usr/bin/ksh93
pkgrepo create mypublisher
pkgrepo -s mypublisher set publisher/prefix=mypublisher
mkdir incoming
for package in $(pkgrecv -s ./development-repo --newest); do
    pkgrecv -s development-repo -d incoming --raw $package
done
for pdir in incoming/*/* ; do
    pkgmogrify $pdir/manifest change-pub.mog > $pdir/manifest.newpub
    pkgsend -s mypublisher publish -d $pdir $pdir/manifest.newpub
done

可以修改此脚本,使其能够执行各种任务,如仅选择某些软件包、对软件包的版本控制方案做出其他更改以及在其重新发布每个软件包时显示进度。