EFI/GPT探索(為何win7分區時建立100M隱藏式磁碟分割)

來源:互聯網
上載者:User

標籤:

EFI/GPT探索(為何win7分區時建立100M隱藏式磁碟分割) 

轉自

http://blog.tomatoit.net/article.asp?id=348

 

EFI/GPT是新一代的韌體/啟動管理技術,比較複雜,資料很少。 
經過大量的搜尋,找到了一些資料,總算是摸到了一點門,先簡要地說一下。 

一、技術背景。EFI是Intel開發的,最早被用於Itanium電腦(1.0版),然後是Mac(1.1版),後來Intel開放了標準和技術資料,EFI由UEFI組織管理(http://www.uefi.org)。經過一段時間的開發,升級到2.0版(UEFI 2.0),目前,最新的版本是2.1。Intel有個網站,有EFI的技術資料、開發工具、執行個體代碼和工具 + 生產力(提供EFI Shell和Toolkit下載)(http://www.tianocore.org)。

二、基本概況。EFI技術比較重要的有CSM、Shell和Toolkit,CSM能夠讓使用者選擇是用EFI firmware還是Legacy BIOS開機,Apple通過Boot Camp支援這個功能,所以我們可以在Mac機上安裝Windows。至於Shell,它提供一個開機命令列環境,它可以做許多事情,目前我們需要的是用它來啟動作業系統安裝程式(因為只有這樣才可以將Windows x64 SP1或Windows Server 2008安裝到GPT分區,舊版本和32位的的Windows不可以)。Toolkit就是一些命令列工具,就像DOS下的.com/.exe檔案,不過它的副檔名是.efi。 

三、分區相關。EFI需要佔用一個分區,它的格式是FAT32,是隱藏的,預設不會掛載,所以在檔案管理工具裡是看不見的。我們可以用Mac OS X安裝盤或Windows Vista/2008安裝盤手動建立這種分區(推薦使用Windows Vista/2008安裝盤,相容性好),Mac就不用說,用diskutil或硬碟工具,Vista/2008是這樣的: 
1、準備一個全新硬碟,似乎不能已經是GPT分區表的硬碟,MBR的可以。 
開機,插入Vista/2008安裝盤,從光碟片啟動(Mac機可以開機按住Option鍵,會出現兩個光碟片表徵圖,選左邊的)。 
2、安裝畫面選擇語言後,點下一步,然後可以看到幾個選項,一是升級,二是全新安裝,下面還有兩個我忘記是什麼文字了,點最下面那一個,然後點下一步,再點最下面一個像命令控制台那樣的表徵圖,就進入了命令列。 
3、建立GPT分區過程: 
輸入diskpart,斷行符號。 
輸入list disk,可以看到硬碟編號,0,1,2,3…什麼的。 
輸入select disk x(x是硬碟編號)選中你要分區的硬碟。 
輸入clean清除該硬碟上的所有分區(如果你的硬碟不是未分區狀態)。 
輸入convert gpt將該硬碟轉換成GPT分區表(基本上可以說是永久轉換,沒法轉回MBR,除非你再次用clean清除分區表)。 
輸入create partition efi size=***(***是分區大小,以MB為單位,Mac預設是200MB,稍微搞大點沒關係,我分的是512MB)。 
輸入create partition msr size=***(msr是Microsoft保留分區,貌似MS會用它幹點什麼事,我給它分了512MB)。 
輸入create partition primary size=*** id=yyy建立資料分區,可用於安裝作業系統(id=yyy可以不必輸入,它代表的是GUID分區類型(格式,就像MBR分區表的FAT/NTFS/HFS+用一個字串代表分區格式,只不過GUID它很長,是全球唯一識別碼,這裡不輸入的話,在安裝作業系統,格式化分區時會自動產生),詳細介紹和各種分區GUID列表見此)。 
然後再重複上面那一句建立多個資料分區。 
建完了分區後,可以將EFI分區格式化一下以便掛載,方法: 
輸入list partition看一下EFI分區的編號是多少。 
輸入select partition x選中EFI分區(一般是1)。 
輸入assign letter=x(x代表你要給它分配的盤符,隨便填一個沒被佔用的盤符就好了) 
輸入exit退出diskpart分區工具,這下又回到了命令列。 
輸入format x: /fs:fat /q /y格式化這個EFI分區。 
這樣一個GPT磁碟就做好了。 
在這裡,其實還可以做一些其他的事情,比如把EFI Shell裝進去(事先把EFI Shell的檔案解壓到一個FAT32格式的隨身碟上面(移動硬碟可能也行),怎麼掛載這個隨身碟?請看上面。)不過要注意,這個命令列只能進來一次,如果你退回到安裝介面,或者停電,那你就得重新分區(首先還得弄成MBR分區)。當然了,你也可以在安裝完Vista/2008以後再做這些事情。 

四、安裝系統。由於我們的目的是將Windows Vista x64 SP1/2008 x64或其他支援EFI/GPT的系統安裝到GPT分區,所以有一個前提條件是我們得從EFI Shell啟動安裝,否則安裝程式是不允許你將作業系統安裝到GPT分區的。至於這個EFI Shell,有一個rEFIt提供了Shell(http://refit.sourceforge.net),不過它是一個Mac軟體,所以你必須得先安裝Mac OS X(至少得Tiger吧)。Intel的TianoCore網站也提供了這個東西(http://www.tianocore.org),Vista/2008安裝盤裡不知有沒有,估計沒有。

所以,目前的問題是,得拿到這個Shell,從這個Shell啟動安裝程式。這個Shell可以安裝到哪裡呢,EFI分區是FAT32格式(FAT32分區格式已開放),我們可以把它安裝到EFI分區(當然首先我們需要能夠對這個分區進行掛載和讀寫),也可以把它安裝到隨身碟或移動硬碟上的FAT32分區(看來FAT32分區還挺有用)。 
Windows掛載EFI分區就不用說了吧,上面有。 
Windows添加.efi檔案開機記錄到NVRAM請看這裡。 
Mac掛載EFI分區和添加.efi檔案開機記錄請看這個貼子的11樓。 
當然啦,我們還得知道是用哪個.efi檔案做開機記錄,Vista/2008是用bootmgr.efi做開機記錄(安裝光碟片裡有),Leopard好像是用安裝盤中/usr/standalone/i386/…/boot.efi。 

目前我還沒正式安裝Vista x64/2008到GPT分區,因為我急著把這篇文章寫出來。等安裝成功了我再補充,當然了,如果有人比我先裝好,那也很好。 
我擔心的是目前的45nm的MacBook仍然是用1.1版的EFI,而許多PC機事實上已經使用了UEFI 2.0或2.1(也就是說PC機事實上也可以這樣做)。據說2008最新款的iMac和Mac Pro已經使用了UEFI 2.0,國外有人已經安裝成功了。

 http://blog.csdn.net/skykingf/article/details/12909615

EFI/GPT探索(為何win7分區時建立100M隱藏式磁碟分割)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.