CentOS uEFIブートが正しいドライブをマウントできませんでした: "/sysrootがオペレーティングシステムツリーではないようです。"

CentOS uEFIブートが正しいドライブをマウントできませんでした: "/sysrootがオペレーティングシステムツリーではないようです。"

私はMacBook ProにCentOS 7をインストールし、SDカードを使用してrEFIndから最初のインストール後に起動を実行しました。起動プロセスは最初は正常に動作しているように見えますが、最終的には次のメッセージで失敗します。

> Failed to switch root: Specified switch root path /sysroot does not seem to be an OS tree. os-release file is missing.

これは失敗し、緊急シェルに戻ります。

findmnt -lo sourceわずかな調整の終わりに物理ドライブがマウントされていないことがわかりました(/dev/sdX)。そのため、以下を使用してパーティションを推測し、手動でマウントしました/sysroot

mount -t ext4 --source /dev/sda4 --target /sysroot

…成功しました。その後、緊急シェルをシャットダウンし、システムが正常に起動しました。

私の問題は簡単に見えますが(最初の推測で起動問題が解決されたと判断した場合)、インターネットを介した検索ではそれほど有用な結果が得られませんでした。簡単な質問は次のとおりです。正しいドライバのインストールを妨げるUEFIブート設定(または何を探す必要があります)に問題があり、どのように解決しますか?

ありがとうございます!

答え1

これは一日かかりましたが、次の方法が私にとって効果的であることがわかりました。

genisoimage -U -r -v -T -J -joliet-long -V "CentOS 7 x86_64" -volset "CentOS 7 x86_64" -A "CentOS 7 x86_64" -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img -no-emul-boot -o ../new.iso .

重要なヒント:-Vパラメータが一致する-volset必要があります。-Aタグ=ファイルの値isolinux/isolinux.cfg! ! ! (例:initrd = initrd.img inst.stage2 = hd:LABEL =追加CentOS\x207\x20x86_64静かな)

望むより:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/anaconda_customization_guide/sect-iso-images2.3.カスタムブートイメージの作成」を参照してください。

私が見逃した鍵は、ISOラベルとブートローダラインの間の相関関係でした。また、Redhatページの正しい部分が見つかるまで、オンラインで迅速な回答が見つかりませんでした。

関連情報