Getting Started with Oracle Unbreakable Enterprise Kernel Release 2
by Lenz Grimmer, March 2012
How to replace your Linux kernel with Release 2 of Oracle's Unbreakable Enterprise Kernel.
Introduction
This article describes how you can update your Oracle Linux systems to the latest version of the Unbreakable Enterprise Kernel. By switching to the latest Unbreakable Enterprise Kernel, you can get the latest innovations in mainline Linux. Switching is easy—applications and the operating system remain unchanged. There is no need to perform a full re-install; only the relevant RPM packages are replaced. You can obtain future updates easily from the Unbreakable Linux Network to keep your systems fully patched and secured.
At the time of this publishing, Unbreakable Enterprise Kernel Release 2 (version 2.6.39) was just released as an update for the first Unbreakable Enterprise Kernel (version 2.6.32). To learn more about the new features and benefits of using Unbreakable Enterprise Kernel Release 2, see the feature overview page and the release notes.
The examples used below are based on these versions, but a similar procedure should work for future kernel update releases as well.
This article describes two different installation methods:
- The first method, using the Oracle Unbreakable Linux Network, requires a valid Oracle Linux Support subscription.
- The second method involves obtaining the Unbreakable Enterprise Kernel from the public yum package repository.
It is assumed that you already have Oracle Linux 5 or 6 installed and you are running either the Unbreakable Enterprise Kernel Release 1 (2.6.32) or the Red Hat–compatible kernel (2.6.18 on Oracle Linux 5, 2.6.32 on Oracle Linux 6).
Unbreakable Enterprise Kernel Release 2 can be installed on Oracle Linux 5 Update 8 or newer, as well as on Oracle Linux 6 Update 2 or newer. If you're still running an older version of Oracle Linux, make sure you first update your system to the latest available minor release.
About the Unbreakable Enterprise Kernel for Oracle Linux
Oracle Linux with the Unbreakable Enterprise Kernel is Oracle's fully supported, tested, and certified Linux operating system for the enterprise. Oracle Linux is free to download, use, and distribute, and it is optimized to run Oracle hardware, databases, and middleware. You can obtain ISO images of the installation media from the Oracle Software Delivery Cloud without charge (requires registration).
The Oracle Linux base distribution is 100% userspace-compatible with Red Hat Enterprise Linux (RHEL). However, the Unbreakable Enterprise Kernel is released on an independent schedule and is always based on a recent version of the mainline Linux kernel. As a result, it delivers the latest innovations from mainline Linux, combined with tested performance and stability. It is installed and booted by default; major updates of the Unbreakable Enterprise Kernel are usually published every 12 to 18 months.
Installing the Unbreakable Enterprise Kernel from the Unbreakable Linux Network
The Unbreakable Linux Network (ULN) is a comprehensive and easy-to-use Website for Oracle Linux Support subscribers, which offers access to Linux software patches, updates, and fixes, along with documentation and support policies.
In order to get access to ULN you need to have a valid support subscription, which you can purchase online from the Oracle Linux Store.
Once you have successfully logged in to ULN, you first need to register your system. See the Unbreakable Linux Network FAQ for more details about this process. When you register a server, it is automatically subscribed to a channel that provides the latest Oracle Linux packages and updates for the respective version and architecture.
Continuously updated packages of the Unbreakable Enterprise Kernel are made available on ULN in a separate channel; you need to be subscribed to the appropriate channel for your system's operating system version.
Once your system is registered with ULN, you need to subscribe the system to the Unbreakable Enterprise Kernel Release 2 channel for your distribution.
The following example shows how to use the ULN Website to subscribe an Oracle Linux 6.2 (64-bit) system running Unbreakable Enterprise Kernel Release 1.
- Log in to ULN with your user account and click the Systems tab to get a list of all systems that are currently registered with ULN (see Figure 1).
- Click Manage Subscriptionsto subscribe the system to the additional channel that provides the updated Unbreakable Enterprise Kernel packages. The channel will be displayed in the list of available channels (see Figure 3).
- Select the Latest Unbreakable Enterprise Kernel for Oracle Linux 6 channel and click the small arrow pointing to the right to add the channel to the list of subscribed channels (see Figure 4).
- Click Save Subscriptions to finish the subscription.
- Verify that the subscription succeeded by running
yum repolist
on the system: - To see the list of available updates for this newly added repository, use the following command:
- Now you can simply run
yum update
to download and install the available updates, as shown in Listing 1.
When you click a machine name, you will see the system's details, the channels it is subscribed to, and the list of available patches (see Figure 2).
When you click a machine name, you will see the system's details, the channels it is subscribed to, and the list of available patches (see Figure 2).
Your system is now subscribed to receive the latest build of Unbreakable Enterprise Kernel and all subsequent future updates.
The naming scheme for the Unbreakable Enterprise Kernel channels is the following:
ol<release>_<arch>_UEK_latest
For example:
ol6_x86_64_UEK_latest
[root@oraclelinux62 ~]# yum repolist
Loaded plugins: refresh-packagekit, rhnplugin, security
repo id repo name status
ol6_x86_64_UEK_latest Latest Unbreakable Enterprise Kernel for Oracle Linux 6 (x86_64) 22
ol6_x86_64_latest Oracle Linux 6 Latest (x86_64) 14,604
repolist: 14,626
As you can see, the ol6_x86_64_UEK_latest
repository is now enabled in addition to the default update repository.
[root@oraclelinux62 ~]# yum list updates
Loaded plugins: refresh-packagekit, rhnplugin, security
Updated Packages
bfa-firmware.noarch 3.0.2.2-1.el6 ol6_x86_64_UEK_latest
kernel-uek.x86_64 2.6.39-100.5.1.el6uek ol6_x86_64_UEK_latest
kernel-uek-devel.x86_64 2.6.39-100.5.1.el6uek ol6_x86_64_UEK_latest
kernel-uek-firmware.noarch 2.6.39-100.5.1.el6uek ol6_x86_64_UEK_latest
ql2400-firmware.noarch 5.06.03-1.0.1.el6 ol6_x86_64_UEK_latest
ql2500-firmware.noarch 5.06.03-1.0.1.el6 ol6_x86_64_UEK_latest
Listing 1. Downloading and Installing Available Updates
[root@oraclelinux62 ~]# yum update
Loaded plugins: refresh-packagekit, rhnplugin, security
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package bfa-firmware.noarch 0:3.0.0.0-1.el6 will be updated
---> Package bfa-firmware.noarch 0:3.0.2.2-1.el6 will be an update
---> Package kernel-uek.x86_64 0:2.6.39-100.5.1.el6uek will be installed
---> Package kernel-uek-devel.x86_64 0:2.6.39-100.5.1.el6uek will be installed
---> Package kernel-uek-firmware.noarch 0:2.6.32-300.11.1.el6uek will be updated
---> Package kernel-uek-firmware.noarch 0:2.6.39-100.5.1.el6uek will be an update
---> Package ql2400-firmware.noarch 0:5.06.02-1.el6 will be updated
---> Package ql2400-firmware.noarch 0:5.06.03-1.0.1.el6 will be an update
---> Package ql2500-firmware.noarch 0:5.06.02-1.el6 will be updated
---> Package ql2500-firmware.noarch 0:5.06.03-1.0.1.el6 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
==============================================================================================
Package Arch Version Repository Size
==============================================================================================
Installing:
kernel-uek x86_64 2.6.39-100.5.1.el6uek ol6_x86_64_UEK_latest 25 M
kernel-uek-devel x86_64 2.6.39-100.5.1.el6uek ol6_x86_64_UEK_latest 7.6 M
Updating:
bfa-firmware noarch 3.0.2.2-1.el6 ol6_x86_64_UEK_latest 442 k
kernel-uek-firmware noarch 2.6.39-100.5.1.el6uek ol6_x86_64_UEK_latest 1.7 M
ql2400-firmware noarch 5.06.03-1.0.1.el6 ol6_x86_64_UEK_latest 91 k
ql2500-firmware noarch 5.06.03-1.0.1.el6 ol6_x86_64_UEK_latest 111 k
Transaction Summary
==============================================================================================
Install 2 Package(s)
Upgrade 4 Package(s)
Total download size: 35 M
Is this ok [y/N]: y
Downloading Packages:
(1/6): bfa-firmware-3.0.2.2-1.el6.noarch.rpm | 442 kB 00:01
(2/6): kernel-uek-2.6.39-100.5.1.el6uek.x86_64.rpm | 25 MB 01:14
(3/6): kernel-uek-devel-2.6.39-100.5.1.el6uek.x86_64.rpm | 7.6 MB 00:22
(4/6): kernel-uek-firmware-2.6.39-100.5.1.el6uek.noarch.rpm | 1.7 MB 00:05
(5/6): ql2400-firmware-5.06.03-1.0.1.el6.noarch.rpm | 91 kB 00:00
(6/6): ql2500-firmware-5.06.03-1.0.1.el6.noarch.rpm | 111 kB 00:00
----------------------------------------------------------------------------------------------
Total 325 kB/s | 35 MB 01:50
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : kernel-uek-firmware-2.6.39-100.5.1.el6uek.noarch 1/10
Installing : kernel-uek-2.6.39-100.5.1.el6uek.x86_64 2/10
Updating : bfa-firmware-3.0.2.2-1.el6.noarch 3/10
Installing : kernel-uek-devel-2.6.39-100.5.1.el6uek.x86_64 4/10
Updating : ql2500-firmware-5.06.03-1.0.1.el6.noarch 5/10
Updating : ql2400-firmware-5.06.03-1.0.1.el6.noarch 6/10
Cleanup : bfa-firmware-3.0.0.0-1.el6.noarch 7/10
Cleanup : ql2500-firmware-5.06.02-1.el6.noarch 8/10
Cleanup : kernel-uek-firmware-2.6.32-300.11.1.el6uek.noarch 9/10
Cleanup : ql2400-firmware-5.06.02-1.el6.noarch 10/10
Installed:
kernel-uek.x86_64 0:2.6.39-100.5.1.el6uek kernel-uek-devel.x86_64 0:2.6.39-100.5.1.el6uek
Updated:
bfa-firmware.noarch 0:3.0.2.2-1.el6
kernel-uek-firmware.noarch 0:2.6.39-100.5.1.el6uek
ql2400-firmware.noarch 0:5.06.03-1.0.1.el6
ql2500-firmware.noarch 0:5.06.03-1.0.1.el6
Complete!
Congratulations, you have successfully installed the latest version of the Unbreakable Enterprise Kernel! Now, skip to the Postinstallation Tasks and Next Steps section to finish the installation.
Installing the Unbreakable Enterprise Kernel from the Public Yum Repositories
The initial releases of Oracle Linux and the Unbreakable Enterprise Kernel are freely available as individual RPM packages from the public yum repository.
You just need to add and enable the dedicated Unbreakable Enterprise Kernel yum repository to update to the current kernel version. This can be done by adding the appropriate yum repository configuration file and enabling the respective repository.
- Start by downloading the corresponding repository configuration file.
- Now that you've added the Unbreakable Enterprise Kernel package repository configuration, you need to enable it. You can do so by opening the repository configuration file in your favorite text editor and changing the line
enabled=0
toenabled=1
for the section that identifies the repository from which you will receive updates (ol5_UEK_base
orol6_UEK_base,
in this case). - After the repository is enabled, check for available updates and install the new kernel packages, as shown in Listing 2.
For Oracle Linux 5, run the following command:
[root@oraclelinux58 ~]# wget http://public-yum.oracle.com/public-yum-el5.repo -P /etc/yum.repos.d/
--2012-03-13 10:32:12-- http://public-yum.oracle.com/public-yum-el5.repo
Resolving public-yum.oracle.com... 141.146.44.34
Connecting to public-yum.oracle.com|141.146.44.34|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2987 (2.9K) [text/plain]
Saving to: "/etc/yum.repos.d/public-yum-el5.repo"
100%[====================================================================>] 2,987 --.-K/s in 0s
2012-03-13 10:32:13 (24.9 MB/s) - "/etc/yum.repos.d/public-yum-el5.repo" saved [2987/2987]
For Oracle Linux 6, run the following command:
[root@oraclelinux62 ~]# wget http://public-yum.oracle.com/public-yum-ol6.repo -P /etc/yum.repos.d/
--2012-03-13 10:45:08-- http://public-yum.oracle.com/public-yum-ol6.repo
Resolving public-yum.oracle.com... 141.146.44.34
Connecting to public-yum.oracle.com|141.146.44.34|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 855 [text/plain]
Saving to: "/etc/yum.repos.d/public-yum-ol6.repo"
100%[====================================================================>] 855 --.-K/s in 0s
2012-03-13 10:45:08 (24.9 MB/s) - "/etc/yum.repos.d/public-yum-ol6.repo" saved [855/855]
Listing 2. Checking for Updates and Installing the New Packages
[root@oraclelinux62 ~]# yum list updates
Loaded plugins: refresh-packagekit, rhnplugin, security
Updated Packages
bfa-firmware.noarch 3.0.2.2-1.el6 ol6_UEK_base
kernel-uek.x86_64 2.6.39-100.5.1.el6uek ol6_UEK_base
kernel-uek-devel.x86_64 2.6.39-100.5.1.el6uek ol6_UEK_base
kernel-uek-firmware.noarch 2.6.39-100.5.1.el6uek ol6_UEK_base
ql2400-firmware.noarch 5.06.03-1.0.1.el6 ol6_UEK_base
ql2500-firmware.noarch 5.06.03-1.0.1.el6 ol6_UEK_base
[root@oraclelinux62 ~]# yum update
Loaded plugins: refresh-packagekit, rhnplugin, security
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package bfa-firmware.noarch 0:3.0.0.0-1.el6 will be updated
---> Package bfa-firmware.noarch 0:3.0.2.2-1.el6 will be an update
---> Package kernel-uek.x86_64 0:2.6.39-100.5.1.el6uek will be installed
---> Package kernel-uek-devel.x86_64 0:2.6.39-100.5.1.el6uek will be installed
---> Package kernel-uek-firmware.noarch 0:2.6.32-300.11.1.el6uek will be updated
---> Package kernel-uek-firmware.noarch 0:2.6.39-100.5.1.el6uek will be an update
---> Package ql2400-firmware.noarch 0:5.06.02-1.el6 will be updated
---> Package ql2400-firmware.noarch 0:5.06.03-1.0.1.el6 will be an update
---> Package ql2500-firmware.noarch 0:5.06.02-1.el6 will be updated
---> Package ql2500-firmware.noarch 0:5.06.03-1.0.1.el6 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
==============================================================================================
Package Arch Version Repository Size
==============================================================================================
Installing:
kernel-uek x86_64 2.6.39-100.5.1.el6uek ol6_UEK_base 25 M
kernel-uek-devel x86_64 2.6.39-100.5.1.el6uek ol6_UEK_base 7.6 M
Updating:
bfa-firmware noarch 3.0.2.2-1.el6 ol6_UEK_base 442 k
kernel-uek-firmware noarch 2.6.39-100.5.1.el6uek ol6_UEK_base 1.7 M
ql2400-firmware noarch 5.06.03-1.0.1.el6 ol6_UEK_base 91 k
ql2500-firmware noarch 5.06.03-1.0.1.el6 ol6_UEK_base 111 k
Transaction Summary
==============================================================================================
Install 2 Package(s)
Upgrade 4 Package(s)
Total download size: 35 M
Is this ok [y/N]: y
Downloading Packages:
(1/6): bfa-firmware-3.0.2.2-1.el6.noarch.rpm | 442 kB 00:01
(2/6): kernel-uek-2.6.39-100.5.1.el6uek.x86_64.rpm | 25 MB 01:14
(3/6): kernel-uek-devel-2.6.39-100.5.1.el6uek.x86_64.rpm | 7.6 MB 00:23
(4/6): kernel-uek-firmware-2.6.39-100.5.1.el6uek.noarch.rpm | 1.7 MB 00:05
(5/6): ql2400-firmware-5.06.03-1.0.1.el6.noarch.rpm | 91 kB 00:00
(6/6): ql2500-firmware-5.06.03-1.0.1.el6.noarch.rpm | 111 kB 00:00
----------------------------------------------------------------------------------------------
Total 329 kB/s | 35 MB 01:49
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : kernel-uek-firmware-2.6.39-100.5.1.el6uek.noarch 1/10
Installing : kernel-uek-2.6.39-100.5.1.el6uek.x86_64 2/10
Updating : bfa-firmware-3.0.2.2-1.el6.noarch 3/10
Installing : kernel-uek-devel-2.6.39-100.5.1.el6uek.x86_64 4/10
Updating : ql2500-firmware-5.06.03-1.0.1.el6.noarch 5/10
Updating : ql2400-firmware-5.06.03-1.0.1.el6.noarch 6/10
Cleanup : bfa-firmware-3.0.0.0-1.el6.noarch 7/10
Cleanup : ql2500-firmware-5.06.02-1.el6.noarch 8/10
Cleanup : kernel-uek-firmware-2.6.32-300.11.1.el6uek.noarch 9/10
Cleanup : ql2400-firmware-5.06.02-1.el6.noarch 10/10
Installed:
kernel-uek.x86_64 0:2.6.39-100.5.1.el6uek kernel-uek-devel.x86_64 0:2.6.39-100.5.1.el6uek
Updated:
bfa-firmware.noarch 0:3.0.2.2-1.el6
kernel-uek-firmware.noarch 0:2.6.39-100.5.1.el6uek
ql2400-firmware.noarch 0:5.06.03-1.0.1.el6
ql2500-firmware.noarch 0:5.06.03-1.0.1.el6
Complete!
The Unbreakable Enterprise Kernel Release 2 has now been installed.
Postinstallation Tasks and Next Steps
At this point, you need to reboot your system in order to enable the newly installed kernel. You will notice that the GRUB boot menu includes a new entry for the updated kernel version, which will be booted by default.
After rebooting, you can verify the kernel version number by running uname -r:
[root@oraclelinux62 ~]# uname -r
2.6.39-100.5.1.el6uek.x86_64
You can now enjoy the latest improvements and developments in Linux delivered by the Unbreakable Enterprise Kernel, without having to re-install your entire operating system or applications.
The dedicated Unbreakable Enterprise Kernel repository also includes additional and updated packages and tools that are required to enable or work with new kernel features. Some of these are updates for already existing packages, while others need to be installed manually.
For example, if you want to start using the B-tree file system (Btrfs), make sure you install the btrfs-progs package, as shown in Listing 3.
Listing 3. Installing the Package for Btrfs
[root@oraclelinux62 ~]# yum install btrfs-progs
Loaded plugins: refresh-packagekit, rhnplugin, security
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package btrfs-progs.x86_64 0:0.19-26.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
btrfs-progs x86_64 0.19-26.el6 ol6_x86_64_UEK_latest 258 k
Transaction Summary
================================================================================
Install 1 Package(s)
Total download size: 258 k
Installed size: 2.0 M
Is this ok [y/N]: y
Downloading Packages:
btrfs-progs-0.19-26.el6.x86_64.rpm | 258 kB 00:01
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : btrfs-progs-0.19-26.el6.x86_64 1/1
Installed:
btrfs-progs.x86_64 0:0.19-26.el6
Complete!
Similarly, there will be additional packages for other newly introduced features, for example, features for using and managing Linux Containers (lxc).
Conclusion
This article described two methods you can use to update your Oracle Linux systems to the latest version of the Unbreakable Enterprise Kernel. Future updates can be obtained easily from the Unbreakable Linux Network to keep your systems fully patched and secured. With the help of Ksplice, applying these updates can even be performed without having to schedule any downtime or reboots.
Resources
Here are URLs for the resources referenced earlier in this document:
- Oracle Software Delivery Cloud: https://edelivery.oracle.com/osdc/faces/Home.jspx
- Oracle Linux Store: https://shop.oracle.com/pls/ostore/f?p=dstore:2:4459720705463796::NO:RIR,RP,2:PROD_HIER_ID:4510272175861805728468
- Unbreakable Linux Network FAQ: https://linux.oracle.com/uln_faq.html
- Public yum repository: http://public-yum.oracle.com/
- "Playing with Btrfs": https://blogs.oracle.com/wim/entry/playing_with_btrfs
- "Btrfs Root and yum update Snapshots": https://blogs.oracle.com/wim/entry/btrfs_root_and_yum_update
- "Btrfs scrub—Go Fix Corruptions with Mirror Copies Please!": https://blogs.oracle.com/wim/entry/btrfs_scrub_go_fix_corruptions
- "Btrfs Compression": https://blogs.oracle.com/wim/entry/btrfs_compression
- "How I Used CGroups to Manage System Resources": http://www.oracle.com/technical-resources/articles/linux/resource-controllers-linux.html
- "Containers on Linux": https://blogs.oracle.com/wim/entry/containers_on_linux
- Oracle's Linux Blog: http://blogs.oracle.com/linux/
- Oracle Linux on the Oracle Technology Network: http://www.oracle.com/linux/technologies/
- Oracle Linux on Twitter: https://twitter.com/#!/ORCL_Linux
- Oracle Linux on Facebook: http://www.facebook.com/oraclelinux
- Videos related to Oracle Linux on YouTube: http://www.youtube.com/oraclelinuxchannel
If you would like to learn more about the new features of Unbreakable Enterprise Kernel Release 2, see the following articles and blog posts:
Also check out the following resources for news and articles related to Oracle Linux and the Unbreakable Enterprise Kernel: