今回初めての投稿となります。
環境
- Windows 10 Pro 20H2のHyper-VでCentOS 7.9が稼働
- VMのセキュアブートは有効
基本は公式サイトの通りにやればできますが、ちょっとハマったことがありました。
https://wiki.almalinux.org/elevate/ELevate-quickstart-guide.html
まずはOSを最新の状態にします。再起動の際にセキュアブートが有効なら無効にしておきます。理由は後述します。
sudo yum update -y
sudo reboot
Almalinuxのリポジトリを追加します。
sudo yum install -y http://repo.almalinux.org/elevate/elevate-release-latest-el7.noarch.rpm
アップグレード用のツール(ELevateプロジェクトのleappユーティリティ)をインストールして事前チェックします。
sudo yum install -y leapp-upgrade leapp-data-almalinux
sudo leapp preupgrade
生成された /var/log/leapp/leapp-report.txt
の inhibitor
となっている箇所を対処します。下記は環境によって異なるはずです。
echo PermitRootLogin yes | sudo tee -a /etc/ssh/sshd_config
sudo rmmod pata_acpi
sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True
アップグレードを実行します。結構時間がかかりました。
sudo leapp upgrade
sudo reboot
再起動時にGRUBに ELevate-Upgrade-Initramfs
というアップグレード用の臨時のブートメニューが追加されています。どうもこれはセキュアブートに対応していないようです。
セキュアブートを無効にするとアップグレード処理が開始されます。完了したら自動で再起動しAlmalinuxがブートします。
Hyper-Vが悪いのか、leappが悪いのかは分かりませんが、自分の環境ではVMのブート順序が変わってしまいました。ネットワークアダプターが最上位となってしまったので修正しておきます。ついでにセキュアブートも再有効化しておきます。
手順は以上です。以前leappを使わずにCentOS 7からCentOS 8へのアップグレードをしてみましたが、パッケージの競合が発生して大変でした。leappを使えばそのあたりはうまくやってくるようです。