2009/06/08

xp, vista, win7 共舞 multi-boot

最近真的是離不開 M$ OS, 甚至一台電腦要裝九個作業系統,當然啦,是資源不足才需要這樣。問題來了,開機選單在 winxp 還可以透過界面修改,可是 vista, win7 全都不開放!現在研究後的心得如下,請在 vista or win7 下執行:

一、首先在 Command Prompt, 也就是 DOS command, 上用右鍵選「Run as Administrator」,這樣才有足夠的權限,若找不到的話請參考:
Start Menu->All Programs->Accessories->Command prompt(在上面點右鍵選擇"Run as administrator")

二、可以用 bcdedit /enum 列出所有開機選單,例如下面的是我的電腦的範例, # 號後面的是我加的註解:


Windows Boot Manager
--------------------
identifier {bootmgr}
device partition=D:
description Windows Boot Manager
locale en-US
inherit {globalsettings}
default {current}
resumeobject {42231781-52f5-11de-92a1-f650bd7a3f2b}
displayorder {ntldr}
{current}
{42231782-52f5-11de-92a1-f650bd7a3f2b}
{4223177e-52f5-11de-92a1-f650bd7a3f2b}
{b1252275-52ef-11de-ac3a-e7ceed221dbd}
toolsdisplayorder {memdiag}
timeout 30

Windows Legacy OS Loader
------------------------
identifier {ntldr}
device partition=D:
path \ntldr
description 舊版 Windows

# 可以用下列命令改掉
# bcdedit /set {ntldr} Description "XP 32/64"

Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \Windows\system32\winload.exe
description Microsoft Windows Vista
locale en-US
inherit {bootloadersettings}
osdevice partition=C:
systemroot \Windows
resumeobject {adc6e5dc-5450-11de-b61c-8253c0de8538}
nx OptIn
# 可以用下列命令將原來的"Microsoft Windows Vista" 改掉
# bcdedit /set {current} Description "Vista 32 en Enterprise"

Windows Boot Loader
-------------------
identifier {42231782-52f5-11de-92a1-f650bd7a3f2b}
device partition=I:
path \Windows\system32\winload.exe
description Windows 7
locale zh-TW
inherit {bootloadersettings}
recoverysequence {42231783-52f5-11de-92a1-f650bd7a3f2b}
recoveryenabled Yes
osdevice partition=I:
systemroot \Windows
resumeobject {42231781-52f5-11de-92a1-f650bd7a3f2b}
nx OptIn
# 可以用下列命令將原來的 "Windows 7" 改掉
# bcdedit /set {42231782-52f5-11de-92a1-f650bd7a3f2b} Description "Win7 64 Ultimate"

Windows Boot Loader
-------------------
identifier {4223177e-52f5-11de-92a1-f650bd7a3f2b}
device partition=H:
path \Windows\system32\winload.exe
description Windows 7
locale en-US
inherit {bootloadersettings}
recoverysequence {4223177f-52f5-11de-92a1-f650bd7a3f2b}
recoveryenabled Yes
osdevice partition=H:
systemroot \Windows
resumeobject {4223177d-52f5-11de-92a1-f650bd7a3f2b}
nx OptIn
# 可以用下列命令將原來的 "Windows 7" 改掉
# bcdedit /set {4223177e-52f5-11de-92a1-f650bd7a3f2b} Description "Win7 32 Ultimate"

Windows Boot Loader
-------------------
identifier {b1252275-52ef-11de-ac3a-e7ceed221dbd}
device partition=E:
path \Windows\system32\winload.exe
description Microsoft Windows Vista
locale en-US
inherit {bootloadersettings}
osdevice partition=E:
systemroot \Windows
resumeobject {b1252276-52ef-11de-ac3a-e7ceed221dbd}
nx OptIn
# 可以用下列命令將原來的 "Microsoft Windows Vista" 改掉
# bcdedit /set {b1252275-52ef-11de-ac3a-e7ceed221dbd} Description "Vista 64 Enterprise"


三、在上文提到的 {current} 還有 {default} 等選擇文字,其實就在 /enum 列出的 "identifier" 欄位裡面

四、 用 bcdedit /? 取得進一步資訊

0 意見: