Debian
如何將 ISO 指定為 GRUB 的根文件系統的位置?
我正在嘗試了解 Debian “從硬碟引導”安裝手冊。
過程如下:我將a
kernel image
、aramdisk initrd
和anISO
with安裝程序複製到硬碟驅動器,然後配置GRUB啟動核心和ramdisk,但我還必須告訴GRUB,根文件系統在哪裡(它應該位於ISO),以便核心可以將根轉向它。但是debian 提供的 grub 配置似乎將整個硬碟驅動器指定為根文件系統,而不是其中的 ISO 文件:GRUB1:
title New Install root (hd0,0) kernel /boot/newinstall/vmlinuz initrd /boot/newinstall/initrd.gz
GRUB2:
menuentry 'New Install' { insmod part_msdos insmod ext2 set root='(hd0,msdos1)' linux /boot/newinstall/vmlinuz initrd /boot/newinstall/initrd.gz }
為什麼會這樣?GRUB 是否如此聰明地將 ISO 文件作為根文件系統而不是整個硬碟掛載在硬碟上?還是我必須把
dd
ISO 的內容直接放到硬碟上?Debian 對此含糊其辭。
複製自frostshutz 評論:
initrd.gz (initramfs) 包含busybox 使用者空間和為此目的而編寫的Debian 腳本。GRUB2 還支持直接循環掛載 ISO,但通常只是從 ISO 本身獲取核心/initrd,一旦再次載入,必須由核心/initrd 找到並循環掛載 ISO。