如何在CentOS 7上安装更新

时间:2020-03-05 15:24:40  来源:igfitidea点击:

使CentOS系统保持最新并具有最新的安全更新是整个系统安全性中最重要的部分之一。
如果我们不使用最新的安全补丁更新操作系统的软件包,则计算机将很容易受到攻击。

推荐的方法是使用'yum-cron'自动执行更新。

另一种选择是手动更新系统。

在本教程中,我们将向我们展示如何在CentOS 7上手动更新系统软件包。
相同的说明适用于CentOS 6.

准备工作

要安装和更新软件包,我们需要以root用户或者具有sudo特权的用户身份登录。

在CentOS上更新软件包

RPM是Red Hat及其衍生产品(例如CentOS)使用的打包系统。

Yum是CentOS中的默认软件包管理器工具。
它用于从官方CentOS存储库以及其他第三方存储库中安装,删除,下载,查询和更新软件包。

在运行更新之前,可以使用以下命令检查可用更新:

sudo yum check-update

输出将包含所有可更新的软件包的列表:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.s.uw.edu
 * centos-sclo-rh: centos.s.uw.edu
 * centos-sclo-sclo: centos.s.uw.edu
 * epel: mirror.cherryservers.com
 * extras: centos.s.uw.edu
 * updates: centos.s.uw.edu
bind-libs-lite.x86_64                    32:9.9.4-74.el7_6.2             updates
bind-license.noarch                      32:9.9.4-74.el7_6.2             updates
curl.x86_64                              7.29.0-51.el7_6.3               updates
device-mapper.x86_64                     7:1.02.149-10.el7_6.8           updates
device-mapper-event.x86_64               7:1.02.149-10.el7_6.8           updates
device-mapper-event-libs.x86_64          7:1.02.149-10.el7_6.8           updates
device-mapper-libs.x86_64                7:1.02.149-10.el7_6.8           updates

要更新单个软件包,请使用“ yum install”命令,后跟要更新的软件包的名称。
例如,要仅更新“ curl”软件包,请运行:

sudo yum install curl

Yum将为我们提供将要更新的软件包的摘要,并提示我们进行确认。
回答“ y”,软件包将被更新。

Dependencies Resolved
================================================================================
 Package         Arch           Version                   Repository       Size
================================================================================
Updating:
 curl            x86_64         7.29.0-51.el7_6.3         updates         269 k
Updating for dependencies:
 libcurl         x86_64         7.29.0-51.el7_6.3         updates         222 k
Transaction Summary
================================================================================
Upgrade  1 Package (+1 Dependent package)
Total download size: 492 k
Is this ok [y/d/N]:

要更新所有软件包,请使用“ yum update”命令:

sudo yum update

该命令将更新存储库,并为我们提供所有可以更新的软件包的列表。
出现提示时,键入“ y”继续。

防止软件包被更新

有时,我们可能希望限制将软件包更新为新版本。
Yum插件的“ versionlock”使我们可以将软件包锁定到特定版本。

默认情况下未安装该插件,因此我们首先需要安装它:

sudo install yum-plugin-versionlock

在安装过程中,将在系统上创建两个配置文件,它们存储在“ /etc/yum/pluginconf.d”目录中。
配置文件“ versionlock.conf”和包含锁定包的文件“ versionlock.list”。
默认情况下,此文件中未列出任何软件包。

要锁定软件包的版本,我们可以在文件中手动添加软件包名称,也可以使用“ yum versionlock”命令后跟软件包名称。
例如,要阻止所有PHP软件包(所有以“ php-”开头的软件包)被更新,我们可以运行:

sudo yum versionlock php-*

这会将PHP软件包锁定为当前版本。

查看Yum日志

使用“ yum”安装和更新的软件包的历史记录记录在“/var/log/yum”文件中。
我们可以使用“ cat”或者“ tail”命令查看最新记录:

sudo tail /var/log/yum.log

输出将包括有关软件包安装和更新的记录:

May 23 16:00:04 Installed: 7:squid-3.5.20-12.el7_6.1.x86_64
May 31 22:27:16 Updated: libcurl-7.29.0-51.el7_6.3.x86_64
May 31 22:27:16 Updated: curl-7.29.0-51.el7_6.3.x86_64