2022年1月2日日曜日

CentOS 8をCentOS Streamに移行する手順

2021年12月末でCentOS 8のサポートが終了した。そのため、CentOS 8を使っている場合は、以下の対応が必要となる。

  1. RHELのアップストリーム版であるCentOS Streamに移行する
  2. AlmaLinuxやRocky Linuxといった代替ディストリビューションに変更する

最も手っ取り早い方法は上記1番目のCentOS Streamへの移行となる。本記事では、Cent OS 8からCentOS Streamへの移行手順を記載する。

環境

  • 移行前環境 : CentOS 8.1
  • 移行後環境 : CentOS Stream

CentOS Streamへの移行手順

通常作業は10分もあれば完了する。ただし、万が一の際に備えて、作業前にストレージや仮想環境の機能を用いてスナップショットを取得し復旧できるようにしておこう。

1. 作業前のバージョン確認

作業前にCentOSのバージョン確認をしておこう。

# cat /etc/redhat-release
CentOS Linux release 8.1.1911 (Core)

# uname -a
Linux localhost 4.18.0-147.8.1.el8_1.x86_64 #1 SMP Thu Apr 9 13:49:54 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

2. dnfコマンドにてCentOS Streamへ移行

CentOS Streamへの移行は、以下2行のコマンドを実行するのみで完了する。このコマンドは、CentOS Streamの以下URLに記載されているものと同じとなる。

dnf swap centos-linux-repos centos-stream-repos
dnf distro-sync

dnf swapdnf distro-syncという見慣れないdnfのコマンドを使っているが、それぞれの意味は以下の通り。

コマンド 説明
dnf swap パッケージのリポジトリを切り替える。今回はCentOS 8からCentOS Streamに切り替える。1つ目の引数は削除対象のCentOS 8のリポジトリを指定し、2つ目の引数は追加するCentOS Streamのリポジトリを指定する。
dnf distro-sync すべてのパッケージに対してCentOS Streamのバージョンと一致させるため、インストール及びアップグレードを実施する。

実際に実行させた結果は以下の通りとなる。まずは、dnf swapの実行結果となる。「一致した引数がありません: centos-linux-repos」とメッセージが表示されているが、処理は成功しているようだ。

# dnf swap centos-linux-repos centos-stream-repos
メタデータの期限切れの最終確認: 0:01:20 時間前の 2022年01月01日 07時01分05秒 に 実施しました。
一致した引数がありません: centos-linux-repos
削除対象のパッケージはありません。
依存関係が解決しました。
================================================================================
 パッケージ                Arch        バージョン             Repo        サイズ
================================================================================
インストール:
 centos-stream-repos       noarch      8-3.el8                extras       19 k
アップグレード:
 centos-gpg-keys           noarch      1:8-3.el8              BaseOS       12 k
依存関係のインストール:
 centos-linux-release      noarch      8.5-1.2111.el8         BaseOS       22 k
     置き換え  centos-release.x86_64 8.1-1.1911.0.9.el8
     置き換え  centos-repos.x86_64 8.1-1.1911.0.9.el8

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

ダウンロードサイズの合計: 54 k
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
(1/3): centos-gpg-keys-8-3.el8.noarch.rpm       311 kB/s |  12 kB     00:00
(2/3): centos-linux-release-8.5-1.2111.el8.noar 389 kB/s |  22 kB     00:00
(3/3): centos-stream-repos-8-3.el8.noarch.rpm   311 kB/s |  19 kB     00:00
--------------------------------------------------------------------------------
合計                                             47 kB/s |  54 kB     00:01
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
  準備             :                                                        1/1
  scriptletの実行中: centos-gpg-keys-1:8-3.el8.noarch                       1/1
  アップグレード中 : centos-gpg-keys-1:8-3.el8.noarch                       1/6
  インストール中   : centos-stream-repos-8-3.el8.noarch                     2/6
  インストール中   : centos-linux-release-8.5-1.2111.el8.noarch             3/6
  廃止             : centos-release-8.1-1.1911.0.9.el8.x86_64               4/6
  廃止             : centos-repos-8.1-1.1911.0.9.el8.x86_64                 5/6
  整理             : centos-gpg-keys-8.1-1.1911.0.9.el8.noarch              6/6
  scriptletの実行中: centos-gpg-keys-8.1-1.1911.0.9.el8.noarch              6/6
  検証             : centos-linux-release-8.5-1.2111.el8.noarch             1/6
  検証             : centos-release-8.1-1.1911.0.9.el8.x86_64               2/6
  検証             : centos-repos-8.1-1.1911.0.9.el8.x86_64                 3/6
  検証             : centos-stream-repos-8-3.el8.noarch                     4/6
  検証             : centos-gpg-keys-1:8-3.el8.noarch                       5/6
  検証             : centos-gpg-keys-8.1-1.1911.0.9.el8.noarch              6/6

アップグレード済み:
  centos-gpg-keys-1:8-3.el8.noarch

インストール済み:
  centos-stream-repos-8-3.el8.noarch centos-linux-release-8.5-1.2111.el8.noarch

完了しました!

次にdnf distro-syncを実行する。なお、本処理を実行するとCentOSに含まれないパッケージを含めたすべてのパッケージが最新化される (例えばZabbixを導入している場合はZabbixもアップデートされる) ため注意すること。私の環境では、480個のパッケージ更新が実行された。

# dnf distro-sync
CentOS Stream 8 - AppStream                     4.2 MB/s |  18 MB     00:04
CentOS Stream 8 - BaseOS                         16 MB/s |  16 MB     00:00
CentOS Stream 8 - Extras                         52 kB/s |  16 kB     00:00
依存関係が解決しました。
================================================================================
 パッケージ                    Arch   バージョン                Repo      サイズ
================================================================================
インストール:
 centos-stream-release         noarch 8.6-1.el8                 baseos     22 k
     置き換え  centos-linux-release.noarch 8.5-1.2111.el8
 fwupd                         x86_64 1.5.9-1.el8_4             baseos    2.8 M
     置き換え  dbxtool.x86_64 8-5.el8
 kernel                        x86_64 4.18.0-348.2.1.el8_5      baseos    7.0 M
 kernel-core                   x86_64 4.18.0-348.2.1.el8_5      baseos     38 M
 kernel-modules                x86_64 4.18.0-348.2.1.el8_5      baseos     30 M
アップグレード:
 apr                           x86_64 1.6.3-12.el8              appstream 129 k
 bind-libs                     x86_64 32:9.11.26-6.el8          appstream 174 k
 bind-libs-lite                x86_64 32:9.11.26-6.el8          appstream 1.2 M
 bind-license                  noarch 32:9.11.26-6.el8          appstream 102 k
 bind-utils                    x86_64 32:9.11.26-6.el8          appstream 451 k

~(中略)~

弱い依存関係のインストール:
 udisks2                       x86_64 2.9.0-7.el8               appstream 474 k
 crypto-policies-scripts       noarch 20211116-1.gitae470d6.el8 baseos     83 k
 elfutils-debuginfod-client    x86_64 0.186-1.el8               baseos     71 k
 memstrack                     x86_64 0.1.11-1.el8              baseos     48 k
 epel-next-release             noarch 8-13.el8                  epel       10 k
モジュールストリームの有効化:
 perl-IO-Socket-SSL                   2.066
 perl-libwww-perl                     6.34

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

ダウンロードサイズの合計: 551 M
これでよろしいですか? [y/N]: y

~(中略)~

  lmdb-libs-0.9.24-1.el8.x86_64
  mdadm-4.2-rc2.el8.x86_64
  python3-nftables-1:0.9.3-24.el8.x86_64
  tpm2-tss-2.3.2-4.el8.x86_64

完了しました!

3. 再起動

Linuxカーネルのバージョンアップも実施されていることから、一度再起動を実施しておく。

# reboot

4. 作業後のバージョン確認

作業後にCentOSのバージョン確認する。CentOS 8からCentOS Streamに変更されていることがわかる。

# cat /etc/redhat-release
CentOS Stream release 8

# uname -a
Linux localhost 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Tue Nov 16 14:42:35 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

以上でCentOS 8からCentOS Streamへの移行は完了となる。

参考

0 件のコメント:

コメントを投稿

人気の投稿