Oracle Linux には、デフォルトでインストールされ有効化されている Unbreakable Enterprise Kernel(UEK) と Red Hat compatible Kernel(RHCK) の2種類のカーネルが用意されています。お客様が最新ハードウェアのサポート、充実したセキュリティ機能、優れたパフォーマンスを理由に UEK を選択した場合でも、RHCKを選択した場合でも、Oracle Linux は Red Hat Enterprise Linux(RHEL)との完全なアプリケーションバイナリ互換性を維持します。
ということで、デフォルトカーネル(UEK)を RHCK へ変更してみてみます。
■ デフォルト Unbreakable Enterprise Kernel(UEK) から Red Hat Compatible Kernel (RHCK) へ変更
デフォルトカーネルの設定は GRUBブートローダーを構成することで実行されていました。しかし、Oracle Linux 7.0 以降では、GRUB 2ブートローダーを利用するようになりました。GRUB 2はファイルシステムとカーネル実行ファイルの形式を理解するため、ブートデバイス上のカーネルの正確な位置を知らなくてもオペレーティングシステムをロードできます。
1) 設定カーネル確認
起動時に使用するデフォルトカーネルとして既に設定されているカーネルを確認するには、 grubby --default-kernel コマンドを実行します。 さらに、システムで現在実行中のカーネルを確認するには、 uname -r コマンドを使用します。
以下に示すOracle Linux 8 インスタンスでは、起動時に使用するデフォルトカーネルとしてUEKが設定されており、現在システム上でUEKが実行されています。
[opc@linux ~]$ sudo grubby --default-kernel
/boot/vmlinuz-5.15.0-306.177.4.el8uek.x86_64
[opc@linux ~]$ uname -r
5.15.0-306.177.4.el8uek.x86_64
[opc@linux ~]$ cat /etc/oracle-release
Oracle Linux Server release 8.10
2) インストールおよび設定されているすべてのカーネルを表示
grubby --info=ALL | grep ^kernelコマンドを使用して、システムにインストールおよび設定されているすべてのカーネルを表示します。システムの/bootディレクトリにある各カーネルに関連付けられたブート構成に関する詳細情報を取得したい場合は、grepの出力のパイプ処理を削除し、grubby --info=ALL を実行するだけです。
以下の例では、el8サフィックスはRHCKを示し、el8uekはUEKを示します。
[opc@linux ~]$ sudo grubby --info=ALL | grep ^kernel
kernel="/boot/vmlinuz-4.18.0-553.40.1.el8_10.x86_64"
kernel="/boot/vmlinuz-5.15.0-306.177.4.el8uek.x86_64"
kernel="/boot/vmlinuz-0-rescue-c6ba8a0f7826174140463c4a8bdad37a"
3) 起動カーネル変更
再起動後に実行するカーネルを指定してgrubby --set-defaultコマンドを実行することで、デフォルトのカーネルを変更できます。以下では、デフォルトのカーネルを 上記で確認した RHCK (5.14.0-503.26.1.el9_5.x86_64) に変更しています。
変更はすぐに反映されるため、あとはシステムを再起動するだけです。
[opc@linux ~]$ sudo grubby --set-default /boot/vmlinuz-4.18.0-553.40.1.el8_10.x86_64
The default is /boot/loader/entries/7063910fe2979258f8fd66f2fb8b8567-4.18.0-553.40.1.el8_10.x86_64.conf with index 0 and kernel /boot/vmlinuz-4.18.0-553.40.1.el8_10.x86_64
4) 再起動
[opc@linux ~]$ sudo reboot
Connection to 10.0.0.2 closed by remote host.
Connection to 10.0.0.2 closed.
5) 起動カーネル変更確認
[opc@linux ~]$ sudo grubby --default-kernel
/boot/vmlinuz-4.18.0-553.40.1.el8_10.x86_64
[opc@linux ~]$ uname -r
4.18.0-553.40.1.el8_10.x86_64
[opc@linux ~]$ cat /etc/redhat-release
Red Hat Enterprise Linux release 8.10 (Ootpa)
■ 参考
● 製品概要
・ Linux
・ Oracle Linux 9
・ Unbreakable Enterprise Kernel
● ドキュメント
・ Oracle Linux
・ Why Oracle Database Runs Best on Oracle Linux
● FAQ
・ Oracle Linuxに関するよくある質問(PDF)
・ Oracle Linux for Oracle Cloud Infrastructureに関するよくある質問(PDF)
● サポート
● Blog
・ Changing the default kernel in Oracle Linux | It's as simple as 1-2-3
・ CentOS 7 から Oracle Linux 8 へワンステップで移行
・ 第10回 Oracle Linuxの2種類のカーネル”UEK”と”RHCK”を理解する