CentOS インストール メディアを起動するための GRUB エントリを作成する

CentOS インストール メディアを起動するための GRUB エントリを作成する

通常、CentOS 7 をインストールするときは、ISO をダウンロードし、それをサムドライブに書き込んで起動します。ただし、CentOS 7 インストール ファイルをシステムの/boot/パーティションに配置し、GRUB2その環境で起動できるカスタム エントリを作成するというユニークなシナリオがあります。これを使用して、同じシステムに CentOS 7 をインストールできます。

馬鹿げた話だとは思いますが、私には理由があります。

少し調べた後、これがどのように機能するのかを解明しようとしています。現在、私の頭の中にある考えは次のとおりです。

  1. GRUB2CentOS 7 カーネルをロードしvmlinuzinitrd.img.
  2. カーネルを初期化し、initrd.imgメモリにロードした後、dracut-initqueueサービスが開始されます。
  3. 次に、プロセスはインストール ランタイム (この場合は Anaconda) を保持するイメージのdracut-initqueueロードを試みます。stage2
  4. 最後に、CentOS のインストール プロセスが開始されます。

それで、まずは…

  1. ISO をダウンロードしてマウントし、、/images/pxeboot/vmlinuzおよび/images/pxeboot/initrd.img(イメージ/LiveOS/squashfs.imgが含まれていると思われるstage2) ファイルをパーティションにコピーしました/boot/
  2. 以下のエントリを に追加しました/etc/grub.d/40_custom
menuentry "CentOS 7 Installation" {
set root=(hd0,msdos1)
linux   /centos7-install/vmlinuz initrd=initrd.img stage2=/centos7-install/squashfs.img
initrd  /centos7-install/initrd.img
}

上記を実行した後、少なくとも Anaconda のロードまではできると期待していましたが、代わりに単に「dracut-initqueue timeout」メッセージがロードされました。残念ながら、何が悪かったのかを正確に示すログを見つけることができませんでした。

これについてどうしたらよいか、何かアイデアをお持ちの方はいらっしゃいますか?

答え1

次の行を置き換えます

linux   /centos7-install/vmlinuz initrd=initrd.img stage2=/centos7-install/squashfs.img

linux   /centos7-install/vmlinuz inst.repo=<source>

フルインストールDVDのディレクトリとファイルの完全なコピーがここに<source>あります。オプションで、「ブート」ISOからファイルを抽出し、 「DVD」ISOからファイルだけをコピーすることもできます。NFSなどの追加オプションについては、http://host/path.treeinfoドキュメンテーション

もちろん、この方法を「そのまま」使用するにはネットワーク アクセスが必要です。

関連情報