软件包使用 pkgadd 命令进行安装。此命令从分发介质或目录转换软件包的内容并将其安装到系统上。
本节提供有关安装软件包以便验证安装正确的基本安装说明。
系统中安装的所有软件包的信息都保存在安装软件数据库中。对于软件包中的每个对象都有一个条目,其中包含组件名、组件的驻留位置及其类型等信息。这类条目包含以下信息:组件所属软件包的记录;可能引用该组件的其他软件包;以及路径名、组件的驻留位置和组件类型等信息。条目由 pkgadd 和 pkgrm 命令自动添加和删除。您可以使用 pkgchk 和 pkginfo 命令来查看数据库中的信息。
与每个软件包组件相关联的信息有两种。属性信息描述了组件本身。例如,组件的访问权限、所有者 ID 和组 ID 是属性信息。内容信息描述组件的内容,例如文件大小和上次修改时间。
安装软件数据库可跟踪软件包的状态。软件包或者是完全安装(它已经成功完成安装过程),或者是部分安装(它没有成功完成安装过程)。
当软件包部分安装时,在安装终止之前可能已安装软件包的某些部分;因此,部分软件包被安装并记录在数据库中,而部分软件包则没有安装。当您重新安装软件包时,系统将提示您从上次安装停止的位置开始安装,因为 pkgadd 命令可以访问数据库并检测哪些部分已经安装。您还可以使用 pkgrm 命令,根据安装软件数据库中的信息删除已经安装的部分。
如果 pkgadd 命令遇到问题,它会首先检查安装管理文件中的说明。(有关更多信息,请参见 admin(4)。)如果不存在任何说明,或者如果管理文件中的相关参数被设置为 ask,pkgadd 将显示一条消息,描述该问题并提示用户进行答复。该提示通常是 Do you want to continue with this installation?您应该回答 yes、no 或 quit。
如果您已指定多个软件包,回答 no 将停止正在进行的软件包安装,但 pkgadd 会继续安装其他软件包。quit 指示 pkgadd 应该停止所有软件包的安装。
本节介绍如何在同构环境中的独立系统或服务器系统上安装软件包。
如果需要,请参见生成软件包。
以超级用户身份登录系统。
向系统中添加软件包。
# pkgadd -d device-name [pkg-abbrev...] |
-d device-name |
指定软件包的位置。请注意,device-name 可以是完整的目录路径名或者磁带、软盘或可移除磁盘的标识符。 |
pkg-abbrev |
要添加的一个或多个软件包的名称(以空格分隔)。如果省略, pkgadd 将安装所有可用的软件包。 |
要从名为 /dev/rmt/0 的磁带设备安装名为 pkgA 的软件包,您需要输入以下命令:
# pkgadd -d /dev/rmt/0 pkgA |
您还可以同时安装多个软件包(只要您使用空格分隔软件包名称),如下所示:
# pkgadd -d /dev/rmt/0 pkgA pkgB pkgC |
如果您不指定软件包所驻留的设备,该命令将检查缺省的假脱机目录 (/var/spool/pkg)。如果软件包不在缺省的假脱机目录中,安装将失败。
如果您已准备好执行下一个任务,请参见如何验证软件包的完整性。