第8章 既知の問題
ここでは、Red Hat Enterprise Linux 9.6 の既知の問題を説明します。
8.1. インストーラーおよびイメージの作成
キックスタートコマンドの auth
および authconfig
で AppStream リポジトリーが必要になる
インストール中に、キックスタートコマンドの auth
および authconfig
で authselect-compat
パッケージが必要になります。auth
または authconfig
を使用したときに、このパッケージがないとインストールに失敗します。ただし、設計上、authselect-compat
パッケージは AppStream リポジトリーでのみ使用可能です。
回避策: BaseOS リポジトリーおよび AppStream リポジトリーがインストールプログラムで使用できることを確認するか、インストール中にキックスタートコマンドの authselect
を使用します。
Jira:RHELPLAN-10061[1]
Anaconda がアプリケーションとして実行されているシステムでの予期しない SELinux ポリシー
Anaconda がすでにインストールされているシステムでアプリケーションとして実行されている場合 (たとえば、–image
anaconda オプションを使用してイメージファイルに別のインストールを実行する場合)、システムはインストール中に SELinux のタイプと属性を変更することを禁止されていません。そのため、SELinux ポリシーの特定の要素は、Anaconda が実行されているシステムで変更される可能性があります。
回避策: 実稼働システムでは Anaconda を実行しないでください。代わりに、一時的な仮想マシンで Anaconda を実行して、実稼働システムの SELinux ポリシーを変更しないようにします。boot.iso
や dvd.iso
からのインストールなど、システムインストールプロセスの一部として anaconda を実行しても、この問題の影響は受けません。
Jira:RHELPLAN-110940[1]
サードパーティーのツールを使用して作成した USB からインストールを起動する際に、Local Media
のインストールソースが検出されない
サードパーティーのツールを使用して作成された USB から RHEL インストールを起動すると、インストールプログラムが Local Media
インストールソースを検出できません (Red Hat CDN のみが検出されます)。
この問題は、デフォルトの起動オプション int.stage2=
が iso9660
イメージ形式の検索を試みるためです。ただし、サードパーティーツールは、別の形式の ISO イメージを作成する可能性があります。
回避策: 以下のソリューションのいずれかを使用します。
-
インストールの起動時に
Tab
キーをクリックしてカーネルコマンドラインを編集し、起動オプションinst.stage2=
をinst.repo=
に変更します。 - Windows で起動可能な USB デバイスを作成するには、Fedora Media Writer を使用します。
- Rufus などのサードパーティーツールを使用して起動可能な USB デバイスを作成する場合は、最初に Linux システムで RHEL ISO イメージを再生成し、サードパーティーのツールを使用して起動可能な USB デバイスを作成します。
指定の回避策を実行する手順の詳細は、Installation media is not auto-detected during the installation of RHEL 8.3 を参照してください。
Jira:RHELPLAN-53644[1]
USB CD-ROM ドライブが Anaconda のインストールソースとして利用できない
USB CD-ROM ドライブがソースで、キックスタート ignoredisk --only-use=
コマンドを指定すると、インストールに失敗します。この場合、Anaconda はこのソースディスクを見つけ、使用できません。
回避策: USB CD-ROM ドライブからインストールするには、harddrive --partition=sdX --dir=/
コマンドを使用します。その結果、インストールは失敗しなくなりました。
iso9660 ファイルシステムで、ハードドライブがパーティション設定されたインストールが失敗する
ハードドライブが iso9660
ファイルシステムでパーティションが設定されているシステムには、RHEL をインストールできません。これは、iso9660
ファイルシステムパーティションを含むハードディスクを無視するように設定されている、更新されたインストールコードが原因です。これは、RHEL が DVD を使用せずにインストールされている場合でも発生します。
回避策: インストールを開始する前に、以下のスクリプトをキックスタートファイルに追加して、ディスクをフォーマットします。
メモ: 回避策を実行する前に、ディスクで利用可能なデータのバックアップを作成します。wipefs
は、ディスク内の全データをフォーマットします。
%pre wipefs -a /dev/sda %end
%pre
wipefs -a /dev/sda
%end
その結果、インストールでエラーが発生することなく、想定どおりに機能します。
Anaconda が管理者ユーザーアカウントの存在の確認に失敗する
グラフィカルユーザーインターフェイスを使用して RHEL をインストールしている場合に、管理者アカウントが作成されていると、Anaconda が確認に失敗します。その結果、管理者ユーザーアカウントがなくても、システムをインストールできてしまう可能性があります。
回避策: 管理者ユーザーアカウントを設定するか、root パスワードを設定して root アカウントをロック解除しておいてください。その結果、インストール済みシステムで管理タスクを実行できます。
Jira:RHELPLAN-110191[1]
新しい XFS 機能により、バージョン 5.10 よりも古いファームウェアを持つ PowerNV IBM POWER システムが起動しなくなる
PowerNV IBM POWER システムは、ファームウェアに Linux カーネルを使用し、GRUB の代わりに Petitboot を使用します。これにより、ファームウェアカーネルのマウント /boot
が発生し、Petitboot が GRUB 設定を読み取り、RHEL を起動します。
RHEL 9 カーネルでは、XFS ファイルシステムに bigtime=1
機能および inobtcount=1
機能が導入されています。これは、バージョン 5.10 よりも古いファームウェアのカーネルが理解できません。
回避策: たとえば ext4 など、別のファイルシステムを /boot
に使用できます。
Jira:RHELPLAN-94811[1]
rpm-ostree ペイロードをインストールすると、RHEL for Edge インストーラーイメージがマウントポイントの作成に失敗する
RHEL for Edge インストーラーイメージなどで使用される rpm-ostree
ペイロードをデプロイする場合、インストールプログラムがカスタムパーティションの一部のマウントポイントを適切に作成しません。その結果、次のエラーが発生してインストールが停止します。
The command 'mount --bind /mnt/sysimage/data /mnt/sysroot/data' exited with the code 32.
The command 'mount --bind /mnt/sysimage/data /mnt/sysroot/data' exited with the code 32.
回避策:
- 自動パーティション設定スキームを使用し、手動でマウントポイントを追加しないでください。
-
マウントポイントは、
/var
ディレクトリー内のみに手動で割り当てます。たとえば、/var/my-mount-point
や、/
、/boot
、/var
などの標準ディレクトリーです。
その結果、インストールプロセスは正常に終了します。
ネットワークに接続されているが、DHCP または静的 IP アドレスが設定されていない場合、NetworkManager はインストール後に起動に失敗する
RHEL 9.0 以降、特定の ip=
またはキックスタートネットワーク設定が設定されていない場合、Anaconda はネットワークデバイスを自動的にアクティブ化します。Anaconda は、イーサネットデバイスごとにデフォルトの永続的な設定ファイルを作成します。接続プロファイルには、ONBOOT
と autoconnect
の値が true
に設定されています。その結果、インストールされたシステムの起動中に、RHEL がネットワークデバイスをアクティブ化し、networkManager-wait-online
サービスが失敗します。
回避策: 以下のいずれかを実行します。
使用する 1 つの接続を除いて、
nmcli
ユーティリティーを使用してすべての接続を削除します。以下に例を示します。すべての接続プロファイルを一覧表示します。
nmcli connection show
# nmcli connection show
Copy to Clipboard Copied! 不要な接続プロファイルを削除します。
nmcli connection delete <connection_name>
# nmcli connection delete <connection_name>
Copy to Clipboard Copied! <connection_name> を、削除する接続の名前に置き換えます。
特定の
ip=
またはキックスタートネットワーク設定が設定されていない場合は、Anaconda の自動接続ネットワーク機能を無効にします。- Anaconda GUI で、Network & Host Name に移動します。
- 無効にするネットワークデバイスを選択します。
- Configure をクリックします。
- General タブで、Connect automatically with priority チェックボックスをオフにします。
- Save をクリックします。
Jira:RHELPLAN-130370[1]
キックスタートインストールでネットワーク接続の設定に失敗する
Anaconda は、NetworkManager API を通じてのみキックスタートネットワーク設定を実行します。Anaconda は、%pre
キックスタートセクションの後にネットワーク設定を処理します。その結果、キックスタート %pre
セクションの一部のタスクがブロックされます。たとえば、%pre
セクションからのパッケージのダウンロードは、ネットワーク設定が利用できないため失敗します。
回避策:
-
たとえば、
%pre
スクリプトの一部としてnmcli
ツールを使用して、ネットワークを設定します。 -
インストールプログラムのブートオプションを使用して、
%pre
スクリプトのネットワークを設定します。
その結果、%pre
セクションのタスクにネットワークを使用できるようになり、キックスタートインストールプロセスが完了します。
Jira:RHELPLAN-150080[1]
stig
プロファイル修復でビルドされたイメージが FIPS エラーで起動に失敗する
FIPS モードは、RHEL Image Builder ではサポートされていません。xccdf_org.ssgproject.content_profile_stig
プロファイル修復でカスタマイズされた RHEL Image Builder を使用すると、システムは次のエラーで起動に失敗します。
Warning: /boot//.vmlinuz-<kernel version>.x86_64.hmac does not exist FATAL: FIPS integrity test failed Refusing to continue
Warning: /boot//.vmlinuz-<kernel version>.x86_64.hmac does not exist
FATAL: FIPS integrity test failed
Refusing to continue
/boot
ディレクトリーが別のパーティションにあるため、システムイメージのインストール後に fips-mode-setup --enable
コマンドを使用して FIPS ポリシーを手動で有効にしても機能しません。FIPS が無効になっている場合、システムは正常に起動します。現在、使用可能な回避策はありません。
イメージのインストール後に、fips-mode-setup --enable
コマンドを使用して、FIPS を手動で有効にすることができます。
ドライバーディスクメニューがコンソールでユーザー入力を表示できない
ドライバーディスクを使用して、カーネルコマンドラインで inst.dd
オプションを使用して RHEL インストールを開始すると、コンソールにユーザー入力が表示されません。そのため、アプリケーションがユーザー入力に応答せず、応答を停止しているように見えますが、出力は表示されます。これはユーザーにはわかりにくい動作です。ただし、この動作は機能に影響を与えず、Enter
を押すとユーザー入力が登録されます。
回避策: 予想される結果を確認するには、コンソールでユーザー入力が存在しないことを無視し、入力の追加が終了したら Enter
を押します。
%packages
セクションに systemd
サービスファイルを含むパッケージがないため、キックスタートインストールが失敗する
キックスタートファイルで services --enabled=…
ディレクティブを使用して systemd
サービスを有効にし、指定したサービスファイルを含むパッケージが %packages
セクションに含まれていない場合、RHEL のインストールプロセスは次のエラーで失敗します。
Error enabling service <name_of_the_service>
Error enabling service <name_of_the_service>
回避策: キックスタートの %packages
セクションにあるサービスファイルに対応するパッケージを追加します。こうすることで、インストール中に期待されるサービスが有効になり、RHEL のインストールが完了します。
Jira:RHEL-9633[1]
署名されたコンテナーから ISO を構築できません
GPG または単純な署名付きコンテナーから ISO ディスクイメージをビルドしようとすると、次のようなエラーが発生します。
manifest - failed Failed Error: cannot run osbuild: running osbuild failed: exit status 1 2024/04/23 10:56:48 error: cannot run osbuild: running osbuild failed: exit status 1
manifest - failed
Failed
Error: cannot run osbuild: running osbuild failed: exit status 1
2024/04/23 10:56:48 error: cannot run osbuild: running osbuild failed: exit status 1
これは、システムがイメージソース署名を取得できないために発生します。
回避策: コンテナーイメージから署名を削除するか、派生コンテナーイメージをビルドします。たとえば、署名を削除するには、次のコマンドを実行します。
sudo skopeo copy --remove-signatures containers-storage:registry.redhat.io/rhel9/rhel-bootc:9.4 containers-storage:registry.redhat.io/rhel9/rhel-bootc:9.4 sudo podman run \ --rm \ -it \ --privileged \ --pull=newer \ --security-opt label=type:unconfined_t \ -v /var/lib/containers/storage:/var/lib/containers/storage \ -v ~/images/iso:/output \ quay.io/centos-bootc/bootc-image-builder \ --type iso --local \ registry.redhat.io/rhel9/rhel-bootc:9.4
$ sudo skopeo copy --remove-signatures containers-storage:registry.redhat.io/rhel9/rhel-bootc:9.4 containers-storage:registry.redhat.io/rhel9/rhel-bootc:9.4
$ sudo podman run \
--rm \
-it \
--privileged \
--pull=newer \
--security-opt label=type:unconfined_t \
-v /var/lib/containers/storage:/var/lib/containers/storage \
-v ~/images/iso:/output \
quay.io/centos-bootc/bootc-image-builder \
--type iso --local \
registry.redhat.io/rhel9/rhel-bootc:9.4
派生コンテナーイメージを構築し、それに単純な GPG 署名を追加しないようにするには、コンテナーイメージの署名 の製品ドキュメントを参照してください。
bootc-image-builder
はプライベートレジストリーからのイメージの構築をサポートしていません
現在、bootc-image-builder
を使用してプライベートレジストリーから取得されるベースディスクイメージを構築することはできません。
回避策: プライベートレジストリーをローカルホストにコピーしてから、以下の引数でイメージをビルドします。
-
--local
-
localhost/<image name>:tag
as the image
たとえば、イメージをビルドするには、次のようにします。
sudo podman run \ --rm \ -it \ --privileged \ --pull=newer \ --security-opt label=type:unconfined_t \ -v ./config.toml:/config.toml \ -v ./output:/output \ -v /var/lib/containers/storage:/var/lib/containers/storage \ registry.redhat.io/rhel9/bootc-image-builder:latest --type qcow2 \ --local \ quay.io/<namespace>/<image>:<tag>
sudo podman run \
--rm \
-it \
--privileged \
--pull=newer \
--security-opt label=type:unconfined_t \
-v ./config.toml:/config.toml \
-v ./output:/output \
-v /var/lib/containers/storage:/var/lib/containers/storage \
registry.redhat.io/rhel9/bootc-image-builder:latest
--type qcow2 \
--local \
quay.io/<namespace>/<image>:<tag>
Jira:RHELDOCS-18720[1]
レスキューモードでの SELinux の自動再ラベル付けにより、再起動ループが発生する可能性がある
rescue
モードでファイルシステムにアクセスすると、次回の起動時に SELinux によってファイルシステムの自動再ラベル付けがトリガーされ、これは SELinux が permissive
モードで実行されるまで継続されます。その結果、システムは /.autorelabel
ファイルを削除できないため、rescue
モードを終了した後に再起動の無限ループに陥る可能性があります。
回避策: 次回の起動時にカーネルコマンドラインに enforcing=0
を追加して、permissive
モードに切り替えます。システムは予防措置として、rescue
モードでファイルシステムにアクセスする際に、この問題が発生する可能性を知らせる警告メッセージを表示します。
暗号化された DNS とブートオプションのカスタム CA でホスト名の解決が失敗する
カーネルコマンドラインで inst.repo=
または inst.stage2=
ブートオプションを使用し、キックスタートファイルでリモートインストール URL、暗号化された DNS、カスタム CA 証明書を指定すると、インストールプログラムがキックスタートファイルを処理する前に install.img
ステージ 2 イメージのダウンロードを試行します。その結果、ホスト名の解決が失敗し、ステージ 2 イメージを正常に取得する前にいくつかのエラーが表示されます。
回避策: カーネルコマンドラインではなく、キックスタートファイルでインストールソースを定義します。
LACP を使用したボンディングデバイスは動作可能になるまでに時間がかかり、サブスクリプション障害が発生する
カーネルのコマンドラインブートオプションとキックスタートファイルの両方を使用して LACP でボンディングデバイスを設定すると、initramfs
ステージで接続が作成されますが、Anaconda で再アクティブ化されます。その結果、一時的な中断が発生し、rhsm
キックスタートコマンドによるシステムサブスクリプションの失敗につながります。
回避策: ネットワークを稼働状態に保つために、キックスタートネットワーク設定に --no-activate
を追加します。その結果、システムサブスクリプションは正常に完了します。
Jira:RHELDOCS-19852[1]
services
キックスタートコマンドで firewalld
サービスを無効にできない
Anaconda のバグにより、services --disabled=firewalld
コマンドを実行しても、キックスタートで firewalld
サービスを無効にできません。
回避策: 代わりに、firewall --disabled
コマンドを使用します。これにより、firewalld
サービスが適切に無効化されます。
'ignoredisk' コマンドが 'iscsi' コマンドの前にある場合、キックスタートのインストールが unknown disk エラーで失敗する
ignoredisk
コマンドが iscsi
コマンドの前に配置されている場合、キックスタート方式を使用して RHEL をインストールすると失敗します。この問題は、iscsi
コマンドがコマンド解析中に指定の iSCSI デバイスを接続する間、ignoredisk
コマンドが同時にデバイスの仕様を解決するために発生します。iscsi
コマンドによって iSCSI デバイス名が割り当てられる前に ignoredisk
コマンドが iSCSI デバイス名を参照すると、インストールが "unknown disk" エラーで失敗します。
回避策: iSCSI ディスクを参照してインストールを正常に実行できるように、キックスタートファイルで iscsi
コマンドを ignoredisk
コマンドの前に配置してください。
ostreecontainer
の使用時に /boot
パーティションが作成されていない場合、インストールプログラムが失敗する
ostreecontainer
キックスタートコマンドを使用して起動可能なコンテナーをインストールする場合、/boot
パーティションが作成されていないとインストールは失敗します。この問題は、インストールプログラムがコンテナーのデプロイを続行するために専用の /boot
パーティションを必要とするために発生します。
回避策: /boot
パーティションがキックスタートファイルで定義されているか、インストールプロセス中に手動で作成されていることを確認します。
Anaconda は s390x
および ppc64le
アーキテクチャーでは正しく動作しない可能性があります
Image Mode for RHEL は、すでにサポートされている x86_64
および ARM アーキテクチャーに加えて、pp64le
および s390x
アーキテクチャーもサポートします。ただし、Anaconda は s390x および ppc64le アーキテクチャーでは正しく機能しない可能性があります。
Jira:RHELDOCS-19496[1]
reboot --kexec
コマンドおよび inst.kexec
コマンドが、予測可能なシステム状態を提供しない
キックスタートコマンド reboot --kexec
またはカーネル起動パラメーター inst.kexec
で RHEL インストールを実行しても、システムの状態が完全な再起動と同じになるわけではありません。これにより、システムを再起動せずにインストール済みのシステムに切り替えると、予期しない結果が発生することがあります。
kexec
機能は非推奨になり、Red Hat Enterprise Linux の今後のリリースで削除されることに注意してください。
Jira:RHELDOCS-20471[1]