How to Update CentOS 7.0/7.1/7.2/7.3 to CentOS 7.4


CentOS has released its major release of CentOS 7.4 on 13th September 2017, a month later the release of RHEL 7.4. Since from the day of release, you might be looking for upgrading the current version to latest CentOS release.

This post is mainly focusing on upgrading the previous version of CentOS 7.x to the latest version (Centos 7.4 at the time writing). Before going to update, let’s take a look at the main changes in the latest version.

Major changes:

  1. CentOS can report bugs directly to via new abrt release.
  2. OpenSSL now supports Datagram Transport Layer Security (DTLS).
  3. Amazon ENA – Elastic Network Adapter drivers have been added to the kernel
  4. Technology Preview: Btrfs, OverlayFS, CephFS, the Cisco VIC and usNIC kernel driver and much more.

See CentOS 7.4 release note for more information.

Before performing the OS upgrade, it is recommended to take a backup of important files to secure location.

Check the current version of your release.

# cat /etc/redhat-release
CentOS Linux release 7.0.1406 (Core)

From the above, you can see that my machine is running CentOS 7.0

Now, let’s look what the updates available for your system are.

# yum check-update

The following are the updates available for my machine.

Loaded plugins: fastestmirror
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
base                                                                                                                                             | 3.6 kB  00:00:00
extras                                                                                                                                           | 3.4 kB  00:00:00
updates                                                                                                                                          | 3.4 kB  00:00:00
(1/4): base/7/x86_64/group_gz                                                                                                                    | 155 kB  00:00:02
(2/4): extras/7/x86_64/primary_db                                                                                                                | 139 kB  00:00:02
(3/4): updates/7/x86_64/primary_db                                                                                                               | 3.9 MB  00:00:05
(4/4): base/7/x86_64/primary_db                                                                                                                  | 5.6 MB  00:00:07
Determining fastest mirrors

ModemManager-glib.x86_64                                                       1.6.0-2.el7                                                                     base
NetworkManager.x86_64                                                          1:1.4.0-17.el7_3                                                                updates
NetworkManager-glib.x86_64                                                     1:1.4.0-17.el7_3                                                                updates
NetworkManager-tui.x86_64                                                      1:1.4.0-17.el7_3                                                                updates
alsa-firmware.noarch                                                           1.0.28-2.el7                                                                    base
alsa-lib.x86_64                                                                1.1.1-1.el7                                                                     base

.   .   .
.   .   .

yum-plugin-fastestmirror.noarch                                                1.1.31-40.el7                                                                   base
zlib.x86_64                                                                    1.2.7-17.el7                                                                    base
Obsoleting Packages
NetworkManager.x86_64                                                          1:1.4.0-17.el7_3                                                                updates
    NetworkManager.x86_64                                                      1:                                            @anaconda
NetworkManager-adsl.x86_64                                                     1:1.4.0-17.el7_3                                                                updates
    NetworkManager.x86_64                                                      1:                                            @anaconda
NetworkManager-bluetooth.x86_64                                                1:1.4.0-17.el7_3                                                                updates
    NetworkManager.x86_64                                                      1:                                            @anaconda
NetworkManager-team.x86_64                                                     1:1.4.0-17.el7_3                                                                updates
    NetworkManager.x86_64                                                      1:                                            @anaconda

If you are satisfied with the updates, let’s issue the following command to install the same.

# yum update

You will get the package details along with the download size, and you need to press Y and Enter to begin the update.

  GeoIP                                              x86_64                      1.5.0-11.el7                                         base                         1.1 M
 NetworkManager-libnm                               x86_64                      1:1.4.0-17.el7_3                                     updates                      443 k
 bluez-libs                                         x86_64                      5.41-1.el7                                           base                          79 k
 firewalld-filesystem                               noarch                                              updates                       44 k
 ipset                                              x86_64                      6.19-6.el7                                           base                          37 k
 ipset-libs                                         x86_64                      6.19-6.el7                                           base                          47 k
 kbd-legacy                                         noarch                      1.15.5-12.el7                                        base                         465 k
 libaio                                             x86_64                      0.3.109-13.el7                                       base                          24 k
 lsscsi                                             x86_64                      0.27-4.el7                                           base                          47 k
 python-firewall                                    noarch                                              updates                      301 k
 python-perf                                        x86_64                      3.10.0-514.10.2.el7                                  updates                      4.0 M
 trousers                                           x86_64                      0.3.13-1.el7                                         base                         289 k

Transaction Summary
Install    8 Packages (+12 Dependent packages)
Upgrade  216 Packages

Total download size: 224 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/236): NetworkManager-adsl-1.4.0-17.el7_3.x86_64.rpm                                                                                           | 145 kB  00:00:04
(2/236): ModemManager-glib-1.6.0-2.el7.x86_64.rpm                                                                                                | 232 kB  00:00:05
(3/236): NetworkManager-bluetooth-1.4.0-17.el7_3.x86_64.rpm                                                                                      | 165 kB  00:00:02
(4/236): GeoIP-1.5.0-11.el7.x86_64.rpm                                                                                                           | 1.1 MB  00:00:08
(5/236): NetworkManager-glib-1.4.0-17.el7_3.x86_64.rpm                                                                                           | 385 kB  00:00:05
(6/236): NetworkManager-1.4.0-17.el7_3.x86_64.rpm                                                                                                | 2.5 MB  00:00:12
(7/236): NetworkManager-team-1.4.0-17.el7_3.x86_64.rpm                                                                                           | 147 kB  00:00:03
(8/236): NetworkManager-libnm-1.4.0-17.el7_3.x86_64.rpm                                                                                          | 443 kB  00:00:04
(9/236): NetworkManager-tui-1.4.0-17.el7_3.x86_64.rpm                                                                                            | 223 kB  00:00:03
(10/236): NetworkManager-wifi-1.4.0-17.el7_3.x86_64.rpm                                                                                          | 175 kB  00:00:04

Once the packages are downloaded, the installer will automatically start installing it. You may need to accept the GPG signing key if it prompts.

  tuned.noarch 0:2.7.1-3.el7_3.1                                                    tzdata.noarch 0:2017b-1.el7
  util-linux.x86_64 0:2.23.2-33.el7                                                 vim-minimal.x86_64 2:7.4.160-1.el7_3.1
  virt-what.x86_64 0:1.13-8.el7                                                     wpa_supplicant.x86_64 1:2.0-21.el7_3
  xfsprogs.x86_64 0:4.5.0-9.el7_3                                                   xz.x86_64 0:5.2.2-1.el7
  xz-libs.x86_64 0:5.2.2-1.el7                                                      yum.noarch 0:3.4.3-150.el7.centos
  yum-plugin-fastestmirror.noarch 0:1.1.31-40.el7                                   zlib.x86_64 0:1.2.7-17.el7

  NetworkManager.x86_64 1:                         libertas-sd8686-firmware.noarch 0:20140213-0.3.git4164c23.el7
  libertas-sd8787-firmware.noarch 0:20140213-0.3.git4164c23.el7                      libertas-usb8388-firmware.noarch 2:20140213-0.3.git4164c23.el7


Once completed, reboot the machine

# reboot

If the system doesn’y boot with the new kernel, then consider booting to old kernel and then reinstall the newly installed kernel.

READ: How to boot with an old kernel version in CentOS 7 / RHEL7

You can verify CentOS version.

# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

That’s All. Now your system has the latest version of CentOS.

Further Reading

You might also like

How to Update CentOS 7.0/7.1/7.2/7.3 to CentOS 7.4