1,各硬件裝置在Linux中的文件名架構
在Linux系統中,每一個裝置都被當成一個檔案來對待 ide
在Linux這個系統當中,幾乎全部的硬件裝置檔案都在 /dev這個目錄內spa
2,磁盤分區操作系統
磁盤鏈接的方式與裝置文件名的關係:blog
我的計算機常見的磁盤接口有兩種, 分別是IDE(並口,又叫ATA接口寬,針腳多)接口
與SATA接口(窗口,接口窄,針腳少) get
因爲一個IDE扁平電纜能夠鏈接兩個IDE裝置,又一般主機都會提供兩個IDE接口,所以最多能夠接到四個IDE裝置
it
兩個IDE接口一般被稱爲IDE1(primary)及IDE2(secondary), 而每條 扁平電纜上面的IDE裝置能夠被區分爲Master(主人)與Slave(奴隸)io
SATA/USB接口的磁盤根本就沒有必定的順序 決定他的裝置文件名根據Linux核心偵測到磁盤的順序table
例題:若是你的PC上面有兩個SATA磁盤以及一個USB磁盤,而主板上面有六個SATA的插 槽。這兩個SATA磁盤分別安插在主板上的SATA1, SATA5插槽上,請問這三個磁盤在Linux中的裝置文件名爲什麼? 答: 因爲是使用偵測到的順序來決定裝置文件名,並不是與實際插槽代號有關,所以裝置的文件 名以下:
1. SATA1插槽上的檔名:/dev/sda
2. SATA5插槽上的檔名:/dev/sdb
3. USB磁盤(開機完成後才被系統捉到):/dev/sdc
3,磁盤的組成複習 :
磁盤的組成主要有磁盤盤、機械手臂、磁盤讀取頭與主軸馬達所組成,磁盤盤上面又可細分出扇區(Sector)與磁柱(Cylinder)兩種單位,其中扇區每一個爲512bytes那麼大
整顆磁盤的第一個扇區特別的重要,由於他記錄了整顆磁盤的重要信息!
磁盤的第一個扇區主要記錄了兩個重要的信息:
x主要啓動記錄區(Master Boot Record, MBR):能夠安裝開機管理程序的地方,有446 bytes
x分割表(partition table):記錄整顆硬盤分割的狀態,有64 bytes
MBR是很重要的,由於當系統在開機的時候會主動去讀取這個區塊的內容,這樣系統纔會知道你的程序放在哪裏且該如何進行開機
4,磁盤分區表(partition table):
開始與結束磁柱是文件系統的最小單位,也就是分割槽的最小單位
咱們就是利用參考對照磁柱號碼的方式來處理的
分割表所在的64 bytes容量中,總共分爲四組記錄區,每組記錄區記錄了該區段的啓始與結束的磁柱 號碼
硬盤以長條形來看,而後將磁柱以柱 形圖來看,那麼那64 bytes的記錄區段有點像底下的圖
假設上面的硬盤裝置文件名爲/dev/hda時,那麼這四個分割槽在Linux系統中的裝置文件名以下所示,重點在於檔名後面會再接一個數字,這個數字與該分割槽所在的位置有關
x P1:/dev/hda1 (在P1區該硬盤裝置文件名稱)(在P1區裝置文件名稱就叫/dev/hda1)
x P2:/dev/hda2
x P3:/dev/hda3
x P4:/dev/hda4
四個分割的記錄被稱爲主要 (Primary)或延伸(Extended)分割槽
x 其實所謂的『分割』只是針對那個64 bytes的分割表進行設定而已!
x 硬盤默認的分割表僅能寫入四組分割信息
x 這四組分割信息咱們稱爲主要(Primary)或延伸(Extended)分割槽
x 分割槽的最小單位爲磁柱(cylinder)
x 當系統要寫入磁盤時,必定會參考磁盤分區表,才能針對某個分割槽進行數據的處理
P1爲主要分割,而P2則爲延伸分割
上圖右下方那個區塊有繼續分割出五個分割槽, 這五個由延伸分割繼續切出來的分割槽,就被稱爲 邏輯分割槽(logical partition)
一樣的,上述的分割槽在Linux系統中的裝置文件名分別以下:
x P1:/dev/hda1
x P2:/dev/hda2
x L1:/dev/hda5
x L2:/dev/hda6
x L3:/dev/hda7
x L4:/dev/hda8
x L5:/dev/hda9
由於前面四個號碼都是保留給Primary 或Extended用的!因此邏輯分割槽的裝置名稱號碼就由5號開始了
主要分割、延伸分割與邏輯分割的特性做個簡單的定義:
x 主要分割與延伸分割最多能夠有四筆(硬盤的限制)
x 延伸分割最多隻能有一個(操做系統的限制)
x 邏輯分割是由延伸分割持續切割出來的分割槽;
x 可以被格式化後,做爲數據存取的分割槽爲主要分割與邏輯分割。延伸分割沒法格式化;
x 邏輯分割的數量依操做系統而不一樣,在Linux系統中,IDE硬盤最多有59個邏輯分割(5號到 63號), SATA硬盤則有11個邏輯分割(5號到15號)。
4,開機流程與主要啓動記錄區(MBR):
CMOS是記錄各項硬件參數且嵌入在主板上面的儲存器
BIOS則是一個寫入到主板上的一個韌體
整個開機流程到操做系統以前的動做應該是這樣的:
1. BIOS:開機主動執行的韌體,會認識第一個可開機的裝置;
2. MBR:第一個可開機裝置的第一個扇區內的主要啓動記錄區塊,內含開機管理程序;
3. 開機管理程序(boot loader):一支可讀取核心檔案來執行的軟件;
4. 核心檔案:開始操做系統的功能...
boot loader的主要任務有底下這些項目:
x 提供選單:用戶能夠選擇不一樣的開機項目,這也是多重引導的重要功能!
x 載入核心檔案:直接指向可開機的程序區段來開始操做系統;
x 轉交其餘loader:將開機管理功能轉交給其餘loader負責。
第三點表示你的計算機系統裏面可能具備兩個以上的開機管理程序,雖然咱們的硬盤只有一個MBR而已,可是開機管理程序除了能夠安 裝在MBR以外,還能夠安裝在每一個分割槽的啓動扇區(boot sector)這個特點才能造就『多重引導』的功能
x 每一個分割槽都擁有本身的啓動扇區(boot sector)
x 實際可開機的核心檔案是放置到各分割槽內的!
x loader只會認識本身的系統槽內的可開機核心檔案,以及其餘loader而已;
x loader可直接指向或者是間接將管理權轉交給另外一個管理程序。
爲何人家經常說:『若是要安裝多重引導, 最好先安裝Windows再安裝 Linux』呢?
這是由於:
x Linux在安裝的時候,你能夠選擇將開機管理程序安裝在MBR或各別分割槽的啓動扇區, 並且 Linux 的loader能夠手動設定選單(就是上圖的M1, M2...),因此你能夠在Linux的boot loader裏面加入 Windows開機的選項;
x Windows在安裝的時候,他的安裝程序會主動的覆蓋掉MBR以及本身所在分割槽的啓動扇 區,你沒有選擇的機會, 並且他沒有讓咱們本身選擇選單的功能。
5,Linux安裝模式下, 磁盤分區的選擇(極重要) :
x 目錄樹結構(directory tree):
所謂的目錄樹架構(directory tree)就是以根目錄爲主,而後向下呈現分支狀 的目錄結構的一種檔案架構
因此,整個目錄樹架構最重要的就是那個根目錄(root directory),這個 根目錄的表示方法爲一條斜線『/』, 全部的檔案都與目錄樹有關
全部的檔案都是由根目錄(/)衍生來的
上圖中長方形爲目錄, 波浪形則爲檔案
mydata那個檔案時,系統就得由根目錄開始找,因此最終的檔名爲:/home/dmtsai/mydata
x 文件系統與目錄樹的關係(掛載):
所謂的『掛載』就是利用一個目錄當成進入點,將磁盤分區槽的數據放置在該目錄下
也就是說,進 入該目錄就能夠讀取該分割槽的意思。這個動做咱們稱爲『掛載』
那個進入點的目錄咱們稱爲『掛載點』
因爲整個Linux系統最重要的是根目錄,所以根目錄必定須要掛載到某個分割槽的。