第8章 アップグレード後のタスクの実行
RHEL 8 へのインプレースアップグレード後に、次の主要なタスクが推奨されます。
前提条件
- RHEL 7 から RHEL 8 へのアップグレード の実行で説明されている手順に従ってシステムをアップグレードし、RHEL 8 にログインできる。
- RHEL 8 システムのアップグレード後のステータスの確認 で説明されている手順に従って、インプレースアップグレードのステータスを確認している。
手順
アップグレードが完了したら、以下のタスクを実行します。
snactor
パッケージを含む、/etc/dnf/dnf.conf
設定ファイルの exclude リストから残りのLeapp
パッケージを削除します。インプレースアップグレード中に、Leapp
ユーティリティーでインストールされたLeapp
パッケージが exclude リストに自動的に追加され、重要なファイルが削除または更新されないようにします。インプレースアップグレードの後、これらのLeapp
パッケージをシステムから削除する前に、除外リストから削除する必要があります。-
exclude リストからパッケージを手動で削除するには、
/etc/dnf/dnf.conf
設定ファイルを編集し、除外
リストから必要なLeapp
パッケージを削除します。 除外
リストからすべてのパッケージを削除するには、次のコマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum config-manager --save --setopt exclude=''
# yum config-manager --save --setopt exclude=''
-
exclude リストからパッケージを手動で削除するには、
残りの
Leapp
パッケージを含む残りの RHEL 7 パッケージを削除します。以前のカーネルバージョンを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cd /lib/modules && ls -d *.el7*
# cd /lib/modules && ls -d *.el7*
以前のカーネルから弱いモジュールを削除します。以前のカーネルが複数ある場合は、カーネルごとに次の手順を繰り返します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [ -x /usr/sbin/weak-modules ] && /usr/sbin/weak-modules --remove-kernel <version>
# [ -x /usr/sbin/weak-modules ] && /usr/sbin/weak-modules --remove-kernel <version>
<version> を、前の手順で確認したカーネルバージョンに置き換えます。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [ -x /usr/sbin/weak-modules ] && /usr/sbin/weak-modules --remove-kernel 3.10.0-1160.25.1.el7.x86_64
# [ -x /usr/sbin/weak-modules ] && /usr/sbin/weak-modules --remove-kernel 3.10.0-1160.25.1.el7.x86_64
注記以下のエラーメッセージは無視してください。これは、カーネルパッケージが過去に削除されている場合に生成されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /usr/sbin/weak-modules: line 1081: cd: /lib/modules/<version>/weak-updates: No such file or directory
/usr/sbin/weak-modules: line 1081: cd: /lib/modules/<version>/weak-updates: No such file or directory
古いカーネルをブートローダーエントリーから削除します。以前のカーネルが複数ある場合は、カーネルごとにこの手順を繰り返します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /bin/kernel-install remove <version> /lib/modules/<version>/vmlinuz
# /bin/kernel-install remove <version> /lib/modules/<version>/vmlinuz
version を、前の手順で確認したカーネルバージョンに置き換えます。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /bin/kernel-install remove 3.10.0-1160.25.1.el7.x86_64 /lib/modules/3.10.0-1160.25.1.el7.x86_64/vmlinuz
# /bin/kernel-install remove 3.10.0-1160.25.1.el7.x86_64 /lib/modules/3.10.0-1160.25.1.el7.x86_64/vmlinuz
残りの RHEL 7 パッケージを見つけます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow rpm -qa | grep -e '\.el[67]' | grep -vE '^(gpg-pubkey|libmodulemd|katello-ca-consumer)' | sort
# rpm -qa | grep -e '\.el[67]' | grep -vE '^(gpg-pubkey|libmodulemd|katello-ca-consumer)' | sort
RHEL 8 システムから、古いカーネルパッケージなど、残りの RHEL 7 パッケージと
kernel-workaround
パッケージを削除します。RPM の依存関係が維持されるようにするには、これらのアクションを実行するときにYUM
またはDNF を
使用します。受け入れる前にトランザクションを確認して、パッケージが誤って削除されないようにしてください。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum remove kernel-workaround $(rpm -qa | grep \.el7 | grep -vE 'gpg-pubkey|libmodulemd|katello-ca-consumer')
# yum remove kernel-workaround $(rpm -qa | grep \.el7 | grep -vE 'gpg-pubkey|libmodulemd|katello-ca-consumer')
残りの
Leapp
依存関係パッケージを削除します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum remove leapp-deps-el8 leapp-repository-deps-el8
# yum remove leapp-deps-el8 leapp-repository-deps-el8
残りの空のディレクトリーを削除します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow rm -r /lib/modules/*el7*
# rm -r /lib/modules/*el7*
オプション: 残っているすべてのアップグレード関連データをシステムから削除します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow rm -rf /var/log/leapp /root/tmp_leapp_py3 /var/lib/leapp
# rm -rf /var/log/leapp /root/tmp_leapp_py3 /var/lib/leapp
重要このデータを削除すると、Red Hat サポートによるアップグレード後の問題の調査とトラブルシューティングが制限される可能性があります。
RHEL 8 でパッケージをインストールまたは使用できない YUM リポジトリーを無効にします。RHSM によって管理されるリポジトリーは自動的に処理されます。これらのリポジトリーを無効にするには、以下を実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow yum config-manager --set-disabled <repository_id>
# yum config-manager --set-disabled <repository_id>
<repository_id> はリポジトリー ID に置き換えます。
古いレスキューカーネルと初期 RAM ディスクを現在のカーネルとディスクに置き換えます。
既存のレスキューカーネルと初期 RAM ディスクを削除します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow rm /boot/vmlinuz-*rescue* /boot/initramfs-*rescue*
# rm /boot/vmlinuz-*rescue* /boot/initramfs-*rescue*
レスキューカーネルと関連する初期 RAM ディスクを再インストールします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /usr/lib/kernel/install.d/51-dracut-rescue.install add "$(uname -r)" /boot "/boot/vmlinuz-$(uname -r)"
# /usr/lib/kernel/install.d/51-dracut-rescue.install add "$(uname -r)" /boot "/boot/vmlinuz-$(uname -r)"
注記リアルタイムシステムなど、システムのカーネルパッケージの名前が異なる場合は、
kernel-core
を正しいパッケージ名に置き換えます。システムが IBM Z アーキテクチャー上にある場合は、
zipl
ブートローダーを更新します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow zipl
# zipl
-
オプション:
rpmnew
、rpmsave
、leappsave
ファイルを確認し、修正してから削除します。rpmsave
とleappsave は
同等であり、同様に処理できることに注意してください。詳細は、rpmnew および rpmsave ファイルとは何ですか? を参照してください。 - セキュリティーポリシーを再評価して再適用します。具体的には、SELinux モードを Enforcing に変更します。詳細は、セキュリティーポリシーの適用 を参照してください。
検証
ブートローダーエントリーから古いカーネルが削除されたことを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow grubby --info=ALL | grep "\.el7" || echo "Old kernels are not present in the boot loader."
# grubby --info=ALL | grep "\.el7" || echo "Old kernels are not present in the boot loader."
以前に削除したレスキューカーネルとレスキュー初期 RAM ディスクファイルが現在のカーネル用に作成されていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ls /boot/vmlinuz-*rescue* /boot/initramfs-*rescue* lsinitrd /boot/initramfs-*rescue*.img | grep -qm1 "$(uname -r)/kernel/" && echo "OK" || echo "FAIL"
# ls /boot/vmlinuz-*rescue* /boot/initramfs-*rescue* # lsinitrd /boot/initramfs-*rescue*.img | grep -qm1 "$(uname -r)/kernel/" && echo "OK" || echo "FAIL"
レスキューブートエントリーが既存のレスキューファイルを参照していることを確認します。grubby の出力を参照してください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow grubby --info $(ls /boot/vmlinuz-*rescue*)
# grubby --info $(ls /boot/vmlinuz-*rescue*)