2012/10/1

0
Retina Macbook Pro with BootCamp on External HDD

[Note: 2013年底出的RMBP已經不能用這招了,原因不明 Not working anymore since late 2013 Model]
在Mac上利用BootCamp跑Windows不是甚麼神奇的事情
甚至有許多人是棄OSX不用,把磁區整個清掉只裝Windows

然而,對於搭載SSD的機種來說本來容量就是會盡量想省著用了
切個Partition出去裝Windows不只浪費空間還平白增加SSD磨耗
因此如果能夠將Windows裝在外接硬碟上實在是再方便不過

不過,如果上Apple查詢這件事情的話得到的答案會是:

Apple的理由為何不得而知
不過可以確信的是Mac的硬體是支援外接硬碟開機的
USB/Firewire/eSata都是有人實證過可以安裝OSX開機完全正常運作
那麼問題就在Windows是否有支援安裝在外接硬碟上?

很不幸的,Windows不支援安裝在USB和Firewire硬碟上
以Windows7來說,安裝過程中試圖要選外接裝置的時候就會發現
Windows並不同意安裝在USB或Firewire磁碟上
如果是選擇eSata應該沒問題,不過這偏偏就是Mac並不具備的介面

不給安裝也罷,我在別的地方裝完拆過來如何?
這也不行,因為Windows先天設計就不給從USB或FW裝置上開機
會毫無保留的在Load到PNP模組的時候BSOD給你看

於是這個問題從Hack一台Mac,轉變成了怎麼去Hack Windows了
比較傳統的做法上是從Windows Installation源頭下手
早期有這麼些教學討論如何從Driver Level下手Hack XP
Howto:Hacking WinXP to boot directly off a USB HDD drive
Installing XP on a USB device

能Hack XP是不賴,但XP不再是個適合的選擇
因為Apple早已拒絕在新Mac上提供XP Driver
好運的是,已經有先進做出可以輕鬆Patch Win7
使之能以USB硬碟之姿進行開機
工具在此:
PWBoot - Portable Windows Boot project

看到這邊為止如果是都完全看得懂的人
應該不用我再多說自己就知道要怎麼搞定了 XD
實際上在執行的時候我還是遇到了不少問題
以下算是個紀錄方便以後回顧


--------------------------------------[警告]--------------------------------------
以下步驟需要對相關專業知識的充分理解並且有相當風險
如果因為仿效而有發生任何問題,所有後果請自行承擔
--------------------------------------[警告]--------------------------------------



前置準備:
一顆USB 2.0外接硬碟 (後面會說明為何不使用3.0的)
一台安裝了VMWare Playe的Windows PC
Windows 7安裝光碟
PWBoot
BootCamp Driver

Step1:
USB 2.0硬碟插上Windows PC
磁區切割到自己想要的分區方式

Step2:
以管理者權限啟動VMWare Player,然後新增一台VM
新增過程中可以都先用預設值就好
因為再來會需要大幅變更VM的硬體設定

Step3:
進入Virtual Machine Settings
為了保持這份Windows安裝的乾淨度
將下圖紅線劃掉的裝值全部移除(對,包含硬碟在內)
如果電腦上有藍牙裝置的話,建議在USB那邊把2.0 Support以外的項目也都取消




Step4:
再來要把Step1的硬碟掛上VMWare,將Windows安裝上去
按下方的Add,新增裝置選硬碟,然後選第三項"Use a Physical Disk"
在選單中選到正確的硬碟,鉤"Use Entire Disk"後按確定
(如果不確定哪個編號才是正確的外接硬碟,可以先用diskpart來做確認)




Step5:
把VM啟動,照一般流程把Win7安裝起來,直到可以操作桌面為止
然後請將VM正常關機,並將整個VMWare Player關閉


Step6:
執行PWBoot
選擇Patch Existing System




Step7:
Target System選擇External System
Disk選到剛剛安裝了Win7的那顆磁碟
按下Patch,等他執行完

Step8:
安全移除這棵USB硬碟
到此為止這棵硬碟已經準備好可以在Mac上開機了


Step9:
將硬碟接上Mac,開機時按著Option不放
當磁碟都跳出來後選擇這顆外接硬碟開機


Step10:
沒有意外的話,應該會順利開進Windows桌面
Windows會開始安裝新出現的裝置,請耐心等待這些都裝完
途中如果跳出找不到Driver的視窗請全數按取消讓他跳過
如果有要求重開機的話就讓他重開機一次再回到桌面

Step11:
執行BootCamp Driver的Setup,讓他把所有東西都裝完

Step12:
安裝完後先不要重開機!
立刻到新增移除程式中,把Intel USB 3.0的驅動程式移除掉
如果沒有把這一項移除掉的話
再來除了安全模式以外都沒有辦法在Mac上開進Windows
我不確定是Intel USB 3.0 Driver造成的問題或者是PWBoot當初還沒有考慮到3.0
總之這個項目必須移除才能順利開機
這也是為什麼前面說選擇USB 2.0的硬碟就好
因為這個Driver移除掉以後,3.0的所有優點就都享受不到了
這邊也可以順道把其他用不到的Driver移除掉
比方說RMBP搭載的就是NV的顯卡,AMD的Driver就可以清掉

Step13:
再次重開機完,如果前面的步驟都正確的話
應該會順利進入桌面,並且看到螢幕以2880x1800的解析度來呈現了
再下來的步驟不一定必要,看個人需求決定


到這邊系統正常啟動後,會開始跳出「虛擬記憶體設定失敗」的訊息
這是因為Windows天生是禁止在外接裝置上建立Pagefile的
目前這樣從USB硬碟開機的情況下就會跳這樣的訊息
以RMBP的情況來說,8G的RAM都不一定用的完了,沒有Pagefile也不會怎樣
況且使用的是USB 2.0硬碟,Bandwidth給系統存取都只是勉強夠用了
再加個Pagefile進來攪局IO效能恐怕不增反減
我個人是建議這個錯誤訊息就Esc跳過別理他了

但也不能排除,有些使用情況下就是非得需要Pagefile不可
需要Pagefile的人就往下看到Step14吧


Step14:
請Google關鍵字 "diskmod_0.0.2.2" ,這是一個Disk Driver
在Windows硬體管理員中將USB 2.0硬碟的Driver手動換成這個
Driver會將自己是可移除式媒體的訊息過濾掉
讓Windows認為這是一顆普通內接硬碟
如此一來Pagefile就會順利的建立在這顆硬碟上了

[Note: 2013年底出的RMBP已經不能用這招了,原因不明 Not working anymore since late 2013 Model]




0 コメント:

 
Template from Ireng Manis modified to suit for Live a Vagrancy