litaz 4.0 grub2 环回连接多个 initrd 映像

litaz 4.0 grub2 环回连接多个 initrd 映像

我正在尝试使用多重引导 USB 上的 grub2 环回来引导 slimaz 4.0 ISO;

insmod font
if loadfont /boot/grub/unicode.pf2 ; then
    insmod gfxterm
#   insmod efi_gop
#   insmod efi_uga
    insmod vbe
    insmod vga
    set gfxmode=auto
    set gfxpayload=auto
    terminal_output gfxterm 
    if terminal_output gfxterm; then true ; else
        terminal gfxterm
    fi
fi

set color_normal=white/black
set color_highlight=white/light-blue

set drive_uuid=DA64-F023
set isopath=/iso

menuentry "Slitaz 4.0" {
    set isofile="$isopath/slitaz-4.0.iso"
    loopback loop $isofile
    linux (loop)/boot/bzImage rw root=/dev/null vga=normal autologin isofrom=$isofile noeject noprompt lang=en kmap=en
    initrd (loop)/boot/rootfs4.gz (loop)/boot/rootfs3.gz (loop)/boot/rootfs2.gz (loop)/boot/rootfs1.gz
} # screen=text home=usb (need ext3 partition)

它确实到达了终端提示符,但由于缺少文件而无法启动 - 我相信是因为尚未加载多个 initrd 映像。

有谁知道 grub2 是否支持加载多个 initrd 映像,如果支持,使用什么语法?

答案1

如果您已经足够远到达终端提示符,那么就足以连接您想要的尽可能多的图像。您需要做的就是:

zcat <init.image | { cd / ; cpio -i \
  --make-directories \ 
#                        #Create leading directories where needed
  --preserve-modification-time \
#                        #Retain previous file modification times when
#                        #creating files
  --sparse \            
#                        #Write files with large blocks of zeros as sparse
#                        #files
  --unconditional    ; } 
#                        #Replace all files unconditionally 

答案2

它(还)不起作用。参考:http://www.sysresccd.org/forums/viewtopic.php?f=14&t=4368 但正在研究中http://savannah.gnu.org/bugs/?35238

不过你仍然可以启动“base”。


menuentry "OK: SliTaz base" {
 set isofile="/slitaz-4.0.iso"
 loopback loop $isofile
 linux (loop)/boot/bzImage  initrd=/boot/rootfs4.gz lang=C kmap=uk rw root=/dev/null vga=normal autologin
 initrd (loop)/boot/rootfs4.gz
}

相关内容