2013年2月18日 星期一

Grub4Dos 如何進入作業系統

過年這幾天被朋友問到關於 Grub4Dos 系統安裝碟 的其他問題:
「我插入了 USB 系統安裝碟後要怎麼進入電腦內的作業系統,
 因為將 BIOS 設定成 Removable Device 為優先開機,
 但裝完系統後忘記拔除裝置造成電腦開機後再度進入 Removable Device,
 所以能不能在選單中加個選項方便進入作業系統?」
有這種想法挺不錯的,
可以用內建的功能加入「倒數計時」與「預設進入項目」來完成!

經過上網查詢後找到 2 種進入作業系統的寫法,
其整體內容如下(加至 menu.lst 中)
graphicsmode -1 640:800 480:600 24:32
font /unifont.hex.gz
timeout 10
default 0

title 啟動 Windows 作業系統\n只支援 Windows Vista 以後的版本
find --set-root /bootmgr
chainloader /bootmgr

title 進入 Grub 開機選單\n適用於使用 Grub 當開機選單的電腦
find --set-root /boot/grub/core.img
kernel /boot/grub/core.img

上述內容是倒數 10 秒後,
timeout 10
倒數 10 秒後啟動預設項目。
進入選單的預設啟動項目第 0 項。
(我們的第 1 項對電腦來說通常是第 0 項,所以數完後記得要減 1)
default 0
這將會進入「啟動 Windows 作業系統」的選項。

進入作業系統這裡寫了 2 個:

一、直接進入 Windows 作業系統

一般電腦用戶多半使用微軟的 Windows(Microsoft Windows),
所以可以套用第 0 項的「啟動 Windows 作業系統」。

find --set-root /bootmgr
主要寫著搜尋所有支援的分區格式,
且位於根目錄下的微軟 Windows 開機啟動檔「bootmgr」,
並將它設為第 1 項裝置。

chainloader /bootmgr
然後用 chainloader 指令把 bootmgr 載入後啟動,
理所當然的是微軟 Windows 系統必須是 Vista (含)以上的版本才有這個 bootmgr 檔案。

二、進入 Grub 開機選單

另一個則是針對有安裝 Grub 當作開機選單的電腦,
對象通常是 Linux 使用者居多,
所以透過第 2 項的「進入 Grub 開機選單」即可開啟 Grub 選單畫面。

kernel /boot/grub/core.img
嘗試載入主要開機映像檔案 core.img。

2 則留言:

  1. 我想在USB 上 放win7 及 win10 的安裝
    但我如果將menu.lst 增加 這兩段

    title [03] 安裝 Windows 10 整合版 \n Install Windows 10 multiple x64
    find --set-root /win10/boot/bootmgr
    chainloader /win10/boot/bootmgr
    boot


    title [04] 安裝 Windows 7 旗艦版 \n Install Windows 7 Ultimate x64
    find --set-root /win7/boot/bootmgr
    chainloader /win7/boot/bootmgr
    boot

    卻發現 boot、efi、sources 若不在X:/隨身碟的根目錄 會執行失敗
    意旨 放在/win7 or /win10 一定會執行失敗 想請問這個問題

    回覆刪除
    回覆
    1. 你可能對本章的內容有誤解,
      這裡所記載的指令是針對以 USB 開機時如何進入本機系統,
      而不是用來安裝系統!

      刪除