如果使用開機管理員來啟動系統時發生問題,或者無法在硬碟上安裝開機管理員,也可以建立一張包含所有 Linux 必要啟動檔案的開機 CD。此時,要求您的系統安裝有 CD 燒錄器。
使用 GRUB 建立可開機的 CD-ROM 只需要一個特殊形式的 stage2 (稱為 stage2_eltorito),並可以選用自定的 menu.lst。不需要典型的檔案 stage1 和 stage2。
過程 10.7. 建立開機 CD
變更至要在其中建立 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) 來取代路徑名稱中以 (hd 格式列出的硬碟設備名稱。您可能還需要調整訊息檔案、核心和 initrd 的路徑 — 它們須分別指向 x,y)/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 影像燒錄為資料檔案,而是在您的燒錄公用程式中使用燒錄 CD 影像的選項。