Grubメニュー項目:vmlinuzとinitrd.imgの自動検索

Grubメニュー項目:vmlinuzとinitrd.imgの自動検索

知りたいです。 LinuxをロードするようにUSBキーを設定しました。この方法

うまくいきますが、grub.cfg次のようにファイルを手動で構成する必要があります。

insmod loopback
insmod iso9660

menuentry 'XUbuntu 16.04 "Xenial Xerus" -- amd64' {
          set isofile="/linux-iso/xubuntu-16.04.1-desktop-amd64.iso"
          search --no-floppy --set -f $isofile
          loopback loop $isofile
          linux  (loop)/casper/vmlinuz.efi locale=fr_FR bootkbd=fr console-setup/layoutcode=fr iso-scan/filename=$isofile boot=casper persistent file=/cdrom/preseed/ubuntu.seed noprompt ro quiet splash noeject --
          initrd (loop)/casper/initrd.lz
}

menuentry 'Debian 9.3.0 amd64 netinst' {
          set isofile="/linux-iso/debian-9.3.0-amd64-netinst.iso"
          search --no-floppy --set -f $isofile
          loopback loop $isofile
      linux (loop)/install.amd/vmlinuz boot=live config findiso=$isofile
      initrd (loop)/install.amd/initrd.gz
}

ご覧のとおり、Linuxカーネルをロードすることを除いて、ほとんどのコードは同じですlinuxinitrd時にはファイルがにあり/install.amd、時にはにありinitrd.gz、時にはinitrd.lz...そしてカーネルに対する他のオプションについては言及すらしませんでした。かなり混乱しています。

問題は、実際にddUSBスティックにISOを生成すると、システムが他の情報なしで起動されることです。だから私は自動ロードするカーネルに関する情報を回復する方法があるようです...私は最高のシナリオで私のフォルダに多くの情報を入れることができるようにこれをgrubに実装することは可能ですか?.isogrub/linux-iso自体をロードするカーネルとオプションを探しますか?

ありがとうございます!

注:そうです。いいえUSBスティックを作成するときにこのソフトウェアやこのソフトウェアを使用するように答えを聞きたい場合は、自分で実装したいと思います。

答え1

USBドライブで追加の操作のみを実行すると、追加情報なしでシステムがUSBドライブから起動します。

これは、ISOイメージが準備されているisohybridか、同等にCD / DVDスタイルのブートローダーだけでなく、ハードディスクスタイルのブートローダー(またはブートローダー:1つは既存のBIOS + MBRブート用、もう1つはUEFI用)が含まれているためです。ddISOイメージをUSBスティックにコピーします。ハードディスクスタイルのブートローダの設定には、ISOイメージに使用される特定のパスと起動オプションが含まれます。

より:http://www.syslinux.org/wiki/index.php?title=Isohybrid

各 ISO イメージで共通の ISOLINUX ブートローダー構成ファイルを検索し、そこからその行をlinux読み取り、initrd複数の ISO にまたがるブートローダー構成ファイルを組み合わせるスクリプトを作成できます。ただし、複数の ISO USB スティックを準備する場合、これらのスクリプトは、実際のブートプロセスよりも完全な機能を備えたオペレーティングシステム内で実行する方が簡単です。

関連情報