CentOS 使用yum update 更新時保留特定版本的軟件

有時須要保留特定版本的軟件不升級,但升級其餘軟件,這時就需求用到下面的技巧。php

當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]部分下面添加如下行,輸入:debug

exclude=php* kernel*

最後,它應以下所示:code

[ 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

這裏:date

  • all:禁用全部排除
  • main:禁用yum.conf中[main]中定義的排除
  • repoid:禁用爲給定repo id定義的排除

yum -exclude 命令行選項

最後,您能夠使用如下語法在命令行上跳過yum命令更新:
注意:上述語法將按名稱排除特定包,或者從全部存儲庫的更新中排除。file

# yum --exclude=package\* update
# yum --exclude=php\* update
# yum --exclude=kernel\* update
# yum -x 'kernel*' -x 'php*' update

推薦讀物

有關更多信息,請使用如下命令查看yum命令的手冊頁:plugin

$ man yum
$ man yum.conf
相關文章
相關標籤/搜索