Search

Top 60 Oracle Blogs

Recent comments

Upgrading oraclelinux-release-el7 might trigger an upgrade to UEK Release 6

While building a demo environment for an upcoming presentation I noticed an upgrade from UEK 5 to UEK 6 on my Oracle Linux 7 VM. As it turned out, the kernel change has been triggered by an upgrade of oraclelinux-release-el7 RPM. I am a great fan of Oracle’s UEK and the team behind it, so this is a welcome change for me. It might however meet you unprepared, which is why I put this little article together.

Whether or not the contents of my article applies to you depends on your yum configuration, and the source of your packages.

Background

Oracle split the monolithic public-yum.repo file into more manageable parts a little while ago (see for example my older post here). The bulk of the files in /etc/yum.repos.d is managed by the aforementioned oraclelinux-release-el7 package:

[opc@simplevm ~]$ rpm -ql oraclelinux-release-el7
/etc/yum.repos.d/oracle-linux-ol7.repo
/etc/yum.repos.d/uek-ol7.repo
/etc/yum.repos.d/virt-ol7.repo
/usr/bin/ol_yum_configure.sh
/usr/share/doc/oraclelinux-release-el7
/usr/share/doc/oraclelinux-release-el7/LICENSE
[opc@simplevm ~]$  

To prove the point I spun up a VM in Oracle Cloud Infrastructure based on the latest Oracle Linux image at the time of writing: Oracle-Linux-7.8-2020.09.23-0. The image is based on Oracle Linux 7.8 with fixes up to September 23rd. It ships with UEK5 4.14.35-1902.306.2.el7uek.x86_64.

The following yum repositories are configured when the machine comes up:

[opc@simplevm ~]$ sudo yum repolist 
Loaded plugins: langpacks, ulninfo
repo id                         repo name                                                                         status
ol7_UEKR5/x86_64                Latest Unbreakable Enterprise Kernel Release 5 for Oracle Linux 7Server (x86_64)     217
ol7_addons/x86_64               Oracle Linux 7Server Add ons (x86_64)                                                467
ol7_developer/x86_64            Oracle Linux 7Server Development Packages (x86_64)                                 1,611
ol7_developer_EPEL/x86_64       Oracle Linux 7Server EPEL Packages for Development (x86_64)                       33,126
ol7_ksplice                     Ksplice for Oracle Linux 7Server (x86_64)                                          8,957
ol7_latest/x86_64               Oracle Linux 7Server Latest (x86_64)                                              20,917
ol7_oci_included/x86_64         Oracle Software for OCI users on Oracle Linux 7Server (x86_64)                       627
ol7_optional_latest/x86_64      Oracle Linux 7Server Optional Latest (x86_64)                                     15,257
ol7_software_collections/x86_64 Software Collection Library release 3.0 packages for Oracle Linux 7 (x86_64)      15,366
repolist: 96,545
[opc@simplevm ~]$  

The effect of upgrading oraclelinux-release-el7

To cut a long story short let’s update oraclelinux-release-el7:

[opc@simplevm ~]$ rpm -q oraclelinux-release-el7
oraclelinux-release-el7-1.0-12.1.el7.x86_64
[opc@simplevm ~]$ sudo yum upgrade oraclelinux-release-el7
Loaded plugins: langpacks, ulninfo
Resolving Dependencies
--> Running transaction check
---> Package oraclelinux-release-el7.x86_64 0:1.0-12.1.el7 will be updated
---> Package oraclelinux-release-el7.x86_64 0:1.0-13.1.el7 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                               Arch                 Version                      Repository                Size
========================================================================================================================
Updating:
 oraclelinux-release-el7               x86_64               1.0-13.1.el7                 ol7_latest                19 k

Transaction Summary
========================================================================================================================
Upgrade  1 Package

Total download size: 19 k
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
oraclelinux-release-el7-1.0-13.1.el7.x86_64.rpm                                                  |  19 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : oraclelinux-release-el7-1.0-13.1.el7.x86_64                                                          1/2 
warning: /etc/yum.repos.d/oracle-linux-ol7.repo created as /etc/yum.repos.d/oracle-linux-ol7.repo.rpmnew
  Cleanup    : oraclelinux-release-el7-1.0-12.1.el7.x86_64                                                          2/2 
  Verifying  : oraclelinux-release-el7-1.0-13.1.el7.x86_64                                                          1/2 
  Verifying  : oraclelinux-release-el7-1.0-12.1.el7.x86_64                                                          2/2 

Updated:
  oraclelinux-release-el7.x86_64 0:1.0-13.1.el7                                                                         

Complete!
[opc@simplevm ~]$  

Once that’s done, let’s compare the list of enabled repositories:

[opc@simplevm ~]$ sudo yum repolist
Loaded plugins: langpacks, ulninfo
ol7_UEKR6                                                                                        | 2.8 kB  00:00:00     
ol7_addons                                                                                       | 2.8 kB  00:00:00     
ol7_latest                                                                                       | 3.4 kB  00:00:00     
ol7_optional_latest                                                                              | 2.8 kB  00:00:00     
(1/2): ol7_UEKR6/x86_64/updateinfo                                                               |  52 kB  00:00:00     
(2/2): ol7_UEKR6/x86_64/primary_db                                                               | 7.6 MB  00:00:00     
repo id                         repo name                                                                         status
ol7_UEKR6/x86_64                Latest Unbreakable Enterprise Kernel Release 6 for Oracle Linux 7Server (x86_64)     174
ol7_addons/x86_64               Oracle Linux 7Server Add ons (x86_64)                                                467
ol7_developer/x86_64            Oracle Linux 7Server Development Packages (x86_64)                                 1,611
ol7_developer_EPEL/x86_64       Oracle Linux 7Server EPEL Packages for Development (x86_64)                       33,126
ol7_ksplice                     Ksplice for Oracle Linux 7Server (x86_64)                                          8,957
ol7_latest/x86_64               Oracle Linux 7Server Latest (x86_64)                                              20,917
ol7_oci_included/x86_64         Oracle Software for OCI users on Oracle Linux 7Server (x86_64)                       627
ol7_optional_latest/x86_64      Oracle Linux 7Server Optional Latest (x86_64)                                     15,257
ol7_software_collections/x86_64 Software Collection Library release 3.0 packages for Oracle Linux 7 (x86_64)      15,366
repolist: 96,502 

If you look carefully you notice the absence of the previously present ol7_UEKR5 repository, which has been replaced by ol7_UEKR6. If you were to upgrade kernel-uek – after all there are more recent 4.14.x kernels out there – you might be surprised:

[opc@simplevm ~]$ sudo yum upgrade kernel-uek
Loaded plugins: langpacks, ulninfo
Resolving Dependencies
--> Running transaction check
---> Package kernel-uek.x86_64 0:5.4.17-2011.7.4.el7uek will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                   Arch                  Version                                 Repository                Size
========================================================================================================================
Installing:
 kernel-uek                x86_64                5.4.17-2011.7.4.el7uek                  ol7_UEKR6                 58 M

Transaction Summary
========================================================================================================================
Install  1 Package

Total download size: 58 M
Installed size: 65 M 

Had I hit return at this stage, my system would have upgraded UEK5 to UEK6.

This is exactly the upgrade I would have done, but you might not. UEK Release 6 is still relatively fresh out there, and you should dobule-check if your Oracle software is certified with it. This applies specifically to ASM Filter Driver, ASM Cluster File System (ACFS) and ASMLib. To stick with UEK Release 5 for now you can either change the yum configuration in /etc/yum.repos.d/uek-ol7.repo or alternatively call yum-config-manager.

Since I tend to perform all these tasks with Ansible, I simply go with the proven enablerepo/disablerepo attributes:

  - name: update all packages (remain on the UEK5 branch)
    yum:
      name: '*'
      state: latest
      enablerepo: ol7_UEKR5
      disablerepo: ol7_UEKR6
      update_cache: yes 

A similar approach is possible on the command line:

[opc@simplevm ~]$ sudo yum upgrade kernel-uek --enablerepo ol7_UEKR5 --disablerepo ol7_UEKR6
Loaded plugins: langpacks, ulninfo
Resolving Dependencies
--> Running transaction check
---> Package kernel-uek.x86_64 0:4.14.35-2025.401.4.el7uek will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                  Arch                 Version                                    Repository               Size
========================================================================================================================
Installing:
 kernel-uek               x86_64               4.14.35-2025.401.4.el7uek                  ol7_UEKR5                53 M

Transaction Summary
========================================================================================================================
Install  1 Package

Total download size: 53 M
Installed size: 58 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
kernel-uek-4.14.35-2025.401.4.el7uek.x86_64.rpm                                                  |  53 MB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : kernel-uek-4.14.35-2025.401.4.el7uek.x86_64                                                          1/1 

...

  Verifying  : kernel-uek-4.14.35-2025.401.4.el7uek.x86_64                                                          1/1 

Installed:
  kernel-uek.x86_64 0:4.14.35-2025.401.4.el7uek                                                                         

Complete!
[opc@simplevm ~]$  

This way I remained on UEK5.

Summary

By enabling the UEK5 repository while at the same time disabling the UEK6 repository I can remain on the Release 5 branch for now, until my Oracle Linux 7.x systems are generally ready for UEK Release 6.

Happy patching!