所有软件包都必须通过 pkgchk 验证。在创建软件包之后以及安装它之前,必须使用以下命令对其进行检查。
# pkgchk -d dir_name pkg_name |
指定该软件包所驻留的目录的名称
指定该软件包的名称
创建软件包后,必须通过使用 pkgadd 的 -R dir_name 选项将该软件包安装到备用根 (/) 文件系统位置,以便对该软件包进行测试。安装软件包后,必须使用 pkgchk 命令检查软件包的正确性,如本例所示。
# pkgadd -d . -R /a SUNWvxvm # pkgchk -R /a SUNWvxvm |
不应显示任何错误。
如果软件包位于 /export/SUNWvxvm,则可以使用以下命令。
# pkgchk -d /export SUNWvxvm |
不应显示任何错误。
在创建、修改和删除文件时,其他命令可检查软件包。以下是一些命令示例。
例如,dircmp 或 fssnap 命令可用于检验软件包是否运行正常。
同时,ps 命令可用于测试守护进程的适合性,方法是确保守护进程未被该软件包停止或启动。
truss、pkgadd -v 和 pkgrm 命令可测试运行时软件包安装的适应性,但可能不会在所有情况下都有效。在以下示例中,truss 命令除去了所有只读的非 $TEMPDIR 访问,而对于没有位于指定的非活动引导环境中的那些路径,该命令仅显示对它们的非只读访问。
# TEMPDIR=/a; export TEMPDIR # truss -t open /usr/sbin/pkgadd -R ${TEMPDIR} SUNWvxvm \ 2>&1 > /dev/null | grep -v O_RDONLY | grep -v \ 'open("'${TEMPDIR} |