Step by Step Upgrade Linux 8.2 to 8.4 (Oracle Enterprise Linux)

In a recent blog, we demonstrated Step by Step Install Linux 8 (OEL) along with Guest Addition, in this article, we will perform Step by Step Upgrade Linux 8.2 to 8.4 (Oracle Enterprise Linux). 

To upgrade OEL 8.2 to 8.4, we will be using command-line utility yum on server Linux.

1. Prechecks

Capture the system’s kernel release,  OS version, etc before the upgrade.  

[root@DBsGuruN ~]# grubby --default-kernel
[root@DBsGuruN ~]# grubby --info=ALL | grep kernel=\"
[root@DBsGuruN ~]# uname -a
Linux DBsGuruN.dbsguru.com 5.4.17-2011.1.2.el8uek.x86_64 #2 SMP Mon Apr 20 22:10:46 PDT 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@DBsGuruN ~]# uname -r
[root@DBsGuruN ~]# cat /etc/oracle-release
Oracle Linux Server release 8.2

1.2: Validate yum repository on the server. Generally, it’s configured at the time of OS installation. In case missing of the repository, using wget command it can be configured.

[root@DBsGuruN ~]#  yum repolist
repo id                                                                    repo name
ol8_UEKR6                                                                  Latest Unbreakable Enterprise Kernel Release 6 for Oracle Linux 8 (x86_64)
ol8_appstream                                                              Oracle Linux 8 Application Stream (x86_64)
ol8_baseos_latest                                                          Oracle Linux 8 BaseOS Latest (x86_64)
[root@DBsGuruN ~]#

1.3: Validate check-update before upgrade.

[root@DBsGuruN ~]# yum check-update
Last metadata expiration check: 0:05:27 ago on Sat 05 Jun 2021 08:11:06 PM IST.

NetworkManager.x86_64                                                                           1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-adsl.x86_64                                                                      1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-bluetooth.x86_64                                                                 1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-config-server.noarch                                                             1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-libnm.x86_64                                                                     1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-team.x86_64                                                                      1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-tui.x86_64                                                                       1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-wifi.x86_64                                                                      1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
NetworkManager-wwan.x86_64                                                                      1:1.30.0-7.0.1.el8                                                                           ol8_baseos_latest
PackageKit.x86_64                                                                               1.1.12-6.0.1.el8                                                                             ol8_appstream
PackageKit-command-not-found.x86_64                                                             1.1.12-6.0.1.el8                                                                             ol8_appstream
PackageKit-glib.x86_64                                                                          1.1.12-6.0.1.el8                                                                             ol8_appstream
PackageKit-gstreamer-plugin.x86_64                                                              1.1.12-6.0.1.el8   
------------------Trimmed data------------------
webkit2gtk3.i686                                                                                2.30.4-1.el8                                                                                 ol8_appstream
    webkit2gtk3-plugin-process-gtk2.x86_64                                                      2.24.4-2.el8_1                                                                               @AppStream
webkit2gtk3.x86_64                                                                              2.30.4-1.el8                                                                                 ol8_appstream
    webkit2gtk3.x86_64                                                                          2.24.4-2.el8_1                                                                               @AppStream
webkit2gtk3.x86_64                                                                              2.30.4-1.el8                                                                                 ol8_appstream
    webkit2gtk3-plugin-process-gtk2.x86_64                                                      2.24.4-2.el8_1   

1.4: Before moving to upgrade OEL 8.2 to OEL 8.4, make sure to shutdown/stop all dependent databases, services, applications, etc. if applicable.

1.5: Take backup before upgrade so you will be free mind, having a backup is a best practice whenever you have change.

2. Upgrade

2.1: Using command yum update -y upgrade all available packages. Take a deep breath and wait for the completion of the upgrade (Install, upgrade, cleanup) which takes generally approx 30-45 minutes to complete the upgrade.

[root@DBsGuruN ~]# yum update -y
Last metadata expiration check: 0:08:21 ago on Sat 05 Jun 2021 08:11:06 PM IST.
Dependencies resolved.
 Package                                                         Architecture               Version                                                               Repository                             Size
 kernel                                                          x86_64                     4.18.0-305.3.1.el8_4                                                  ol8_baseos_latest                     5.9 M
 kernel-core                                                     x86_64                     4.18.0-305.3.1.el8_4                                                  ol8_baseos_latest                      36 M
 kernel-devel                                                    x86_64                     4.18.0-305.3.1.el8_4                                                  ol8_baseos_latest                      18 M
 kernel-modules                                                  x86_64                     4.18.0-305.3.1.el8_4                                                  ol8_baseos_latest                      28 M
 kernel-uek                                                      x86_64                     5.4.17-2102.201.3.el8uek                                              ol8_UEKR6                              62 M
 kernel-uek-devel                                                x86_64                     5.4.17-2102.201.3.el8uek                                              ol8_UEKR6                              17 M
 NetworkManager                                                  x86_64                     1:1.30.0-7.0.1.el8                                                    ol8_baseos_latest                     2.6 M
 NetworkManager-adsl                                             x86_64                     1:1.30.0-7.0.1.el8                                                    ol8_baseos_latest                     141 k
 NetworkManager-bluetooth                                        x86_64                     1:1.30.0-7.0.1.el8                                                    ol8_baseos_latest                     167 k
 NetworkManager-config-server                                    noarch                     1:1.30.0-7.0.1.el8                                                    ol8_baseos_latest                     128 k
------------------Trimmed data------------------
Transaction Summary
Install    42 Packages
Upgrade  1028 Packages

Total download size: 1.2 G
Downloading Packages:
(1/1070): iw-4.14-5.el8.x86_64.rpm                                                                                                                                            965 kB/s |  90 kB     00:00
(2/1070): setools-console-4.3.0-2.el8.x86_64.rpm                                                                                                                              210 kB/s |  42 kB     00:00
(3/1070): libxmlb-0.1.15-1.el8.x86_64.rpm                                                                                                                                     279 kB/s |  91 kB     00:00
(4/1070): fuse3-3.2.1-12.0.3.el8.x86_64.rpm                                                                                                                                   609 kB/s |  51 kB     00:00
------------------Trimmed data------------------
  python3-dasbus-1.2-2.el8.noarch                                                                                   python3-dnf-plugin-ulninfo-0.3-2.module+el8.4.0+20142+f119a2fa.noarch
  python3-pyodbc-4.0.30-2.el8.x86_64                                                                                selinux-policy-devel-3.14.3-67.0.1.el8.noarch
  setools-console-4.3.0-2.el8.x86_64                                                                                unixODBC-2.3.7-1.el8.x86_64

[root@DBsGuruN ~]#

2.2: Reboot the server upon completion of the upgrade.

[root@DBsGuruN ~]# reboot


[root@DBsGuruN ~]# shutdown -r now

3. Post validation

We saw before the upgrade OEL 8.2 Kernel version was 5.4.17-2011.1.2.el8uek.x86_64 and now upgraded to OEL 8.4 with Kernel version 5.4.17-2102.201.3.el8uek.x86_64.

[root@DBsGuruN ~]# grubby --default-kernel
[root@DBsGuruN ~]# grubby --info=ALL | grep kernel=\"
[root@DBsGuruN ~]# uname -a
Linux DBsGuruN.dbsguru.com 5.4.17-2102.201.3.el8uek.x86_64 #2 SMP Fri Apr 23 09:05:57 PDT 2021 x86_64 x86_64 x86_64 GNU/Linux
[root@DBsGuruN ~]# uname -r
[root@DBsGuruN ~]# cat  /etc/oracle-release
Oracle Linux Server release 8.4

3.2: Validate logs/command-line tool utility while upgrade and post-upgrade.

A. Open OS file /var/log/messages in an editor and review it errors.
B. Using command dmesg will validate any error while upgrade.
C. Use command ss -tulpn to verify network status

[root@DBsGuruN ~]# vi /var/log/messages
[root@DBsGuruN ~]# dmesg | grep -i 'err|warn|cri'
[root@DBsGuruN ~]# ss -tulpn
Netid        State         Recv-Q        Send-Q                                    Local Address:Port                Peer Address:Port       Process
udp          UNCONN        0             0                                               *           users:(("avahi-daemon",pid=963,fd=17))
udp          UNCONN        0             0                                                *           users:(("avahi-daemon",pid=963,fd=15))
udp          UNCONN        0             0                                            *           users:(("dnsmasq",pid=1652,fd=5))
udp          UNCONN        0             0                                           *           users:(("dnsmasq",pid=1652,fd=3))
udp          UNCONN        0             0                                                 *           users:(("rpcbind",pid=895,fd=5),("systemd",pid=1,fd=37))
udp          UNCONN        0             0                    [fe80::636d:b514:28b2:1942]%enp0s8:546                         [::]:*           users:(("NetworkManager",pid=1109,fd=32))
udp          UNCONN        0             0                                                  [::]:5353                        [::]:*           users:(("avahi-daemon",pid=963,fd=16))
udp          UNCONN        0             0                                                  [::]:60936                       [::]:*           users:(("avahi-daemon",pid=963,fd=18))
udp          UNCONN        0             0                                                  [::]:111                         [::]:*           users:(("rpcbind",pid=895,fd=7),("systemd",pid=1,fd=39))
tcp          LISTEN        0             128                                                *           users:(("sshd",pid=1119,fd=5))
tcp          LISTEN        0             5                                               *           users:(("cupsd",pid=1123,fd=10))
tcp          LISTEN        0             128                                            *           users:(("sshd",pid=3316,fd=15))
tcp          LISTEN        0             5                                             *           users:(("pmcd",pid=1510,fd=0))
tcp          LISTEN        0             5                                              *           users:(("pmlogger",pid=2250,fd=9))
tcp          LISTEN        0             128                                               *           users:(("rpcbind",pid=895,fd=4),("systemd",pid=1,fd=36))
tcp          LISTEN        0             32                                           *           users:(("dnsmasq",pid=1652,fd=6))
tcp          LISTEN        0             128                                                [::]:22                          [::]:*           users:(("sshd",pid=1119,fd=7))
tcp          LISTEN        0             5                                                 [::1]:631                         [::]:*           users:(("cupsd",pid=1123,fd=9))
tcp          LISTEN        0             128                                               [::1]:6010                        [::]:*           users:(("sshd",pid=3316,fd=14))
tcp          LISTEN        0             5                                                 [::1]:44321                       [::]:*           users:(("pmcd",pid=1510,fd=3))
tcp          LISTEN        0             5                                                 [::1]:4330                        [::]:*           users:(("pmlogger",pid=2250,fd=10))
tcp          LISTEN        0             128                                                [::]:111                         [::]:*           users:(("rpcbind",pid=895,fd=6),("systemd",pid=1,fd=38))

3.3: Optionally execute OS command hostnamectl which captures details of machine name, OS version, kernel version, etc.

[root@DBsGuruN ~]# hostnamectl
   Static hostname: DBsGuruN.dbsguru.com
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 611d311fe7b44c74b8fdb2b947ef45f7
           Boot ID: dfd1b8435c9c4463be798c1ac75e1f13
    Virtualization: oracle
  Operating System: Oracle Linux Server 8.4
       CPE OS Name: cpe:/o:oracle:linux:8:4:server
            Kernel: Linux 5.4.17-2102.201.3.el8uek.x86_64
      Architecture: x86-64

3.4: Finally it’s time to perform checkout i.e to start all dependent databases, services, applications, etc if applicable.

Click here for Step by Step Install Linux 8 (OEL) along with Enable Guest Addition.
Click here for Step by Step Oracle 12cR2 Binary Installation and Database Creation On Linux.
Click here for How to Enable 64bit option in Oracle Virtual Machine while OS Installation on Window.

This document is just for learning purpose and always validate in the LAB environment first before applying in the LIVE environment.

Hope so you like this article
Please share your valuable feedback/comments/subscribe and follow us below and don’t forget to click on the bell icon to get the most recent update. Click here to understand more about our pursuit.

Related Articles


How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?


Hello and welcome to DBsGuru,DBsGuru is a group of experienced DBA professionals and serves databases and their related community by providing technical blogs, projects, training. Technical blogs are the source of vast information not about databases but its related product like middleware, PL/SQL, replication methodology, and so on.Thanks for the visits!Share Learn Grow!