如果使用開機管理員來啟動系統發生問題,或者開機管理員無法安裝在硬碟或磁片的 MBR 上,也可以建立一張包含 Linux 所有必要啟動檔案的開機 CD。您的系統需要有一個 CD 燒錄器。
使用 GRUB 建立可開機的 CD-ROM 只需要一個特殊形式的 stage2 (稱為 stage2_eltorito),並可以選用自定的 menu.lst。不需要典型的檔案 stage1 和 stage2。
變更至要在其中建立 ISO 影像的目錄,例如: cd /tmp
為 GRUB 建立子目錄,然後變更至新建立的 iso 目錄︰
mkdir -p iso/boot/grub && cd iso
將核心以及stage2_eltorito、initrd、menu.lst 和 message 等檔案複製至 iso/boot/:
cp /boot/vmlinuz boot/ cp /boot/initrd boot/ cp /boot/message boot/ cp /usr/lib/grub/stage2_eltorito boot/grub cp /boot/grub/menu.lst boot/grub
調整 boot/grub/menu.lst 中的路徑項目,使它們指向光碟機。方法是以 CD-ROM 光碟機的裝置名稱 (cd) 來取代路徑名稱中以 (hdx,y) 格式列出的硬碟設備名稱。您可能還需要調整訊息檔案、核心和 initrd 的路徑 — 它們分別需指向 /boot/message、/boot/vmlinuz 和 /boot/initrd。調整之後,menu.lst 的內容應類似於下面的範例:
timeout 8 default 0 gfxmenu (cd)/boot/message title Linux root (cd) kernel /boot/vmlinuz root=/dev/sda5 vga=794 resume=/dev/sda1 \ splash=verbose showopts initrd /boot/initrd
使用 splash=silent (而非使用 splash=verbose) 讓開機訊息不要出現在開機程序中。
使用以下指令建立 ISO 影像:
genisoimage -R -b boot/grub/stage2_eltorito -no-emul-boot \ -boot-load-size 4 -boot-info-table -iso-level 2 -input-charset utf-8 \ -o grub.iso /tmp/iso
使用您偏好的公用程式,將產生的檔案 grub.iso 燒錄至光碟。請勿將 ISO 影像燒錄為資料檔案;請在您的燒錄公用程式中使用燒錄光碟影像的選項。