1. 程式人生 > >磁盤及文件管理系統入門(一)

磁盤及文件管理系統入門(一)

fs 硬盤 uefi&gpt

linux磁盤及文件系統管理初步

目錄

    1.磁盤及文件系統管理
    2.機械磁盤結構
    3.mknod命令
    4.parted命令
    5.GPT分區&UEFI
    6.二進制單位

Linux系統管理

磁盤分區及文件系統管理

RAID

LVM

網絡屬性管理

程序包管理

sed and awk

進程查看和管理

內核管理(編譯和安裝)

系統啟動流程

定制、編譯內核、busybox

系統安裝:kickstart,dhcp,pxe

shell腳本編程

1.磁盤及文件系統管理

cpu、內存、I/O

IO:ram,disk,NIC(network interface card)

鍵盤鼠標:南橋

ram:北橋

|———————|

|北橋 |ram

|--------------|------------------------

|CPU |

|--------------|------------------------

| 南橋 |鍵盤,鼠標,硬盤

|--------------|

硬盤接口:

IDE接口:133MB/s

並行總線,雙向四車道

//並行數據容易產生幹擾,導致數據損壞重傳,因此效率低

//並行越高,幹擾頻率越高

SCSI:並口,Ultrascci320,320MB/s

Ultrascci640,640MB/s

SCSI的費用更高

sata接口:6Gbps

串行總線,有前後,不能並行傳輸

SAS:串口時的scsi技術6Gbps

USB:串口3.0,480MB/s 理論

並口:同一線纜可以接多塊硬盤

IDE:兩個,主、從

SCSI:

寬帶:16-1個設備

窄帶:8-1個設備

串口:同一線纜,只可以接一個設備

IOps //IO per second

IDE:100次左右IO

SCSI:150左右

SATA:100多

SAS:100多到200

固態硬盤:400左右

7200 rpm的磁盤 IOPS = 1000 / (9 + 4.17) = 76 IOPS

10000 rpm的磁盤IOPS = 1000 / (6+ 3) = 111 IOPS

15000 rpm的磁盤IOPS = 1000 / (4 + 2) = 166 IOPS

PCI-E接口的固態硬盤IOPS都是

440k IOPS //44萬

硬盤:機械硬盤,固態硬盤

固態硬盤:類似於U盤,內部是多個並行

CPU和硬盤設備之間的 連接器:適配器

負責硬盤控制芯片和CPU之間信號的翻譯與轉換

2.機械硬盤結構

多塊盤片

track:磁道一個同心圓

角速度一致,

每一個盤片的雙面都可以讀取//每一個盤片的每一面都有磁頭

rpm:rotation per minute //一分鐘

5400rpm,7200rpm,10000rpm

每個磁道的周長是不一樣的,因此不能按照磁道進行存儲,不便於管理

磁道劃分扇區:更容易管理

//扇區大小一般是固定的,一般為512字節

Cylinder:柱面:不同盤面的同一個編號的磁道上,就成為一個柱面

//第一個盤面的1號磁道,第二個盤面的1號磁道,第三個盤面的1號磁道,稱為一個柱面

//磁頭是固定的,上下兩個,多個盤面

分區:基於柱面進行

越靠近外部磁道的分區,性能越好

//單位時間內劃過的距離教程,獲取的數據較多

//C盤及時最外面的分區

track磁道:同心圓,從外圈開始,磁道被分成0磁道,1磁道,2磁道

Cylinder:柱面,具有相同磁道編號的同心圓組成柱面,那麽這柱面就像一個沒了底的鐵桶

柱面數:就是磁盤上的磁道數

磁面數==磁頭數

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

扇區sector:扇區就是每一個磁道中被分成若幹等分的區域.相鄰磁道是有間隔的,這是因為磁化單元太近會產生幹擾.

每個柱面包括512個字節。固定值

硬盤的容量=柱面數(CYLINDER)*磁頭數(HEAD)*扇區數(SECTOR)*512B.

存儲容量=磁頭數×磁道(柱面)數×每道扇區數×每扇區字節數

Linux的哲學思想:一切皆文件

設備類型:

塊(block):隨機訪問,數據交換單位是“塊”

//sda,sdb

字符(character):線性訪問,數據交換單位是字符

//tty1,tty2,pts

設備文件:FHS

/dev目錄下

設備文件:用於實現將設備關聯至其驅動程序

//任何時候打開一個設備文件,其實相當於打開該文件的驅動程序

設備號:major :主設備號,區分設備類型,用於標明設備所需要的驅動程序

minor:次設備號,區分同種類型下的不同設備;是特定設備的訪問入口

3.mknod命令

mknod命令

創建塊設備和字符設備

mknod [OPTION] ... NAME TYPE [MAJOR MINOR]

mknod /dev/testdev c 111 1

-m MODE 直接指定其權限 //調用系統調用來實現權限修改

TYPE:

b 塊設備

c,u 字符設備,(unbuffered)

p FIFO設備

設備文件名:是統一定義的,ICANN

磁盤:

IDE:/dev/hd

SCSI,SATA,USB,SAS :/dev/sd[a-z]

引用設備的方式:

設備文件名

卷標

UUID//128位

分區:

/dev/sda[1-4]

註意:Centos6和7統統將硬盤設備文件表示為/dev/sd[a-z]#

硬盤分區:MBR,GPT

MBR:0 sector//0扇區,

master boot record//主引導記錄

512字節

446字節:bootloader,程序,引導啟動操作系統的程序

64字節:分區表,每16bytes標識一個分區,最多4個分區

2字節:MBR區域的有效性,55AA為有效

//假如要實現更多的分區,

//例如:用其中一個主分區不用來標識分區的開始和結束為止,而是指向一個存儲空間,當做新的分區表

//這個用來指向其他分區表的成為擴展分區,但是擴展分區需要再次分區才能使用

例如:

4主分區:

3擴展分區:

擴展分區:

n個邏輯分區

主分區和擴展分區的標識:1-4

邏輯分區:5+

fdisk 命令分區

-l 列出信息

centos6:start。。end:柱面

centos7:start。。end:扇區

2.管理分區

fdisk /dev/sdb

fdisk提供了交互式接口來管理分區,它有很多子命令,分別用於不同的管理功能,所有操作均在內存中完成,沒有直接同步磁盤

直到w保存

n:創建新分區

d:刪除新分區

4.parted命令

parted 分區命令

help COMMAND//獲取幫助信息

print [devices|all|free] //查看所有細膩

mkpart PARTTYPE [FSTYPE] START END

PARTTYPE:primary,extended,logical,

mkpart primary ext4 30G 50G

select /dev/sdb //選中

set NUMBER FLAG STATE

FLAG:boot引導,hidden隱藏,raid軟raid,LVM等

STATE:on/off

set 1 boot on

unit UNIT //設置默認輸出時表示磁盤大小的單位

MB,GB,%占用百分比,compat人類易讀方式,

s扇區,cy柱面,chs柱面磁頭扇區的地址

mkfs NUMBER FS-TYPE //對指定編號NUMBER的分區創建指定FS-TYPE的文件系統

print //查看信息

resize 1 //重新修改分區

rm 2 //刪除2分區

check NUMBER //檢查指定編號NUMBER分區中的文件系統是否有什麽錯誤

resize NUMBER START END //調整分區大小

move NUMBER START END //分區移動到其他位置

只能移動到空閑分區上

雖然分區被移動了,但是分區的編號不會變動

cp [FROM-DEVICE] FROM-NUMBER NUMBER-TONUMBER

復制文件系統到分區

5.GPT分區&UEFI

GPT分區:

GPT硬盤中,分區表的位置存儲在GPT頭中,處於兼容性考慮,硬盤的第一個扇區仍用MBR

之後才是GPT頭

MBR最多支持2TB

GPT支持18EB

每個磁盤128個分區//windows只認,默認不受限

更安全,分區表會備份,且加入校驗算法,一旦病毒感染,及時使用備份恢復

硬盤容量的識別,更安全,分區數量上

與 MBR 分區的磁盤不同,GPT的分區信息是在分區中,而不象MBR一樣在主引導扇區。

為保護GPT不受MBR類磁盤管理軟件的危害,GPT在主引導扇區建立了一 個保護分區 (Protective MBR)的MBR分區表,

這種分區的類型標識為0xEE,

這個保護分區的大小在Windows下為128MB,Mac OS X下為200MB,

在Window磁盤管理器裏名為GPT保護分區,

可讓MBR類磁盤管理軟件把GPT看成一個未知格式的分區,而不是錯誤地當成一個未分 區的磁盤。

另外,GPT 分區磁盤有多余的主要及備份分區表來提高分區數據結構的完整性。

UEFI:是bios的一種替代方案

UEFI已經具備文件系統的支持,能夠直接讀取FAT分區表中的文件

而在UEFI下,不再需要主引導記錄,不再需要活動分區,不需要任何工具,

只要復制安裝文件到一個FAT32(主)分區/U盤中,然後從這個分區/U盤啟動,安裝Windows就是這麽簡單。

PMBR

GPT分區表

備份GPT分區表

可以看到,在GTP磁盤的第一個數據塊中同樣有一個與MBR(主引導記錄)類似的標記,叫做PMBR。

PMBR的作用是,當使用不支持GPT的分區工具時,整個硬盤將顯示為一個受保護的分區,以防止分區表及硬盤數據遭到破壞。

UEFI並不從PMBR中獲取GPT磁盤的分區信息,它有自己的分區表,即GPT分區表。


GPT的分區方案之所以比MBR更先進,是因為在GPT分區表頭中可自定義分區數量的最大值,也就是說GPT分區表的大小不是固定的。

Windows中,微軟設定GPT磁盤最大分區數量為128個。另外,GPT分區方案中邏輯塊地址(LBA)采用64位二進制數表示,

可以計算一下2^64是一個多麽龐大的數據,以我們的需求來講完全有理由認為這個大小約等於無限。

除此之外,GPT分區方案在硬盤的末端還有一個備份分區表,保證了分區信息不容易丟失。

6.二進制單位

MB,GB,TB,PB,EB,ZB,YB,BB,NB,DB

磁盤及文件管理系統入門(一)