萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Windows Server 2008 教學

使用 GRUB 實現 Windows 2000、Red Hat 9、Mandrake 9.1 三重開機不衝突完整教學

硬碟分區規劃

作者環境:兩顆硬碟 (80GB + 10GB)。規劃原則:Windows 系統安裝在第一顆硬碟,Linux 系統安裝在第二顆硬碟,避免 Windows 無法識別 ext3 分區導致效能下降。

分區配置範例

  • 第一顆硬碟 (hda) 80GB: 單一 NTFS 分區安裝 Windows 2000 (hda1)。
  • 第二顆硬碟 (hdb) 10GB:
    • 交換分區 (swap):大小 = 實體記憶體 × 1.5 (記憶體 ≥ 512MB 時可設為等同記憶體大小),格式 swap。
    • 兩個根分區 (/):各約 5GB,格式 ext3,分別安裝 Red Hat 9 (hdb2) 與 Mandrake 9.1 (hdb5,邏輯分區從 hdb5 開始)。

安裝順序與開機載入器設定

  1. 先安裝 Windows 2000 (佔用 hda1 MBR)。
  2. 安裝 Red Hat 9:將 GRUB 安裝在 hda1 的 MBR (覆蓋 Windows 開機載入器)。
  3. 安裝 Mandrake 9.1:將 LILO 或 GRUB 安裝在 /boot 的第一個扇區 (hdb5 的開機扇區),不要 安裝在 MBR,避免覆蓋 Red Hat 的 GRUB。

Linux 裝置命名規則:
• 第一顆硬碟主分區:hda1, hda2, hda3, hda4
• 邏輯分區:hda5 開始
• 第二顆硬碟主分區:hdb1, hdb2... 邏輯分區:hdb5 開始
• 使用 fdisk -l 或 df -la 確認實際分區對應。

修改 GRUB 設定檔 (grub.conf) 實現三重開機

進入 Red Hat 9 系統,編輯 /boot/grub/grub.conf (或 menu.lst):

default=0
timeout=10
splashimage=(hd1,2)/boot/grub/splash.xpm.gz

title Windows 2000
rootnoverify (hd0,0)
chainloader +1

title Red Hat 9
root (hd1,2)
kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/
initrd /boot/initrd-2.4.20-8.img

title Mandrake 9.1
kernel (hd1,4)/boot/vmlinuz root=/dev/hdb5 quiet devfs=mount acpi=off vga=788
initrd (hd1,4)/boot/initrd.img

關鍵參數說明

參數 說明
default=X 預設開機項目索引 (0 為第一項)
timeout=X GRUB 選單等待秒數
title XXX 開機選單顯示名稱,可自訂
root (hdX,Y) X=硬碟編號 (0=第一顆),Y=分區編號 (從 0 起算,邏輯分區對應 hdX,Z-1)。
例:Mandrake 在 hdb5 → root (hd1,4)
kernel (hdX,Y)/boot/vmlinuz ... 指定核心映像檔位置與核心參數
initrd (hdX,Y)/boot/initrd.img 指定初始化映像檔位置
rootnoverify (hdX,Y) 不驗證檔案系統,用於 Windows 等非 Linux 分區
chainloader +1 鏈式載入該分區第一磁軌的開機磁區 (Windows 標準啟動方式)

完成與驗證

儲存 grub.conf 後重新開機,GRUB 選單將顯示三個作業系統選項,依序選擇即可進入對應系統。若需新增其他作業系統,同理在 grub.conf 新增對應區塊即可。

copyright © 萬盛學電腦網 all rights reserved