天天看點

關于LINUX的檔案與硬碟分區

在介紹linux磁盤分區之前,我們需要了解的硬碟的概念,,硬碟是計算機上的儲存設備,其他的儲存設備還包括軟碟、錄音帶機、U盤、CD、等,硬碟屬于最常見的計算機儲存設備了。硬碟的組成部分組要是許多的盤片、機械手臂、磁頭與主軸馬達組成,資料都是寫在上面的盤片上的,,了解每個盤片上的組成機關尤為重要,下圖是我自己畫的一個盤面結構的示意圖,網上有很多,自己畫的比較粗糙:

關于LINUX的檔案與硬碟分區

1. 首先是磁道的概念,盤面會劃分成多個同心圓,每個同心圓都會存儲一定量的資料,每個被相鄰同心圓分割的出來的區域(藍色部位)稱作磁道;

2. 以圓心放射狀的方式将磁道分割出來的小區域就成為扇區,每個扇區的大小是固定的,都是512bytes;

3. 一個磁盤是由多個盤面組成的,那麼,由所有盤面中相同半徑長度的磁道共同組成一個柱面,柱面是硬碟分割的最小機關!

4. 每個盤片是有兩面的!

5. 硬碟容量的計算公式:存儲容量=磁頭數×磁道(柱面)數×每道扇區數×每扇區位元組數

注意:盤面的每一面都有一個磁頭,通常使用磁頭磁頭号進行區分。

總結:

(1)硬碟有數個盤片,每盤片兩個面,每個面一個磁頭 

(2)盤片被劃分為多個扇形區域即扇區 

(3)同一盤片不同半徑的同心圓為磁道 

(4)不同盤片相同半徑構成的圓柱面即柱面 

好了,接下來需要介紹一下硬碟與計算機的接口:

接口主要有三種:

1. IDE接口:排線寬,每個接口可以連接配接兩個IDE裝置,一個是Master(主)一個是slaver(從),理論上傳輸速度可以達到133MB每秒。我們稱可以連結到IDE接口的裝置成為IDE裝置,不管是磁盤還是CD光牒。

2. SATA接口:接口要比IDE小很多,排線細小利于散熱,sata一代傳輸速度可以達到150MB,data二代可以達到500MB每秒。目前主流使用SATA接口。

3. SCSI接口:工作站級别使用,不了解。

接下來步入正題

一. 硬碟在LINUX系統中的檔案名

1. 在Linux系統中,每一個裝置都是當作一個檔案來對待,同時,幾乎所有的硬碟裝置都存放在/dev目錄下(/ 是根目錄)

2. IDE裝置在系統中的檔案名是在/dev/hd/[a-d],假設你有兩個IDE接口,那麼這兩個IDE接口通常被稱為IDE1和IDE2,由于IDE接口可以連接配接兩個IDE裝置,那麼實際上你可以連接配接四個IDE裝置,對于IDE1,它下面的兩個裝置中master的檔案名是:/dev/hda,slaver的檔案名是:/dev/hdb;而IDE2接口下面的兩個裝置中mster的檔案名是:/dev/hdc,

slaver的檔案名是:/dev/hdd

3. SATA接口的裝置的檔案名是/dev/sd[a-p],而SATA接口與IDE接口不同,不同的SATA接口并沒有一定順序,是以不能像IDE接口那樣對不同用的磁盤做區分,是以linux是根據系統檢測到磁盤的順序來進行檔案命名的:

比如我的計算機上有兩個SATA接口的磁盤和一個USB接口的磁盤,分别接在主機闆上的SATA1接口和SATA5接口,那麼根據系統檢測的順序,由于USE磁盤時在開機之後才被檢測到的,是以它的檔案名就是/dev/sdc,SATA1接口的磁盤就是/dev/sda,SATA2接口的磁盤就是/dev/sdb

4. 其他常見的硬碟檔案名如下:

SATA/SCSI/USB:/dev/sd[a-p]

U盤:/dev/sd[a-p]

滑鼠:USB:/dev/usb/mouse[0-15]     PS2:/dev/psaux

這幾個最好是背下來

二. 磁盤分區表

首先需要知道的是成哥磁盤第一柱面、第一扇區是最重要的,為什麼說塔它是最重要的呢,第一扇區包含兩個内容:主引導分區(MBR)和分區表。MBR的意義在于它用來記錄引導加載程式,開機的時候會主動讀取這個區域的内容,告訴系統如何開機,加載什麼地方的程式。分區表的就相當于一個硬碟的目錄,告訴系統硬碟是如何分割的。舉個例子:

假設一個硬碟有400和柱面,那麼異地柱面的第一扇區就是如圖所示黑色的地方,我們把硬碟分成四個區域,1~100、101~200、201~300、301~400

關于LINUX的檔案與硬碟分區

在分區表中,他記錄的磁盤的分割情況:p1:1~100、p2:101~200...,假設上面的磁盤裝置所挂載的檔案是/dev/hda的時候,那麼四個分區所對應的裝置檔案名就分别是:

p1:/dev/hda1  p2:/dev/hda2  p3:/dev/hda3  p4:/dev/hda4,如果你的作業系統是windows,那麼第一分區到第四分區分别對應了C、D、E、F盤如果你把資料放在第四分區,也就是放在了300~400柱面之間。

需要注意的是,你的分區表隻有64bytes,是以最多隻能分成四塊區域,這四個區域被稱為主或擴充分區,後面還會有邏輯分區。

通過上圖可以得知,分區的最小機關是柱面。

既然一塊硬碟預設隻能分成四個區域,那麼我能不能在分更多的區域?當然是可以得,隻能分成四塊區域是因為第一扇區的分區表容量有限,那麼我們可以用其他扇區記錄更多的分區資訊。其原理如下圖所示:

關于LINUX的檔案與硬碟分區

如圖所示,是使用邏輯分區來進行分區擴充,正常情況下,我們的磁盤是由主分區與擴充分區組成的,分區表中也隻能記錄主分區與擴充分區,而我們新擴充的區域(邏輯分區,途中灰色的區域)是在擴充分區中進行再次劃分的,邏輯分區隻能存在于擴充分區,每個磁盤的擴充分區最多有一個,每個磁盤中的擴充分區與主分區一共最多是4個。

上圖的磁盤分區表是:

p1:1~100    p2:101~400    p3:    p4:

那麼上面的磁盤所挂在的檔案名就是:

主分區(粉色):/dev/hda1

擴充分區(整個灰色的區域):/dev/hda2

邏輯分區:

    L1:/dev/hda5

    L1:/dev/hda6

    L1:/dev/hda7

    L1:/dev/hda8

    L1:/dev/hda9

請注意:hd3、hd4是為主分區或者擴充分區預留的,邏輯分區不能使用

當然,除了上面的結構,你也可以規劃成3個主分區和一個擴充分區或者2個主分區和一個擴充分區

總結一下,關于主分區、擴充分區、邏輯分區你需要知道:

一個磁盤上是由主分區與擴充分區組成的

主分區與擴充分區一共最多隻能有四個

擴充分區最多隻能有一個

邏輯分區是由擴充分區切割出來的

擴充分區無法被格式化,主分區與邏輯分區可以被格式化後作為資料通路

在Linux作業系統中,IDE硬碟最多能有59個邏輯分區,SATA硬碟最多有11個邏輯分區

如果擴充分區被破壞,所有的邏輯分區将被删除

二. 開機流程與主引導分區(MBR)

我們已經了解了第一扇區的分區表,接下來我們再來看看第一扇區的另一個内容:主引導分區

首先我們來認識一下主機闆上兩個重要的元件

CMOS晶片:CMOS是一個裝在主機闆上的晶片,它用來記錄内置網卡或顯示卡是否要啟動已經各項參數,他需要額外的點原來發揮記錄功能。

BIOS:BIOS是一套寫死在主機闆上的程式,開機按del鍵可以進入BIOS界面,他是開機的時候系統第一個讀取的程式,它控制着開機的時候各項硬體參數的取得,他記錄了系統硬體的相信資訊和開機裝置的選擇,對于計算機相當重要!

在開機的時候,BIOS程式回去分析計算機中的儲存設備,以硬碟為例子:

關于LINUX的檔案與硬碟分區

BIOS的任務主要是粉色的區域,MBR用來加載核心檔案(紫色部分),以上就是一個開機流程。

繼續閱讀