濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Linux折騰記(七):硬盤GPT分區(qū)和MBR分區(qū)爬坑記

Linux折騰記(七):硬盤GPT分區(qū)和MBR分區(qū)爬坑記

熱門標(biāo)簽:壽光百度地圖標(biāo)注中心網(wǎng)站 河北語音電銷機(jī)器人 商戶地圖標(biāo)注 地球地圖標(biāo)注方法 新鄭電銷外呼系統(tǒng)線路 樺甸電銷機(jī)器人 怎樣給景區(qū)加百度地圖標(biāo)注 河南智能電話機(jī)器人公司 電話機(jī)器人哪里有賣的

  之所以想到寫這篇,是因?yàn)楸救嗽谡垓vLinux系統(tǒng)的過程中,有多次掉入硬盤分區(qū)的陷阱的經(jīng)歷。最近幾天,再一次掉入坑中,折騰了兩天才從坑中爬出來。經(jīng)過多方查詢資料,終于弄明白了硬盤分區(qū)的一些概念。下面將其記錄下來,以警示來者。

  說起我自己掉坑的經(jīng)歷,無不與WinXP和Linux的激烈碰撞有關(guān)。多年前,我就開始在一臺(tái)電腦上同時(shí)安裝WinXP和Linux,只要遵守先安裝WinXP再安裝Linux的順序,就不會(huì)出問題,Linux的安裝程序會(huì)自動(dòng)識(shí)別多系統(tǒng),安裝完成后可順利啟動(dòng)多系統(tǒng)。有一天,我覺得單用Linux就夠了,于是就格了整個(gè)硬盤安裝了Linux。又有一天,我覺得還是要用WinXP,于是就重新安裝WinXP(不要對(duì)我說虛擬機(jī),多年前我的電腦還只有256M內(nèi)存,虛擬機(jī)根本跑不動(dòng)),結(jié)果發(fā)現(xiàn),WinXP的安裝程序沒辦法對(duì)硬盤進(jìn)行分區(qū)了。這個(gè)坑是由Linux中的LVM引起的,WinXP識(shí)別不了LVM分區(qū),那個(gè)時(shí)代的WinPE、DOS工具箱中的所有工具都沒辦法識(shí)別LVM,而那時(shí)我對(duì)Linux的了解又只停留在只會(huì)在安裝系統(tǒng)的時(shí)候分區(qū),根本不知道Linux系統(tǒng)中還有fdisk、parted這樣的工具,所以折騰了許久才從坑里面爬出來。多年后的現(xiàn)在,我又一次掉入了坑中。我工作時(shí)用的電腦是WinXP系統(tǒng)(天朝國(guó)情,你懂的),為了干點(diǎn)私活,我又裝了個(gè)Ubuntu上去了,這兩個(gè)系統(tǒng)一直相安無事。直到有一天,我把Ubuntu系統(tǒng)又折騰掛了,于是重裝,因?yàn)樵诜謪^(qū)的時(shí)候不小心選擇了默認(rèn)的“清除整個(gè)盤并安裝Ubuntu”,然后硬盤就被整個(gè)格掉了,WinXP就沒有了。我當(dāng)時(shí)想,這多大點(diǎn)兒事,我再裝個(gè)WinXP不就完了嗎。但是問題來了,無論我怎么安裝,WinXP系統(tǒng)就是啟動(dòng)不了。后來才整明白,這個(gè)坑是硬盤采用了GPT分區(qū)引起的。那為什么我讓Ubuntu自動(dòng)分區(qū)它就分成了GPT分區(qū)呢?這也怪這臺(tái)惠普的工作用機(jī)比較奇葩,它即支持legacy BIOS,也支持EFI,當(dāng)原來WinXP存在時(shí),它用的當(dāng)然是MBR分區(qū)(msdos分區(qū)),所以安裝Ubuntu時(shí)就是使用的MBR分區(qū),而后來Ubuntu自動(dòng)分區(qū)時(shí),它看到主板支持EFI,就自動(dòng)把硬盤整成GPT分區(qū)了。我也是折騰了幾天才明白這個(gè)道理,最后終于在Ubuntu LiveCD的parted程序的幫助下,使用一個(gè)mklabel msdos命令把硬盤從GPT分區(qū)更改為MBR分區(qū),然后再按順序安裝WinXP和Ubuntu,才算是從坑里面爬出來。

  對(duì)于那些長(zhǎng)期管理大型機(jī)房和大存儲(chǔ)容量的服務(wù)器的朋友,對(duì)于硬盤分區(qū),他們肯定是早就做好了功課。不會(huì)像我這樣,直到碰到問題才會(huì)去學(xué)習(xí)相關(guān)的知識(shí)。對(duì)于硬盤分區(qū)的這些知識(shí),我總結(jié)如下(只是簡(jiǎn)單總結(jié),具體內(nèi)容請(qǐng)大家自行搜素):

  1、傳統(tǒng)的BIOS只支持從MBR分區(qū)的硬盤啟動(dòng)。MBR分區(qū)的分區(qū)表保存在硬盤的第一個(gè)扇區(qū),而且只有64字節(jié),所以最多只能有四個(gè)表項(xiàng)。也就是說,我們只能把硬盤分為4主分區(qū),或者分成小于等于3個(gè)主分區(qū)再加一個(gè)擴(kuò)展分區(qū)。擴(kuò)展分區(qū)又可以分為多個(gè)邏輯分區(qū)。MBR分區(qū)的優(yōu)點(diǎn)就是簡(jiǎn)單,大家都用,所以大家都懂的嘛,很多操作系統(tǒng)都可以從MBR分區(qū)的硬盤啟動(dòng)。缺點(diǎn)就是MBR分區(qū)不能識(shí)別大于2T的硬盤空間,也不能有大于2T的分區(qū);

  2、GPT分區(qū)的硬盤可以解決以上MBR分區(qū)的所有缺點(diǎn),它沒有4個(gè)主分區(qū)的限制,想分幾個(gè)主分區(qū)就可以分幾個(gè)主分區(qū),它可以識(shí)別大于2T的硬盤空間,每個(gè)分區(qū)的大小也可以超過2T。但是它的缺點(diǎn)是需要操作系統(tǒng)支持。比如只有WinXP 64位、Win Vista、Win 7和Win 8和比較新的Linux發(fā)行版支持GPT分區(qū)的硬盤。而且,如果沒有EFI的支持的話,以上系統(tǒng)也只能將GPT分區(qū)的硬盤當(dāng)成數(shù)據(jù)盤,不能從GPT分區(qū)的硬盤啟動(dòng);

  3、要從GPT分區(qū)的硬盤啟動(dòng),則主板使用EFI、硬盤使用GPT分區(qū)、操作系統(tǒng)支持GPT和EFI這三個(gè)條件缺一不可。目前比較新的64位Linux系統(tǒng)和Win8系統(tǒng)都是支持EFI的,所以都是需要從GPT分區(qū)的硬盤啟動(dòng)的?,F(xiàn)在的電腦主板已經(jīng)逐漸拋棄legacy BIOS,而只支持EFI了。(像我的工作機(jī)這樣的過渡產(chǎn)品將越來越少。)目前很多預(yù)裝Win8的筆記本的主板幾乎都只支持EFI了。所以,學(xué)習(xí)GPT和EFI的相關(guān)知識(shí)勢(shì)在必行;

  4、以上分區(qū)策略都是固定分區(qū)。硬盤分區(qū)一旦完成,則分區(qū)的大小不可改變,如果要改變分區(qū)的大小的話,只有重新分區(qū)。而且由于沒有辦法把多個(gè)硬盤分到一個(gè)區(qū),所以再怎么分,每個(gè)分區(qū)的大小都有限。所以我們需要一種動(dòng)態(tài)分區(qū)的東西。LVM就是這樣一個(gè)東東,它叫邏輯卷管理。使用LVM的機(jī)制是這樣的:首先把硬盤分區(qū)或者整塊硬盤標(biāo)記為一個(gè)物理卷(PV),然后再創(chuàng)建一個(gè)卷組(VG),把一個(gè)或多個(gè)物理卷加入卷組,最后對(duì)卷組進(jìn)行分區(qū),每一個(gè)分區(qū)稱為一個(gè)邏輯卷(LV)。LVM的優(yōu)點(diǎn)就是可以隨時(shí)向卷組中添加物理卷擴(kuò)展卷組的大小,以可以動(dòng)態(tài)調(diào)整邏輯卷的大小。這在服務(wù)器中尤其有用,比如說有一個(gè)原本有100個(gè)用戶的服務(wù)器,其/home目錄下就會(huì)有100個(gè)用戶的主目錄,如果給他們每人分配20G的空間的話,就會(huì)占滿一個(gè)2T的硬盤,如果這時(shí)再來100個(gè)用戶怎么辦?如果使用LVM就可以順利解決這個(gè)問題,我們可以再加一個(gè)3T的硬盤,然后把這個(gè)硬盤加入卷組就可以擴(kuò)大卷組的大小,然后再調(diào)整/home所在的邏輯卷的大小即可。LVM既可以搭配MBR使用,也可以搭配GPT使用。

  下面通過Ubuntu 14.04安裝過程中自動(dòng)分區(qū)的策略來驗(yàn)證以上知識(shí)點(diǎn)。首先,對(duì)于只支持legacy BIOS的電腦,安裝Ubuntu時(shí)分區(qū)選項(xiàng)如下:

  這時(shí),不選擇啟動(dòng)LVM的選項(xiàng)。安裝完操作系統(tǒng)后,使用parted程序查看硬盤分區(qū),通過查看/etc/fstab文件來了解哪個(gè)分區(qū)對(duì)應(yīng)哪個(gè)文件系統(tǒng),如下圖:

  通過上面圖片中parted程序中的print命令的輸出可以看出,硬盤的分區(qū)表類型為msdos,也就是MBR分區(qū)。硬盤分為一個(gè)主分區(qū)sda1和一個(gè)擴(kuò)展分區(qū)sda2,主分區(qū)sda1占20.4G,擴(kuò)展分區(qū)sda2只有1072M,擴(kuò)展分區(qū)中只有一個(gè)邏輯分區(qū)sda5。通過/etc/fstab可以看出主分區(qū)sda1掛載到根目錄,邏輯分區(qū)sda5為交換空間。

  上面的分區(qū)方案是最簡(jiǎn)單最常用的一種。下面來看看啟用LVM是什么效果。在選擇分區(qū)方案的界面選擇開啟LVM的選項(xiàng),如下圖:

  安裝完操作系統(tǒng)后,還是通過parted程序和/etc/fstab來查看硬盤的分區(qū)及使用情況,如下圖:

  從圖中可以看出,分區(qū)表的類型還是msdos。硬盤還是只分了一個(gè)主分區(qū)sda1和一個(gè)擴(kuò)展分區(qū)sda2,但是主分區(qū)sda1只有255M,擴(kuò)展分區(qū)sda2倒是有21.2G,同樣擴(kuò)展分區(qū)只分為一個(gè)邏輯分區(qū)sda5,邏輯分區(qū)sda5占用擴(kuò)展分區(qū)中全部的21.2G空間,而且sda5的標(biāo)志是lvm,說明該分區(qū)被標(biāo)記為一個(gè)物理卷(PV),它肯定是被加入到了一個(gè)卷組(VG)中。通過/etc/fstab文件可以看出,主分區(qū)sda1掛載到/boot,而根目錄和交換空間掛載的是兩個(gè)邏輯卷(LV)。

  通過LVM命令可以查看系統(tǒng)中卷組、物理卷和邏輯卷的信息,如下圖:

  通過pvs和pvdisplay命令,可以看到系統(tǒng)中只有一個(gè)物理卷,那就是/dev/sda5,該物理卷加入到了卷組ubuntu-vg之中。通過vgs和vgdisplay命令可以看到系統(tǒng)中只有一個(gè)卷組,那就是ubuntu-vg,該卷組被分為兩個(gè)邏輯卷。

  再看下圖:

  通過lvs和lvdisplay命令可以看到卷組分為兩個(gè)邏輯卷,它們分別掛載到根目錄和交換空間。

  通過LVM命令還可以進(jìn)行更多的操作,比如創(chuàng)建新的卷組,將新的物理卷加入到卷組,增大或減小邏輯卷的大小等等。具體用什么命令,一個(gè)help即可搞定。

  最后,來看看在主板只支持EFI的情況下,Ubuntu如何分區(qū)。安裝的啟動(dòng)界面如下:

  這個(gè)安裝界面和legacy BIOS系統(tǒng)下的安裝界面是不同的,傳統(tǒng)的安裝界面如下:

  在EFI模式下,還是選擇自動(dòng)分區(qū)。安裝完操作系統(tǒng)后,使用parted和/etc/fstab來查看硬盤的分區(qū)和使用情況,如下圖:

  通過以上圖片可以看出,硬盤的分區(qū)表類型為gpt,硬盤分為三個(gè)區(qū),都是主分區(qū)。其中第1個(gè)分區(qū)sda1的大小是537M,文件系統(tǒng)是fat32,其掛載的路徑是/boot/efi,而另外兩個(gè)分區(qū)一個(gè)掛載到根目錄,一個(gè)為交換空間。從上面的信息我們不難推斷:只支持EFI的主板只能從GPT分區(qū)的硬盤啟動(dòng),而且該硬盤第1個(gè)分區(qū)必須為fat32文件系統(tǒng),該文件系統(tǒng)中存放的是EFI需要的各種文件。

  如果在安裝Ubuntu系統(tǒng)的時(shí)候不是選擇自動(dòng)分區(qū),而是選擇最后那個(gè)“其它選項(xiàng)”來自定義分區(qū),會(huì)發(fā)現(xiàn)其實(shí)Ubuntu提供的自定義分區(qū)功能很有限。它沒辦法讓人選擇是使用MBR分區(qū)還是使用GPT分區(qū),也沒有辦法選擇是否啟用LVM。如果需要更靈活的管理的話,還是只有點(diǎn)擊“試用Ubuntu”按鈕,進(jìn)入LiveCD的Ubuntu系統(tǒng)后,使用parted命令和lvm命令手動(dòng)管理硬盤分區(qū)。

延伸閱讀:

  除了硬盤分區(qū),平常還有可能用到的硬盤管理功能有以下一些:

  1、創(chuàng)建RAID,可以使用mdadm程序;

  2、查看個(gè)分區(qū)或各文件夾的空間占用 ,使用df和du程序;

  3、指定磁盤配額,使用quota軟件包;

  4、查看各分區(qū)的文件系統(tǒng)、UUID、卷標(biāo),使用blkid程序。

 

(京山游俠于2014-07-13發(fā)布于博客園,2015-01-23整理于BlogJava,轉(zhuǎn)載請(qǐng)注明出處。)

標(biāo)簽:淄博 迪慶 楚雄 來賓 忻州 阜陽 遼陽 荊州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux折騰記(七):硬盤GPT分區(qū)和MBR分區(qū)爬坑記》,本文關(guān)鍵詞  Linux,折騰,記,七,硬盤,GPT,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux折騰記(七):硬盤GPT分區(qū)和MBR分區(qū)爬坑記》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Linux折騰記(七):硬盤GPT分區(qū)和MBR分區(qū)爬坑記的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    任丘市| 临猗县| 库车县| 平顶山市| 丹巴县| 德格县| 平舆县| 双鸭山市| 井陉县| 逊克县| 宝鸡市| 泗水县| 甘谷县| 黑龙江省| 塔城市| 潮州市| 宜川县| 昌邑市| 台北市| 清水河县| 荥经县| 姚安县| 扎鲁特旗| 绥芬河市| 宣汉县| 贡觉县| 田东县| 平远县| 当阳市| 定南县| 泰州市| 安达市| 天镇县| 南陵县| 英吉沙县| 吴堡县| 巢湖市| 石泉县| 白沙| 长治县| 根河市|