如何重新啟動 GRUB 及變更其組態

通常您應參考開機載入器手冊頁面瞭解相應的程序。在 Acronis 網站上也有相應的知識庫文章。

下面的例子說明在將系統磁碟(磁碟區)復原到同一硬體時,如何重新啟動 GRUB。

  1. 啟動 Linux 或從可開機媒體開機,然後按 CTRL+ALT+F2。
  2. 掛載正在復原的系統:

    mkdir /mnt/system/
    mount -t ext3 /dev/sda2 /mnt/system/ # root partition
    mount -t ext3 /dev/sda1 /mnt/system/boot/ # boot partition

  3. procdev 檔案系統掛載至正在復原的系統:

    mount -t proc none /mnt/system/proc/
    mount -o bind /dev/ /mnt/system/dev/

  4. 藉由執行以下命令之一,儲存 GRUB 功能表檔案的複本:

    cp /mnt/system/boot/grub/menu.lst /mnt/system/boot/grub/menu.lst.backup

    cp /mnt/system/boot/grub/grub.conf /mnt/system/boot/grub/grub.conf.backup

  5. 編輯 /mnt/system/boot/grub/menu.lst 檔案 (用於 Debian、Ubuntu 和 SUSE Linux 版本) 或者 /mnt/system/boot/grub/grub.conf 檔案 (用於 Fedora 和 Red Hat Enterprise Linux 版本) 例如,如下所示:

    vi /mnt/system/boot/grub/menu.lst

  6. menu.lst 檔案中(各自的 grub.conf)找出與正復原系統相對應的功能表項目。這些功能表項目具有以下形式:

    title Red Hat Enterprise Linux Server (2.6.24.4)
    root (hd0,0)
    kernel /vmlinuz-2.6.24.4 ro root=/dev/sda2 rhgb quiet
    initrd /initrd-2.6.24.4.img

    這些行以 titlerootkernelinitrd,分別確定:

  7. 編輯檔案 /mnt/system/etc/fstab,以糾正任何由於復原而發生變化的裝置的名稱。
  8. 執行以下命令之一,啟動 GRUB 殼層:

    chroot /mnt/system/ /sbin/grub

    chroot /mnt/system/ /usr/sbin/grub

  9. 指定 GRUB 所在的磁碟--通常是開機分割或根分割:

    root (hd0,0)

  10. 安裝 GRUB。例如,為了在第一磁碟的主開機記錄(MBR)中安裝 GRUB,執行以下命令:

    setup (hd0)

  11. 結束 GRUB 殼層:

    結束

  12. 卸載已掛載的檔案系統,然後重新開機:

    umount /mnt/system/dev/
    umount /mnt/system/proc/
    umount /mnt/system/boot/
    umount /mnt/system/
    reboot

  13. 藉由使用來自所用 Linux 版本的工具和使用說明來重新組態開機載入器。例如,在 Debian 和 Ubuntu 中,可能需要編輯 /boot/grub/menu.lst 檔案中的一些已注釋行,然後執行 update-grub 腳本,否則,這些更改將不會生效。