#1.はじめに
運用する中で定期的にカーネルはアップデートしたいけど、リリースバージョンは上げたくない。というときに行う手順。
結果から先に書くと、yum updateで以下を除外すればOK。
redhat-release-*
oraclelinux-release*
以降は実機確認結果
#2.環境
[root@devlnx01 ~]# uname -a
Linux devlnx01 4.1.12-124.20.3.el7uek.x86_64 #2 SMP Thu Oct 11 17:44:28 PDT 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@devlnx01 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.5 (Maipo)
[root@devlnx01 ~]# cat /etc/oracle-release
Oracle Linux Server release 7.5
[root@devlnx01 ~]# cat /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=2
・
・
・
#3.前提条件
事前にyumリポジトリは以下の手順で更新し、最新のOracle Linux 7を見に行くようになっています。
Red Hat Enterprise Linux, CentOS & Scientific Linux
http://yum.oracle.com/getting-started.html#red-hat-enterprise-linux-centos-scientific-linux
#4.事前確認
yum updateを実行すると、以下のようにカーネルとリリースバージョンもアップデート対象となる。
[root@devlnx01 ~]# yum update kernel* redhat-release* oraclelinux-release*
読み込んだプラグイン:langpacks
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ kernel.x86_64 0:3.10.0-1062.9.1.el7 を インストール
--> 依存性の処理をしています: linux-firmware >= 20190429-72 のパッケージ: kernel-3.10.0-1062.9.1.el7.x86_64
・
<中略>
・
===============================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
===============================================================================================================================
インストール中:
kernel x86_64 3.10.0-1062.9.1.el7 ol7_latest 50 M
kernel-uek x86_64 4.14.35-1902.9.2.el7uek ol7_UEKR5 52 M
kernel-uek-devel x86_64 4.14.35-1902.9.2.el7uek ol7_UEKR5 15 M
更新します:
kernel-headers x86_64 3.10.0-1062.9.1.el7 ol7_latest 8.7 M
kernel-tools x86_64 3.10.0-1062.9.1.el7 ol7_latest 7.8 M
kernel-tools-libs x86_64 3.10.0-1062.9.1.el7 ol7_latest 7.8 M
oraclelinux-release x86_64 7:7.7-1.0.5.el7 ol7_latest 55 k
redhat-release-server x86_64 1:7.7-10.0.1.el7 ol7_latest 11 k
依存性関連での更新をします:
libdtrace-ctf x86_64 1.1.0-1.el7 ol7_UEKR5 36 k
linux-firmware noarch 999:20190627-999.2.git7ae3a09d.el7 ol7_latest 80 M
トランザクションの要約
===============================================================================================================================
インストール 3 パッケージ
更新 5 パッケージ (+2 個の依存関係のパッケージ)
#5.本題:リリースバージョンだけ除外する
yum実行時に除外する
引数 --exclude を追加することでリリースバージョンが除外された
[root@devlnx01 ~]# yum update kernel* redhat-release* oraclelinux-release* --exclude redhat-release*,oraclelinux-release*
読み込んだプラグイン:langpacks
ol7_UEKR5 | 2.5 kB 00:00:00
ol7_latest | 2.7 kB 00:00:00
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ kernel.x86_64 0:3.10.0-1062.9.1.el7 を インストール
--> 依存性の処理をしています: linux-firmware >= 20190429-72 のパッケージ: kernel-3.10.0-1062.9.1.el7.x86_64
・
<中略>
・
===============================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
===============================================================================================================================
インストール中:
kernel x86_64 3.10.0-1062.9.1.el7 ol7_latest 50 M
kernel-uek x86_64 4.14.35-1902.9.2.el7uek ol7_UEKR5 52 M
kernel-uek-devel x86_64 4.14.35-1902.9.2.el7uek ol7_UEKR5 15 M
更新します:
kernel-headers x86_64 3.10.0-1062.9.1.el7 ol7_latest 8.7 M
kernel-tools x86_64 3.10.0-1062.9.1.el7 ol7_latest 7.8 M
kernel-tools-libs x86_64 3.10.0-1062.9.1.el7 ol7_latest 7.8 M
依存性関連での更新をします:
libdtrace-ctf x86_64 1.1.0-1.el7 ol7_UEKR5 36 k
linux-firmware noarch 999:20190627-999.2.git7ae3a09d.el7 ol7_latest 80 M
トランザクションの要約
===============================================================================================================================
インストール 3 パッケージ
更新 3 パッケージ (+2 個の依存関係のパッケージ)
デフォルト設定変更して除外
/etc/yum.confを編集
[root@devlnx01 ~]# vi /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=2
exclude=redhat-release* oraclelinux-release* <---この1行を挿入
yum update を引数無しで実行しても、同様にリリースバージョンが上がらない事を確認できた。
[root@devlnx01 ~]# yum update kernel* redhat-release* oraclelinux-release*
読み込んだプラグイン:langpacks
ol7_UEKR5 | 2.5 kB 00:00:00
ol7_latest | 2.7 kB 00:00:00
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ kernel.x86_64 0:3.10.0-1062.9.1.el7 を インストール
--> 依存性の処理をしています: linux-firmware >= 20190429-72 のパッケージ: kernel-3.10.0-1062.9.1.el7.x86_64
・
<中略>
・
===============================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
===============================================================================================================================
インストール中:
kernel x86_64 3.10.0-1062.9.1.el7 ol7_latest 50 M
kernel-uek x86_64 4.14.35-1902.9.2.el7uek ol7_UEKR5 52 M
kernel-uek-devel x86_64 4.14.35-1902.9.2.el7uek ol7_UEKR5 15 M
更新します:
kernel-headers x86_64 3.10.0-1062.9.1.el7 ol7_latest 8.7 M
kernel-tools x86_64 3.10.0-1062.9.1.el7 ol7_latest 7.8 M
kernel-tools-libs x86_64 3.10.0-1062.9.1.el7 ol7_latest 7.8 M
依存性関連での更新をします:
libdtrace-ctf x86_64 1.1.0-1.el7 ol7_UEKR5 36 k
linux-firmware noarch 999:20190627-999.2.git7ae3a09d.el7 ol7_latest 80 M
トランザクションの要約
===============================================================================================================================
インストール 3 パッケージ
更新 3 パッケージ (+2 個の依存関係のパッケージ)