跳过导航链接 | |
退出打印视图 | |
![]() |
添加和更新 Oracle Solaris 11.1 软件包 Oracle Solaris 11.1 Information Library (简体中文) |
如果指定的软件包是 group 依赖性的目标,可使用 pkg avoid 命令免除安装指定的软件包。始终可以显式安装与映像兼容的软件包,即使该软件包在避免列表中。安装避免列表中的软件包将从避免列表中删除该软件包。使用 pkg avoid 命令,可以避免在安装组软件包时,安装属于该组软件包的指定软件包。
/usr/bin/pkg avoid [pkg_fmri_pattern ...]
没有参数时,pkg avoid 命令显示免除的每个软件包以及对该软件包具有 group 依赖性的所有软件包。
指定 pkg_fmri_pattern 时,pkg avoid 命令将当前匹配指定模式的软件包名称放置到避免列表上。只能避免安装当前尚未安装的软件包。如果某个软件包当前是某个 group 依赖性的目标,则卸载该软件包会将它放置在避免列表中。
如果某个软件包在避免列表中,则安装该软件包会将它从该列表中删除。如果需要满足 require 依赖性,则会安装避免列表中的软件包。如果删除了该依赖性,则会卸载相应的软件包。
可使用 pkg unavoid 命令将指定的软件包从避免列表中删除。
/usr/bin/pkg unavoid [pkg_fmri_pattern ...]
使用此子命令无法删除避免列表中与某个已安装软件包的 group 依赖性相匹配的软件包。要从避免列表中删除与某个 group 依赖性相匹配的软件包,请安装该软件包。
以下命令输出显示未安装 group/feature/amp 组软件包,且属于该组软件包的所有软件包均未安装。这些软件包中的某些软件包可能已经显式安装,或作为其他软件包的 require 相关项进行了安装。
$ pkg list -a group/feature/amp NAME (PUBLISHER) VERSION IFO group/feature/amp 0.5.11-0.175.1.0.0.21.0 --- $ pkg list -a `pkg contents -o fmri -H -rt depend -a type=group group/feature/amp` NAME (PUBLISHER) VERSION IFO database/mysql-51 5.1.37-0.175.1.0.0.21.0 --- web/php-52 5.2.17-0.175.1.0.0.21.0 --- web/php-52/extension/php-apc 3.0.19-0.175.1.0.0.21.0 --- web/php-52/extension/php-mysql 5.2.17-0.175.1.0.0.21.0 --- web/server/apache-22 2.2.22-0.175.1.0.0.21.0 --- web/server/apache-22/module/apache-dtrace 0.3.1-0.175.1.0.0.21.0 --- web/server/apache-22/module/apache-fcgid 2.3.6-0.175.1.0.0.21.0 --- web/server/apache-22/module/apache-php5 5.2.17-0.175.1.0.0.18 --r
以下命令将属于该组软件包的某一个软件包放置在避免列表上。由于未安装组软件包,所以避免列表上未标注组软件包。
$ pfexec pkg avoid web/server/apache-22/module/apache-fcgid $ pkg avoid web/server/apache-22/module/apache-fcgid
以下命令显示在安装组软件包时未安装免除的软件包。安装组软件包后,组软件包被标注在避免列表上。
$ pfexec pkg install group/feature/amp ... $ pkg list -a `pkg contents -o fmri -H -rt depend -a type=group group/feature/amp` NAME (PUBLISHER) VERSION IFO database/mysql-51 5.1.37-0.175.1.0.0.21.0 i-- web/php-52 5.2.17-0.175.1.0.0.21.0 i-- web/php-52/extension/php-apc 3.0.19-0.175.1.0.0.21.0 i-- web/php-52/extension/php-mysql 5.2.17-0.175.1.0.0.21.0 i-- web/server/apache-22 2.2.22-0.175.1.0.0.21.0 i-- web/server/apache-22/module/apache-dtrace 0.3.1-0.175.1.0.0.21.0 i-- web/server/apache-22/module/apache-fcgid 2.3.6-0.175.1.0.0.21.0 --- web/server/apache-22/module/apache-php5 5.2.17-0.175.1.0.0.18 i-r $ pkg avoid web/server/apache-22/module/apache-fcgid (group dependency of 'group/feature/amp')
对于避免列表中的软件包,即使它属于已安装的组软件包,pkg unavoid 命令也不会从避免列表中删除此软件包。要从避免列表中删除此软件包,请安装此软件包。
$ pfexec pkg unavoid web/server/apache-22/module/apache-fcgid pkg unavoid: The following packages are a target of group dependencies; use install to unavoid these: web/server/apache-22/module/apache-fcgid $ pfexec pkg install web/server/apache-22/module/apache-fcgid $ pkg avoid $
如果某软件包已经安装,则您无法将此软件包放置在避免列表上。如果您卸载软件包,则此软件包将置于避免列表上。
$ pfexec pkg avoid web/server/apache-22/module/apache-fcgid pkg avoid: The following packages are already installed in this image; use uninstall to avoid these: web/server/apache-22/module/apache-fcgid $ pfexec pkg uninstall web/server/apache-22/module/apache-fcgid ... $ pkg avoid web/server/apache-22/module/apache-fcgid (group dependency of 'group/feature/amp')
卸载属于组软件包的软件包会自动将此软件包放置在避免列表上。
$ pfexec pkg uninstall database/mysql-51 $ pkg avoid database/mysql-51 (group dependency of 'group/feature/amp') web/server/apache-22/module/apache-fcgid (group dependency of 'group/feature/amp')
如果卸载组软件包,则避免安装的软件包仍位于避免列表上,但避免列表不再标注这些软件包与组软件包之间的关联。
$ pfexec pkg uninstall group/feature/amp $ pkg avoid database/mysql-51 web/server/apache-22/module/apache-fcgid $ pfexec pkg unavoid database/mysql-51 web/server/apache-22/module/apache-fcgid $ pkg avoid $