有时需要保留特定版本的软件不升级,但升级其他软件,这时就需求用到下面的技巧。当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
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。