RHEL V9.3からV9.4へのアップグレード検証

## はじめに
これまで私の個人環境ではRHEL V9.3を使用してきましたが、本年5月1日に下記の記事にてRHEL V9.4がGAになったとの発表がありました。

https://access.redhat.com/announcements/7068084

私は以前V8環境を使用していて、その際は次のマイナー・バージョンがGAとなった際には、普通に「dnf update」コマンドを実行すれば、RHELのマイナー・バージョンへのアップグレードができていました。(例：RHEL V8.5 → V8.6など)
しかし、本年10月に入ってからも「dnf update」をやるだけではV9.4へアップグレードできなかったのですが、以降で紹介する手順を実施すれば無事アップグレードができました。それ故、本記事では備忘録を兼ねて、RHEL V9環境でのマイナー・バージョンのアップグレード手順をご紹介します。

## アップグレード検証
ダイレクトにV9.3からV9.4へのアップグレード方法に関する記事は見つかりませんでしたが、V9.2からV9.3へのアップグレードに関する下記の記事が参考になりました。

https://articles.epiphyte.io/upgrading-rhel-from-9-3-to-9-3-650ee071ee30

### 利用可能なリリースの確認
最初に下記のコマンドを実行し、利用可能なリリースに9.4が表示されることを確認します。
```
$ sudo subscription-manager release --list
[sudo] testuser のパスワード:
+-------------------------------------------+
          利用可能なリリース
+-------------------------------------------+
9
9.0
9.1
9.2
9.3
9.4
```
一番下に「9.4」の表示がされていることが確認できます。

### 現行環境のリリース番号の変更
現在のRHEL環境はV9.3になっているため、下記のコマンドを実行して、V9.4をポイントするようにリリース番号をセットします。
```
$ sudo subscription-manager release --set 9.4
リリースは次のように設定されています: 9.4
```
9.4にセットされたことが確認できます。

### パッケージ更新
「dnf check-update」「dnf update」コマンドを実行して、現行環境のパッケージをRHEL V9.4対応の物にアップグレードします。以下はサンプルです。
```
$ sudo dnf check-update
PostgreSQL 17 for RHEL / Rocky / AlmaLinux 9 -  189  B/s | 659  B     00:03
PostgreSQL 17 for RHEL / Rocky / AlmaLinux 9 -  2.4 MB/s | 2.4 kB     00:00
GPG 鍵 0x08B40D20 をインポート中:
 Userid     : "PostgreSQL RPM Repository <pgsql-pkg-yum@lists.postgresql.org>"
 Fingerprint: D4BF 08AE 67A0 B4C7 A1DB CCD2 40BC A2B4 08B4 0D20
 From       : /etc/pki/rpm-gpg/PGDG-RPM-GPG-KEY-RHEL
これでよろしいですか? [y/N]: y
PostgreSQL 17 for RHEL / Rocky / AlmaLinux 9 -   33 kB/s | 163 kB     00:04
Red Hat Enterprise Linux 9 for x86_64 - BaseOS   19 MB/s |  32 MB     00:01
Red Hat CodeReady Linux Builder for RHEL 9 x86_ 4.3 MB/s | 9.2 MB     00:02
Red Hat Enterprise Linux 9 for x86_64 - AppStre  21 MB/s |  41 MB     00:01
メタデータの期限切れの最終確認: 0:00:01 前の 2024年10月02日 21時37分59秒 に実施 しました。

LibRaw.x86_64               0.21.1-1.el9        rhel-9-for-x86_64-appstream-rpms
：
：
grub2-tools-minimal.x86_64  1:2.06-82.el9_4     rhel-9-for-x86_64-baseos-rpms
    grub2-tools.x86_64      1:2.06-70.el9_3.2   @System
```
```
$ sudo dnf update
サブスクリプション管理リポジトリーを更新しています。
メタデータの期限切れの最終確認: 0:00:36 前の 2024年10月02日 21時37分59秒 に実施 しました。
依存関係が解決しました。
================================================================================
 パッケージ      Arch   バージョン       リポジトリー                     サイズ
================================================================================
インストール:
 kernel          x86_64 5.14.0-427.37.1.el9_4
                                         rhel-9-for-x86_64-baseos-rpms    4.7 M
：
：
弱い依存関係のインストール:
 nbdkit          x86_64 1.36.2-1.el9     rhel-9-for-x86_64-appstream-rpms  11 k
 nbdkit-curl-plugin
                 x86_64 1.36.2-1.el9     rhel-9-for-x86_64-appstream-rpms  44 k
 nbdkit-ssh-plugin
                 x86_64 1.36.2-1.el9     rhel-9-for-x86_64-appstream-rpms  33 k

トランザクションの概要
================================================================================
インストール     21 パッケージ
アップグレード  719 パッケージ

ダウンロードサイズの合計: 1.5 G
これでよろしいですか? [y/N]:
```
一番下の「これでよろしいですか?」に「y」を応答すれば、後はひたすらパッケージがV9.4用に更新されます。

### アップグレード結果確認
「subscription-manager list」コマンドを実行し、バージョンが9.4に変わったことを確認します。
```
$ sudo subscription-manager list
[sudo] testuser のパスワード:
+-------------------------------------------+
    インストール済み製品のステータス
+-------------------------------------------+
製品名:           Red Hat Enterprise Linux for x86_64
製品 ID:          479
バージョン:       9.4
アーキテクチャー: x86_64
状態:             サブスクライブ済み
状態の詳細:
開始:             2024年02月27日
終了:             2025年02月26日
```
バージョンの記載が無事9.4に変更されていることがわかります。また、下記のコマンドでもV9.4に変わったことがわかります。
```
$ cat /etc/redhat-release
Red Hat Enterprise Linux release 9.4 (Plow)
```
なお、KernelについてはリブートをかけないとV9.3用のままになるので、OSを再起動した後に「uname-a」コマンドでKernel番号を確認します。
```
$ uname -a
Linux localhost.localdomain 5.14.0-427.37.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Sep 13 12:41:50 EDT 2024 x86_64 x86_64 x86_64 GNU/Linux
```

### おわりに
今回はRHEL V9.3からV9.4へのマイナー・バージョン・アップグレードの手順を備忘録の目的も兼ねてご紹介しました。今後V9.5等が発表された際は、同じ要領でアップグレードを実施予定です。