主流的磁碟介面為sata介面。
sata/usb/scsi等磁碟介面都是使用scsi模組來驅動的,因此這些介面的磁碟裝置檔名都是/dev/sd[a-p]的格式。順序需要根據linux核心檢測到磁碟的順序來決定。
比如pc上面有兩個sata磁碟以及乙個usb磁碟,而主機板上面有6個sata的插槽。這兩個sata磁碟分別安插在轉的sata1 sata5介面上,請問這三個磁碟在linux中的裝置檔名是什麼?
1.sata1插槽上的檔名 /dev/sda
2.sata2插槽上的檔名 /dev/sdb
3.usb磁碟(開機完成後才被系統識別) /dev/sdc
磁碟資料的寫入實際上是在碟片上面。碟片上面又可以細分出扇區(sector)與柱面(cylinder)兩種單位,其中扇區每個為512bytes那麼大。
每塊磁碟的第乙個扇區特別重要,因為它記錄了整塊磁碟的兩個重要資訊:
①主引導分割槽(master boot record mbr):可以安裝引導引導程式的地方,有446 bytes
②分割槽表(partition table):記錄整塊硬碟分割槽的狀態,有64bytes
mbr是很重要的,因為系統在開機的時候會主動去讀取這個區塊的內容,這樣系統才會知道你的程式放在**且該如何進行開機。如果你要安裝多重引導的系統 mbr這個區塊的管理就非常重要了。
分割槽表記錄磁碟的分割槽情況,在下面介紹。
柱面是檔案系統的最小單位,也就是分割槽的最小單位。我們就是利用參考柱面號碼的方式來處理,在分割槽表所在的64bytes容量中,總共分為四組記錄區,每組記錄區記錄了該區段的起始與結束的柱面號碼。
假設上面的硬碟裝置檔名是是/dev/hda時,那麼這四個分割槽在linux系統中的裝置檔名如下所示:
p1:/dev/hda1
p2:/dev/hda2
p3:/dev/hda3
p4:/dev/hda4
由於分割槽表的容量限制,最多只能容納四個分割槽。這四個分割槽被稱為主(primary)或者擴充套件(extended)分割槽。
請注意以下資訊:
①其實所謂的」分割槽」只是針對那個64bytes的分割槽表進行設定而已。
②硬碟預設的分割槽表僅能寫入四組分割槽資訊。
③這四組分割槽資訊我們稱為主(primary)和擴充套件(extended)分割槽。
④分割槽的最小單位為柱面(cylinder)。
當系統要寫入磁碟時,一定會參考磁碟分割槽表,才能針對某個分割槽進行資料的處理。
為什麼」分割槽」?
原因①:資料的安全性
原因②:系統的效能考慮
雖然分割槽表只能記錄四個分割槽,但是不代表我們最多只能分割槽四個。既然第乙個扇區所在的分割槽表只能記錄四個資料,那可以利用額外的扇區來記錄更多的分割槽資訊。
擴充套件分割槽的目的是使用額外的扇區來記錄分割槽資訊,擴充套件分割槽本身並不能被拿來格式化。但是我們可以通過擴充套件分割槽所指向的那個區塊繼續做分割槽記錄。
由擴充套件分割槽繼續切出來的分割槽稱為邏輯分割槽(logical partition)。由於邏輯分割槽是由擴充套件分割槽繼續分割槽出來的,所以它可以使用的柱面範圍就是擴充套件分割槽所設定的範圍。
需要注意的時,不管分割槽表的4個記錄用不用完,檔案中1-4始終都是保留著呢。即使只用了乙個主分割槽,擴充套件分割槽也是從5開始。
請注意以下資訊:
①主分割槽與擴充套件分割槽最多可以有四個(硬碟的限制)。
②擴充套件分割槽最多只能有乙個(作業系統的限制)。
③邏輯分割槽是由擴充套件分割槽持續切割出來的分割槽。
④能夠被格式化後作為資料訪問的分割槽為主分割槽和邏輯分割槽。擴充套件分割槽無法格式化。
⑤邏輯分割槽的數量依作業系統不同而不同。在linux系統中,sata硬碟最多有11個邏輯分割槽(5號到15號)
注意:如果擴充套件分割槽被破壞,所有邏輯分割槽都將會被刪除。因為邏輯分割槽的資訊都記錄在擴充套件分割槽裡面。
所以,如果乙個硬碟的第乙個扇區(就是mbr與partition table所在的扇區)物理壞掉了,那這個硬碟大概就沒有用了。
舉個例子
假設pc上有兩塊硬碟,在第二塊硬碟(sdb)分出6個可用的分割槽,那麼每個分割槽在linux系統下的裝置檔名如何?
分法一:p+p+p+e的環境(第四個做成擴充套件分割槽,擴充套件分割槽再分出3個邏輯分割槽)
可用的分割槽有:/dev/sdb(1,2,3,5,6,7)
分法二:p+e的環境
可用的分割槽有:/dev/sdb(1,5,6,7,8,9)
cmos:記錄各個硬體引數並且切入在主機板上面的儲存器
bios:乙個寫入到主機板上的韌體。
bios是開機的時候計算機會主動執行的第乙個程式。
接著bios會分析計算機裡面有哪些儲存裝置,並且到硬碟裡面去讀取第乙個扇區的mbr位置。mbr這個僅有446bytes的硬碟容量裡面會放置最基本的引導引導程式。接著mbr識別硬碟內的檔案系統格式,引導載入核心檔案,進入作業系統。
簡單說開機步驟:
①bios:開機主動執行的韌體,會認識第乙個可開機的裝置。
②mbr:第乙個可開機裝置的第乙個扇區內的主引導分割槽塊,內包含引導引導程式。
③引導引導程式(boot loader):一支可讀取核心檔案來執行的軟體。
④核心檔案:開始作業系統的功能。
boot loader是作業系統安裝在mbr上面的一套軟體,這個程式小而完美。這個boot loader的主要任務有下面這些專案:
①提供選單:使用者可以選擇不同的開機選項,這也是多重引導的重要功能。
②載入核心檔案 :直接指向可開機的程式區段來開始作業系統。
③轉交其他loader:將引導載入功能轉交給其他loader負責。(多系統)
引導引導程式除了可以安裝在mbr之外,還可以安裝在每個分割槽的引導扇區(boot sector)
請注意一下資訊:
①每個分割槽都擁有自己的啟動扇區(boot sector)
②實際可開機的核心檔案是放置到各分區內的
③loader只會認識自己的系統分區內的可開機核心檔案,以及其他loader而已
④loader可以直接指向或是間接將管理權轉交給另乙個管理程式。
windows安裝程式會主動覆蓋掉mbr以及自己所在分割槽的啟動扇區,所以如果雙系統,最好先安裝windows再安裝linux。
(否則也可以用linux的救援模式來挽救mbr)
整個linux最重要的地方就是在與目錄樹結構。所謂的目錄樹結構是指以根目錄(/)為主, 然後向下呈現分支狀的目錄結構的一種檔案結構。所有的檔案都與目錄樹有關。
如何結合目錄樹的架構和磁碟內的資料,就要牽扯到」掛載」了。
利用乙個目錄當成進入點, 將磁碟分割槽的資料放置在該目錄下。也就是說,進入該目錄就可以讀取該分割槽的意思。
這個操作稱為掛載,那個進入點的目錄稱為掛載點。
根目錄一定需要掛載到某個分割槽
舉個例子
partition1掛載到根目錄,partition2掛載到/home目錄。也就是說,我的資料放在/home內的各次目錄時,資料是放在partition2的。如果不是放在/home下面的目錄,那麼資料就會被放置到partition1。
安裝linux時選擇自定義安裝(專家安裝)。
初次接觸linux:只要分割槽」/」和」swap」即可
建議分割槽的方法:預留乙個備用的剩餘磁碟容量。
安裝linux盡量不要選擇預設的server安裝選項。
主機規劃與磁碟分割槽
在linux裡面,各個元件或裝置都是乙個檔案 1 linux伺服器中,記憶體的重要性比cpu還要高得多 2 磁碟陣列 是利用硬體技術將數個硬碟整合成為乙個大硬碟的方法,作業系統只會看到最後被整合起來的大硬碟。3 各硬體裝置在linux中的檔名 1 ide介面的硬碟在linux內的檔名為 dev hd...
主機規劃與磁碟分割槽
在linux系統中,每個裝置都被當做成乙個檔案來對待。正常的實體機器大概使用的都是 dev sd a 的磁碟檔名,至於虛擬機器環境底下,為了加速,可能就會使用 dev vd a p 這種裝置檔名!磁碟盤上面又可細分出扇區 sector 與磁軌 track 兩種單位,其中扇區的物理量設計有兩種大小,分...
Linux主機規劃與磁碟分割槽
linux的核心概念 各個元件或裝置在linux下面都是乙個檔案。這也是和windows系統最大的不同 各硬體裝置在linux中的檔名 裝置 裝置在linux中的檔名 scsi sata usb硬碟 dev sd a p 中括號中的字母代表不同的硬碟 u盤 dev sd a p virtio介面 d...