要掌握
linux磁碟分割槽,先了解一下硬碟的物理結構.
一、硬碟的物理結構
為了便於理解,可將硬碟看作乙個圓,它是堅硬金屬材料製成的塗以磁性介質的碟片,不同容量硬碟的碟片數不等.每個盤有兩面,都可記錄資訊.要了解硬碟的物理結構,需要弄懂磁軌、扇區、柱面、簇等幾個概念.
磁軌:上圖中硬碟被一圈圈分成18等分的同心圓,這些同心圓就是磁軌.但開啟
硬碟,使用者不能看到這些,它實際上是被磁頭磁化的同心圓.這些磁軌是
有間隔的,因為磁化單元太近會產生干擾.
扇區:每個磁軌中被分成若干等份的區域.
扇區是硬碟資料儲存的最小單位.
柱面:假如乙個硬碟只有上圖中的3個磁碟片,每一片中的磁軌數是相等的.從
外圈開始,這些磁軌被分成了0磁軌、1磁軌、2磁軌...具有相同磁軌編
號的同心圓組成面就稱作柱面.為了便於理解,柱面可以看作沒有底的鐵
桶.從上圖可以看出,柱面數就是磁碟上的磁軌數.
柱面是硬碟分割槽的最小單位.
因此,乙個硬碟的容量=柱面*磁頭*扇區*512
簇:扇區是硬碟資料儲存的最小單位,但作業系統無法對數目眾多的扇區進行尋
址,所以作業系統就將相鄰的扇區組合在一起,形成乙個簇,然後再對簇進
行管理.每個簇可以包括2、4、8、16、32、64個扇區.
二、硬碟的分割槽
要掌握硬碟的分割槽,需要掌握
mbr、擴充套件分割槽、邏輯分割槽的概念.
從上圖可以看出,硬碟裡分為兩個區域,乙個是放置該硬碟的資訊區,稱之為
主引導分割槽
(master boot recorder,mbr),乙個是實際檔案資料放置的地方.其中,mbr是整個硬碟最重要的區域.一旦mbr物理實體損壞時,則該硬碟就差不多報廢了.一般來說,mbr有512個位元組,且可以分為兩個部分.
(1)第一部分有446個位元組,用於存放引導**,即bootloader.
(2)第二部分有64個位元組,用於存放磁碟分割槽表.其中,每個分割槽的資訊需要用16個位元組來記錄,因此,乙個硬碟最多可以有4個分割槽.這4個分割槽稱之為主分割槽和
擴充套件分割槽
(extended).
注:通常所說的"硬碟分割槽"就是指修改磁碟分割槽表,它定義了"第n個磁碟塊是從第x個柱面到第y個柱面".因此,當系統要讀取第n個磁碟塊時,就是去讀硬碟上第x個柱面到第y個柱面的資訊.
由於擴充套件分割槽只能有乙個,所以這4個分割槽可以是4個主分割槽或者3個主分割槽加1個擴充套件分割槽,如下所示:
p + p + p + p
p + p + p + e
重點說明的是,擴充套件分割槽不能直接使用,還需要將其劃分為邏輯分割槽才行.這樣就產生了乙個問題,既然擴充套件分割槽不能直接使用,但為什麼還要劃分出一定的空間來給擴充套件分割槽呢?這是因為,如果使用者想要將硬碟劃分為5個分割槽的話,那該如何?此時,就需要擴充套件分割槽來幫忙了.
由於mbr僅能儲存4個分割槽的資料資訊,如果超過4個,系統允許在額外的硬碟空間存放另乙份磁碟分割槽資訊,這就是擴充套件分割槽.若將硬碟分成3p+e,則e實際上是告訴系統,磁碟分割槽表在另外的那份分割槽表,即擴充套件分割槽其實是指向正確的額外分割槽表.本身擴充套件分割槽
不能直接使用,還需要額外將擴充套件分割槽分成
邏輯分割槽
才能使用,因此,使用者通過擴充套件分割槽就可以使用5個以上的分割槽了.
attention!!!
(1)實際上,不建議使用者將硬碟分為4個主分割槽.這是因為,假如乙個20gb的硬碟,若4個主分割槽佔據了15gb的空間,則剩下的5gb空間完全不能使用,因為已經沒有多餘的分割槽表可以記錄這些空間了.
(2)考慮到磁碟的連續性,一般建議將擴充套件分割槽放在最後面的柱面內.
(3)理論上允許乙個硬碟只有1個主分割槽,其它空間都分配給擴充套件分割槽.
三、linux磁碟分割槽
在windows作業系統中,是先將實體地址分開,再在分割槽上建立目錄.在windows作業系統中,所有路徑都是從碟符開始,如c://program file.
linux正好相反,是先有目錄,再將物理位址對映到目錄中.在linux作業系統中,所有路徑都是從根目錄開始.linux
預設可分為3個分割槽,分別是boot分割槽、swap分割槽和根分割槽.
無論是windows作業系統,還是linux作業系統,每個分割槽均可以有不同的檔案系統,如fat32、ntfs、yaffs2等.
(1)boot分割槽
該分割槽對應於/boot目錄,約100mb.該分割槽存放linux的grub(bootloader)和核心原始碼.使用者可通過訪問/boot目錄來訪問該分割槽.換句話說,使用者對/boot目錄的操作就是操作該分割槽.
(2)swap分割槽
該分割槽沒有對應的目錄,故使用者無法訪問.
linux下的swap分割槽即為虛擬記憶體.虛擬記憶體用於當系統記憶體空間不足時,先將臨時資料存放在swap分割槽,等待一段時間後,然後再將資料調入到記憶體中執行.所以說,虛擬記憶體只是暫時存放資料,在該空間內並沒有執行.
ps:虛擬記憶體
虛擬記憶體是指將硬碟上某個區域模擬為記憶體.因此虛擬記憶體的實際實體地址仍然在硬碟上.虛擬記憶體,或者說swap分割槽只能由系統訪問,其大小為物理記憶體的2倍.
(3)根分割槽
在linux作業系統中,除/boot目錄外的其它所有目錄都對應於該分割槽.因此,使用者可通過訪問除/boot目錄外的其它所有目錄來訪問該分割槽.
attention!!!
(1)在linux作業系統中,使用者可根據需要進行修改分割槽.修改後的分割槽中,同一目錄下的檔案可能在不同分割槽中.比如/home目錄下有a、b、c三個目錄,可將不同的分割槽掛載到這三個目錄下.這種操作是允許的.
(2)一塊磁碟上最多有13個分割槽:
為了實現硬碟上的最多分割槽,可以將硬碟分割槽為1個主分割槽和3個擴充套件分割槽,而每個擴充套件分割槽又可以分為4個邏輯分割槽.這樣,一塊硬碟上最多有13個分割槽.
<1>硬碟上至少有1個主分割槽.
<2>邏輯分割槽不能再進行分割槽.
(3)linux分割槽目錄和"碟符"的關係
假如硬碟安裝在ide1的主盤,並使用者想分割槽成6個可以使用的硬碟分割槽,則可以採用下面兩種方式.
方式一:採用3個主分割槽和3個邏輯分割槽
方式二:採用1個主分割槽和5個邏輯分割槽
安裝linux時,預設分為三個區,分別是/boot分割槽、根分割槽和swap分割槽.這三個分割槽分別對應的碟符是hda1、hda2、hda3.
(4)linux允許使用fdisk -l命令和df -h命令來查詢其硬碟分割槽.其中,df無法顯示出swap分割槽的大小.
[root@localhost /]#fdisk -l
device boot start end blocks id system
/dev/hda1 * 1 13 104391 83 linux
/dev/hda2 14 1175 9333765 83 linux
/dev/hda3 1176 1305 1044225 82 swap
[root@localhost /]#df -h
檔案系統 容量 已用 可用 已用% 掛載點
/dev/had2 8.8gb 3.1gb 5.3gb 38% / (根分割槽)
/dev/hda1 99mb 9.2mb 85mb 10% /boot (boot分割槽)
(5)在pc機下,a、b盤並不存在,這兩個盤在linux下類似於hda1/hda2,而c盤類似於hda3,d、e、f盤類似於hda5、hda6、hda7.
(6)swap分割槽不對應"碟符".
(7)若硬碟的mbr已壞,則該磁碟就不能再作為引導盤,只能作為資料盤.因為mbr位於硬碟的起始處,使用者不能通過軟體進行修復,也不能跳過起始處.而硬碟中間的某個磁軌壞了,使用者可以軟體修復,也可以跳過該磁軌.
四、嵌入式系統分割槽
嵌入式系統可以分為4個區,分別是bootloader、para、kernel、根分割槽等,與windows、linux分割槽不同.
(1)在嵌入式系統中,沒有swap分割槽,只有實際的物理空間.
(2)bootloader、para、kernel這三個分割槽的功能類似於linux系統中的/boot分割槽,這三個分割槽分別存放嵌入式系統的啟動**和核心.
注:linux系統中/boot分區內存放著linux啟動**和核心原始碼.
(3)根分割槽(/)可以構造,其功能類似於linux系統中的根分割槽.在這個分割槽中可以建立許多目錄,比如/root、/home、/usr等,但不能建立/boot目錄.
(4)分割槽bootloader、para、kernel只能由位址來區分,而根分割槽只能由目錄來區分.
(5)嵌入式系統的驅動程式、上層軟體都放在根分割槽.在嵌入式系統啟動後,系統無法檢視到bootloader、para、kernel這三個分割槽.
linux 磁碟分割槽
以後我們都將生活在數字時代,任何事都可以用二進位制的方法儲存起來。對於個人來說資料關鍵在於 全面 而對於系統運維工程師來說關鍵在於 大 所以如何安全的儲存就是我們要解決的問題之一。對於一塊硬碟 要想在系統中起到作用需要以下步驟 1 當然要正確的插上 2 利用fdisk命令 對磁碟進行分割槽,新建可用...
Linux磁碟分割槽
首先,介紹2種分割槽表 mbr分割槽表 mbr master boot record 支援的最大卷 2tb tb terabytes,1tb 1024gb 對分割槽的設限 最多4個主分割槽或3個主分割槽加乙個擴充套件分割槽。gpt分割槽表 gpt guid partition table 支援的最大...
Linux磁碟分割槽
在pc中常見的磁碟介面有ide和sata兩種,現在的pc基本上都是sata介面了,較老的可能還是ide介面。在ide介面中,各個磁碟分割槽的名字就是hda1,hda2這種形式 在sata介面中,各個磁碟分割槽的名字就是sda1,sda2這種形式。磁碟主要由碟片 機械手臂 磁頭和主軸馬達等組成。關於磁...