brent s. <bts@xxxxxxxxxxxxxxx> 于2019年11月6日周三 下午12:33写道: > > On 11/5/19 10:50 PM, Hongyi Zhao via arch-general wrote: > >> Are you using the appropriate kernel cmdline args in the menu entry? > >> They're different from Arch's grub loopback menu entry. > > > > This is just what I stucked on. I failed to figure out the correct > > cmdline args used for linux and initrd. > > > >> > >> https://wiki.debian.org/DebianLive/MultibootISO > > > > Useless. This is for Debian *live* instead of Debian *install* iso, > > the image I use for install Debian is: > > > > http://mirrors.ustc.edu.cn/debian-cd/10.1.0/amd64/iso-dvd/debian-10.1.0-amd64-DVD-1.iso > > The live CD contains the installer. They're functionally the same, more > or less, and are created by the same tool/use the same init. > > The only difference from that article is: > > bootoptions="findiso=$iso_path boot=live components quiet splash" > > would instead match the boot entry of the installer ISO. e.g. these are > directly from the install ISO's grub menu ([iso]/boot/grub/grub.cfg): > > menuentry --hotkey=g 'Graphical install' { > set background_color=black > linux /install.amd/vmlinuz vga=788 --- quiet > initrd /install.amd/gtk/initrd.gz > } > menuentry --hotkey=i 'Install' { > set background_color=black > linux /install.amd/vmlinuz vga=788 --- quiet > initrd /install.amd/initrd.gz > } > (...) > > SO you can either: > > 1.) Use the following: > > set iso_path=path/to/debian-10.1.0-amd64-DVD-1.iso > loopback loop "$iso_path" > > menuentry --hotkey=g 'Graphical install' { > set background_color=black > linux (loop)/install.amd/vmlinux vga=788 findiso=$iso_path components > --- quiet IMO, this is the most difficult thing to figure out a workable menuentry, I mean, the follownig code inserted here: findiso=$iso_path components And from where can I find the full manual for this? I have inspected the following webpage: https://www.kernel.org/doc/Documentation/admin-guide/kernel-parameters.txt And I cannot find out the parameters/arguments used here: `findiso' and `components'. > initrd (loop)/install.amd/gtk/initrd.gz > } > menuentry --hotkey=i 'Install' { > set background_color=black > linux (loop)/install.amd/vmlinuz vga=788 findiso=$iso_path > components --- quiet > initrd /install.amd/initrd.gz > } > > > > or even, > 2.) Use the ISO's grub file directly: > > > set iso_path=path/to/debian-10.1.0-amd64-DVD-1.iso > loopback loop "$iso_path" > > menuentry 'Debian' { > configfile (loop)/boot/grub/grub.cfg No, this is not the initial grub.cfg used by the iso when running in the efi mode which is the de-facto nowsdays. The first grub.cfg used by the iso is: /EFI/debian/grub.cfg This file will then source all of the other grub.cfg, including the one in /boot/grub/grub.cfg, which is the last grub.cfg in the chain. > } > > > But the latter is unlikely to work because again, that config is > expecting to be running grub itself so the paths are probably not going > to be correct. > > > I recommend instead using a generic name for the ISOs (e.g. > "debian.iso") so you don't need to edit/regenerate the grub.cfg for the > USB device every time you update the ISO. > > > -- > brent saner > https://square-r00t.net/ > GPG info: https://square-r00t.net/gpg-info > -- Hongsheng Zhao <hongyi.zhao@xxxxxxxxx> Institute of Semiconductors, Chinese Academy of Sciences GnuPG DSA: 0xD108493