CentOS下 使用yum update 更新,不更新

8次阅读

共计 939 个字符,预计需要花费 3 分钟才能阅读完成。

有时需要保留特定版本的软件不升级,但升级其他软件,这时就需求用到下面的技巧。
当 CentOS/RHEL/Fedora 下的 Linux 服务器使用 yum update 时命令如何排除选定的包呢?
Yum 使用 /etc/yum/yum.conf 或 /etc/yum.conf 中的配置文件。您需要放置 exclude 指令来定义要更新或安装中排除的包列表。这应该是一个空格分隔的列表。允许使用通配符 * 和?)。
当我使用“yum update”时,如何排除 php 和内核包?打开 /etc/yum.conf 文件,输入:
# vi /etc/yum.conf

在 [main] 部分下面添加以下行,输入:
exclude=php* kernel*

最后,它应如下所示:
[main]
cachedir = /var/cache/yum
keepcache = 0
debuglevel = 2
logfile = /var/log/yum.log
distroverpkg = redhat-release
tolerant = 1
exactarch = 1
obsoletes = 1
gpgcheck = 1
plugins = 1
exclude =php* kernel*

保存并关闭文件。您现在可以照常使用 yum 命令,但不会安装某些软件包。
如何禁用排除?
您可以使用以下语法:
yum –disableexcludes = all update
yum –disableexcludes = main install php
yum –disableexcludes = repoid install php httpd

这里:

all:禁用所有排除
main:禁用 yum.conf 中 [main] 中定义的排除
repoid:禁用为给定 repo id 定义的排除

yum -exclude 命令行选项
最后,您可以使用以下语法在命令行上跳过 yum 命令更新:注意:上述语法将按名称排除特定包,或者从所有存储库的更新中排除。
# yum –exclude=package\* update
# yum –exclude=php\* update
# yum –exclude=kernel\* update
# yum -x ‘kernel*’ -x ‘php*’ update

推荐读物
有关更多信息,请使用以下命令查看 yum 命令的手册页:
$ man yum
$ man yum.conf

正文完
 0