2014年5月1日星期四

Wubi + WinPE安裝Ubuntu到移動硬盤

Wubi是一個可以把Ubuntu安裝在Windows分區裏的小程式。 它的特點是不用重新分區,而且能和Windows並存。 它會先透過Windows的bootmgr啟動grub4dos的mbr image,然後使用grub4dos啟動disk img入面的Ubuntu。 因為要在其他電腦啟動Wubi的話必需要先有Windows的bootmgr。 但其實我們可以用WinPE的辦法開機。

首先我們需要有可啟動的WinPE USB。 然後修改/boot/bcd加入Wubi的開機選項。
主要是使用Real-mode Boot Sector模式,指定Wubi的mbr文件引導。
具體內容可以從Wubi原來的bcd檔案抄回來。
最後用diskpart active分區。
但是休眠後會無法讀取硬盤而死機。

代碼:
U:\boot>bcdedit /store bcd /create /application bootsector
{48e95291-7bd3-11e2-bb24-180373d3babd}

U:\boot>set wubib={48e95291-7bd3-11e2-bb24-180373d3babd}

U:\boot>bcdedit /store bcd /set %wubib% device BOOT
操作順利完成。

U:\boot>bcdedit /store bcd /set %wubib% path \ubuntu\winboot\wubildr.mbr
操作順利完成。

U:\boot>bcdedit /store bcd /set %wubib% description Lubuntu
操作順利完成。

U:\boot>bcdedit /store bcd /displayorder %wubib% /addfirst
操作順利完成。

U:\boot>bcdedit /store bcd /displayorder {b45b76b1-28a3-11e2-af07-180373d3babd}
/remove
操作順利完成。

U:\boot>bcdedit /store bcd /displayorder {063b8c3a-27e5-11e2-9fc7-180373d3babd}
/remove
操作順利完成。

U:\boot>bcdedit /store bcd /displayorder {default} /remove
操作順利完成。

U:\boot>bcdedit /store bcd /default %wubib%
操作順利完成。

U:\boot>bcdedit /store bcd /timeout 1
操作順利完成。

U:\boot>bcdedit /store bcd /enum

Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {default}
displayorder            {default}
toolsdisplayorder       {memdiag}
timeout                 1

真實模式開機磁區
---------------------
identifier              {default}
device                  boot
path                    \ubuntu\winboot\wubildr.mbr
description             Lubuntu

U:\boot>bcdedit /store bcd /enum all

Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {default}
displayorder            {default}
toolsdisplayorder       {memdiag}
timeout                 1

Windows 開機載入器
-------------------
identifier              {063b8c3a-27e5-11e2-9fc7-180373d3babd}
device                  ramdisk=[boot]\sources\w8boot.wim,{7619dcc8-fafe-11d9-b4
11-000476eba25f}
path                    \windows\system32\boot\winload.exe
description             Windows 8 PE 4.0 x64
locale                  en-us
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\w8boot.wim,{7619dcc8-fafe-11d9-b4
11-000476eba25f}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     Yes

Windows 開機載入器
-------------------
identifier              {7619dcc9-fafe-11d9-b411-000476eba25f}
device                  ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411
-000476eba25f}
path                    \windows\system32\boot\winload.exe
description             Windows Setup
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411
-000476eba25f}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     Yes

Windows 開機載入器
-------------------
identifier              {b45b76b1-28a3-11e2-af07-180373d3babd}
device                  ramdisk=[boot]\001_WIMS\winpe.wim,{7619dcc8-fafe-11d9-b4
11-000476eba25f}
path                    \windows\system32\boot\winload.exe
description             Windows PE
locale                  en-us
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\001_WIMS\winpe.wim,{7619dcc8-fafe-11d9-b4
11-000476eba25f}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     Yes

Windows 記憶體測試器
---------------------
identifier              {memdiag}
device                  boot
path                    \boot\memtest.exe
description             Windows Memory Diagnostic
locale                  en-US
inherit                 {globalsettings}

真實模式開機磁區
---------------------
identifier              {default}
device                  boot
path                    \ubuntu\winboot\wubildr.mbr
description             Lubuntu

EMS 設定
------------
identifier              {emssettings}
bootems                 Yes

偵錯工具設定
-----------------
identifier              {dbgsettings}
debugtype               Serial
debugport               1
baudrate                115200

通用設定
---------------
identifier              {globalsettings}
inherit                 {dbgsettings}
{emssettings}

開機載入器設定
--------------------
identifier              {bootloadersettings}
inherit                 {globalsettings}
{hypervisorsettings}

Hypervisor 設定
-------------------
identifier              {hypervisorsettings}
description             Hypervisor Settings
hypervisordebugtype     Serial
hypervisordebugport     1
hypervisorbaudrate      115200

裝置選項
--------------
identifier              {7619dcc8-fafe-11d9-b411-000476eba25f}
ramdisksdidevice        boot
ramdisksdipath          \boot\boot.sdi

安裝 Ramdisk 選項
---------------------
identifier              {ramdiskoptions}
description             Ramdisk options
ramdisksdidevice        unknown
ramdisksdipath          \boot\boot.sdi

U:\boot>


發佈留言

熱門文章