9.6. yum 插件
yum 提供扩展和增强操作的插件。默认安装某些插件。每当您调用任何 yum
命令时,yum 始终会通知您加载和活动的插件(如果有)。例如:
~]# yum info yum Loaded plugins: langpacks, product-id, subscription-manager [output truncated]
请注意,Loaded 插件后面的插件
名称是您可以向 --disableplugin=plugin_name
选项提供的名称。
9.6.1. 启用、配置和禁用 Yum 插件
要启用 yum 插件,请确保 /etc/yum.conf
的 [main]
部分中存在以 plugins=
开头的行,并确保其值为 1
:
plugins=1
您可以通过将此行更改为 plugins=0
来禁用所有插件。
不建议禁用所有插件,因为某些插件提供重要的 yum 服务。特别是 product-id 和 subscription-manager 插件,它们为基于证书的 内容发布网络
(CDN)提供支持。全局禁用插件作为方便选项,通常仅在诊断 yum 潜在问题时才建议使用。
每个安装的插件在 /etc/yum/pluginconf.d/
目录中都有自己的配置文件。您可以在这些文件中设置插件特定选项。例如,以下是 aliases 插件的 aliases .conf
配置文件:
[main] enabled=1
与 /etc/yum.conf
文件类似,插件配置文件始终包含 [main]
部分,其中 enabled=
选项控制在运行 yum
命令时插件是否启用。如果缺少这个选项,您可以手动将其添加到该文件中。
如果您通过在 /etc/yum.conf
中设置 enabled=0
来禁用所有插件,则所有插件都会禁用,无论它们的各个配置文件中是否启用了它们。
如果您只想禁用单个 yum 命令
的所有 yum 插件,请使用 --noplugins
选项。
如果要为单个 yum 命令
禁用一个或多个 yum 插件,请在该命令中添加 --disableplugin=plugin_name
选项。例如,要在更新系统时禁用 aliases 插件,请输入:
~]# yum update --disableplugin=aliases
您提供给 --disableplugin=
选项的插件名称与任何 yum
命令输出中 Loaded plugins
行后列出的名称相同。您可以通过逗号分隔多个插件。另外,您可以使用 glob 表达式匹配多个插件名称或缩短长名称:
~]# yum update --disableplugin=aliases,lang*
9.6.2. 安装额外的 Yum 插件
yum 插件通常遵循 yum-plugin-plugin_name
package-naming 规则,但并不总是如此:提供 kabi 插件的软件包名为 kabi-yum-plugins
。您可以像安装其他软件包一样安装 yum 插件。例如,要安装 yum-aliases 插件,在 shell 提示符后输入以下内容:
~]# yum install yum-plugin-aliases
9.6.3. 使用 Yum 插件
以下列表提供了多个有用的 yum 插件的说明和用法说明。插件按照名称列出,方括号中含有软件包的名称。
- search-disabled-repos (subscription-manager)
search-disabled-repos 插件允许您临时或永久启用禁用的软件仓库,以帮助解决依赖项。启用此插件后,当 Yum 由于依赖项解析失败而无法安装软件包时,它提供 暂时启用禁用的存储库并重试。如果安装成功,Yum 也提供可永久启用已使用存储库的存储库。请注意,该插件仅适用于由 subscription-manager 管理的存储库,而不是自定义存储库。
重要如果使用
--assumeyes
或-y
选项执行yum
,或者在/etc/yum.conf
中启用了assumeyes
指令,则插件可在不提示确认的情况下暂时和永久启用禁用的存储库。这可能会导致问题,例如启用您不想启用的软件仓库。要配置 search-disabled-repos 插件,编辑位于
/etc/yum/pluginconf.d/search-disabled-repos.conf
中的配置文件。有关您可以在[main]
部分中使用的指令列表,请参考下表。表 9.3. 支持的 search-disabled-repos.conf 指令 指令 描述 enabled
=value允许您启用或禁用插件。该 值 必须是
1
(启用)或0
(禁用)。插件默认启用。notify_only
=value允许您将插件的行为限制为仅通知。该 值 必须是
1
(仅不修改 Yum 的行为)或0
(修改 Yum 的行为)。默认情况下,插件仅通知用户。ignored_repos
=repositories允许您指定插件不会启用的存储库。
- kabi (kabi-yum-plugins)
kabi 插件检查驱动程序更新软件包是否符合官方 Red Hat kernel Application Binary Interface( kABI)。启用此插件后,当用户尝试安装使用不在白名单中的内核符号的软件包时,会将警告消息写入系统日志。另外,将插件配置为以强制模式运行可防止安装此类软件包。
要配置 kabi 插件,请编辑位于
/etc/yum/pluginconf.d/kabi.conf
中的配置文件。下表中显示了[main]
部分中可以使用的指令列表。表 9.4. 支持的 kabi.conf 指令 指令 描述 enabled
=value允许您启用或禁用插件。该 值 必须是
1
(启用)或0
(禁用)。安装之后,插件会被默认启用。whitelists
=directory允许您指定包含内核符号的文件所在的目录。默认情况下,kabi 插件使用 kernel-abi-whitelists 软件包(即
/usr/lib/modules/kabi-rhel70/
目录)提供的文件。enforce
=value允许您启用或禁用强制模式。该 值 必须是
1
(启用)或0
(禁用)。默认情况下,这个选项被注释掉,kabi 插件只会显示警告消息。- product-id (subscription-manager)
- product-id 插件管理从 Content Delivery Network 安装的产品的产品身份证书。product-id 插件会被默认安装。
- 语言包( yum-langpacks)
- langpacks 插件用于为安装的每个软件包搜索所选语言的区域化软件包。langpacks 插件默认安装。
- 别名 (yum-plugin-aliases)
-
aliases 插件 添加 alias 命令行选项
,
该选项允许为yum
命令配置和使用别名。 - yum-changelog (yum-plugin-changelog)
-
yum-changelog 插件添加
--changelog
命令行选项,可启用在更新之前和之后查看软件包更改日志。 - yum-tmprepo (yum-plugin-tmprepo)
-
yum-tmprepo 插件添加
--tmprepo
命令行选项,该选项采用存储库文件的 URL,下载并启用该存储库文件。此插件会尝试确保安全地临时使用存储库。默认情况下,它不允许禁用 gpg 检查。 - yum-verify (yum-plugin-verify)
-
yum-verify 插件添加了
verify
、valid-rpm
和verify-all
命令行选项,用于查看系统上的验证数据。 - yum-versionlock (yum-plugin-versionlock)
-
yum-versionlock 插件排除所选软件包的其他版本,这可防止软件包被新版本更新。使用
versionlock
命令行选项,您可以查看和编辑锁定的软件包列表。