软件管理涉及到安装或删除软件产品。Sun 及其第三方 ISV 以一个或多个软件包的集合的形式提供软件。
打包一词通常是指在将软件产品分发和安装到将使用它们的系统上时所使用的方法。软件包中包含一组具有所定义格式的文件和目录。该格式符合应用程序二进制接口 (application binary interface, ABI),ABI 是对系统 V 接口定义的补充。Solaris OS 提供了一组可解释此格式的实用程序,并提供了用来安装软件包、删除软件包或校验软件包安装情况的方法。
修补程序 是对 Solaris OS 或其他支持的软件中的已知或潜在的问题的修复的集合。修补程序还可提供新功能或对特定软件发行版的增强功能。修补程序由替换或更新现有文件和目录的文件和目录组成。大多数 Solaris 修补程序是以一系列稀疏软件包的形式提供的。
稀疏软件包仅包含自此软件包初次作为 Solaris 分发中的一部分提供以后有更改的对象。与作为完整的软件包重新分发来提供软件更新相比,稀疏软件包中存储的修补程序较小。提供稀疏软件包还可使对用户环境的更改降到最小。有关修补程序的更多信息,请参见 在 Oracle Solaris 操作系统中管理修补程序。
软件包可以包含数字签名。带有有效数字签名的软件包可确保在向软件包应用签名之后,未曾对该软件进行过修改。使用已签名的软件包是下载或添加软件包较为安全的方法,因为在将软件包添加到系统之前可以对数字签名进行检验。
对于已签名的修补程序同样如此。带有有效数字签名的修补程序可确保在向修补程序应用签名之后,未曾对该修补程序进行过修改。使用已签名的修补程序是下载或应用修补程序较为安全的方法,因为在将修补程序应用于系统之前可以对数字签名进行检验。
有关向系统应用已签名的修补程序的更多信息,请参见 使用 patchadd 命令管理修补程序(任务图)。
有关创建已签名软件包的信息,请参见《应用程序包开发者指南》。
除了数字签名,已签名的软件包与未签名的软件包完全相同。使用现有的 Solaris 打包工具可以安装、查询或删除软件包。带签名的软件包还与不带签名的软件包二进制兼容。
必须用受信任证书设置软件包密钥库,才能使用 pkgadd 和 patchadd 将带有数字签名的软件包或修补程序添加到系统中。这些证书用来识别软件包或修补程序的数字签名是否有效。
对软件包密钥存储区的访问由专门的口令保护,该口令由您在向系统的软件包密钥存储区导入 Oracle 证书时指定。
有关使用证书验证已签名的软件包和修补程序的说明,请转至 http://download.oracle.com/docs/cd/E17476_01/javase/1.4.2/docs/tooldocs/solaris/keytool.html。
下面介绍与已签名的软件包和修补程序相关的一般术语。
根据需要查询的证书和密钥的系统信息库。
Java 密钥库-在缺省情况下随 Solaris 发行版安装的证书的系统信息库。Java 密钥库通常存储在 /usr/j2se/jre/lib/security 目录中。
软件包密钥库-在将已签名的软件包和修补程序添加到系统时所导入证书的系统信息库。
缺省情况下,软件包密钥库存储在 /var/sadm/security 目录中。
用来存放属于另一个实体的公钥的证书。之所以这样命名受信任证书,是因为密钥库属主相信证书中的公钥确实属于由证书的主题或拥有者所标识的身份。证书的颁发者通过对证书进行签名来确保证书的真实性。
在检验签名时,或者在启动到安全 (SSL) 服务器的连接时,可以使用受信任证书。
用来存放敏感的加密密钥信息。加密密钥信息以受保护的格式存储,可防止进行未经授权的访问。用户密钥中既包含用户的私钥又包含与私钥相对应的公钥证书。
使用 pkgadd 或 patchadd 命令向系统中添加已签名的软件包或修补程序的过程涉及到以下三个基本步骤:
通过使用 pkgadm 命令来将证书添加到系统的软件包密钥库中。
(可选)通过使用 pkgadm 命令来列出证书。
通过使用 pkgadd 命令来添加软件包或者通过使用 patchadd 命令来应用修补程序。
有关使用 patchadd 命令向系统中应用已签名修补程序的逐步说明,请参见 使用 patchadd 命令管理修补程序(任务图)。