我正在嘗試了解 Debian“從硬碟啟動”安裝手冊。
過程如下:我將 a kernel image
、 aramdisk initrd
和 an ISO
with 安裝程式複製到硬碟,然後設定 GRUB 來啟動核心和 ramdisk,而且我還必須告訴 GRUB,根檔案系統在哪裡(它應該位於ISO),以便核心可以將root 轉向它。但是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 對此含糊其辭。
答案1
複製自frostshutz評論:
initrd.gz (initramfs) 包含 busybox 使用者區域和為此目的編寫的 Debian 腳本。 GRUB2 也支援直接循環安裝 ISO,但通常只是從 ISO 本身取得核心/initrd,一旦再次加載,核心/initrd 必須找到 ISO 並循環安裝。