作為提供系統可靠性與資料可用性的一個重要特性,系統支援磁盤陣列技術,包括硬體和軟體實
現磁盤陣列。也支援LVM邏輯卷實作的磁盤管理。
一、劃分磁盤分區
在使用新裝的磁盤,設定軟體磁盤陣列,建立LAM卷組或邏輯卷之前,通常需要利用fdisk劃分磁盤
分區,分區時,可以把整個磁盤劃分為一個Linux分區,如果磁盤容量較大,也可以把磁盤劃分若幹分
區,以分區為機關,建立軟體磁盤陣列、建立LVM卷組、或邏輯卷、或直接建立檔案系統。
每個實體磁盤可以劃分為一個或多個分區。磁盤分區資訊位于磁盤扇區0的分區表中。在Linux系統
中,一個磁盤分區即可用做檔案系統,也可以做交換空間。
在Linux系統中,所有磁盤均采用/dev/sdDN形式統計命名。其中,D可以是字母a、b....分别表示第一個
磁盤、第二個磁盤、以此類推。數字N從1開始編号,表示磁盤分區。例如/dev/sda1是系統配置的第一
個磁盤的第一個分區。
通過,Linux系統至少需要兩個磁盤分區,分别用做"/"檔案系統和交換分區。也可以建立第三個磁盤分
區,用做/boot檔案系統,存儲系統核心的映像檔案,以及引導系統時需要的其他輔助檔案。在一個
Intel86 系列及其相容機中,用于引導系統的BIOS通常隻能通路磁盤的前1024個柱面。是以,劃分磁盤
分區時需要確定BIOS能夠通路到單獨的/boot分區,如果系統配置的磁盤容量較大,出于安全、管理、
備份或檢測等原因,也可以把磁盤裝置劃分多個分區。
(1)磁面:每一張磁盤的表面,稱為磁面(Head)
(2) 磁道:每一個磁面的空間,會邏輯地切割出許多磁道(Track)
(3) 扇區:每一個磁道可以再切割出若幹扇區(Sector)也是調用磁盤的最小機關。現今磁盤中的扇區
預設大小為512位元組(Byte)
(4) 磁柱:一個磁盤會有多個磁道,每個磁盤上同一編号的磁道就組成了磁住(Cylinder)。
1.主引導記錄(MBR)
整個磁盤的第0号磁住的第0号磁面的第1個扇區,指的是“主引導記錄(Master Boot Record,MBR)
分為以下資訊:
初始化程式加載器(Initial Program Loader,IPL)占用446位元組的空間,用來存儲作業系統的核心
分區表(Partiton Table)占用64位元組的空間,存儲這個磁盤的分區資訊。
驗證碼:占用2個位元組的空間,用來存放初始化程式加載器的檢查碼
三、分區
一台計算機允許同時安裝多個作業系統,不同的作業系統可能會使用不同的檔案系統來存放檔案資料;可是每一個磁面空間,隻能使用同一種檔案系統。
(1)主分區
分區資訊如果存儲在主引導記錄扇區的分區表中,稱為主分區(primary partition)
由于主引導記錄扇區的分區資料表大小為64位元組,而每一個分區資訊都會占用16位元組的空間,是以,
一塊磁盤最多隻能擁有4個主分區。
(2)擴充分區
由于主機記錄扇區空間的限制,一塊磁盤最多隻能有4個主要分區;如果需要更多的分區,需要建立
擴充分區(Extended partiton)
注意:擴充分區隻能存儲分區,無法存儲檔案的資料
擴充分區的資訊必須存儲在主引導記錄扇區的分區資料表中。一塊磁盤隻能有一個擴充分區,是以
一次磁盤最多隻能有3個主分區+1個擴充分區
(3)邏輯分區
存儲在擴充分區中的分區稱為邏輯分區(Logic Partiton)。每一個邏輯分區都可以存儲一個檔案系
統。
系統辨別符位5-Extended的擴充分區:最多隻能存儲12個邏輯分區的資訊
系統辨別符位85-Linux Extended的擴充分區:因磁盤種類的不同會有不同的數量。
IDE磁盤:最多60個邏輯分區。
SCSI磁盤:最多12個邏輯分區
主分區與擴充分區:使用1-4的識别号碼
邏輯分區:使用5-63的識别号碼
fdisk是常見的指令,用于劃分磁盤裝置,顯示磁盤分區的資訊。在劃分磁盤分區時。通常均采用交
互方式。運作fdisk指令
fdisk [-u] [-b sectorsize] [-C cyls] [-H heads] [-S sects] device
fdisk -l [-u] [device]
fdisk -s partition
選項
-l 獲得機器中所有磁盤的個數,也能列出所有磁盤分區情況
-c 禁用舊的DOS相容模式
-u 以扇區(而不是柱面)的格式顯示輸出

fdisk子指令 簡單說明
n 建立一個新的磁盤分區
d 删除一個磁盤分區
p 顯示目前劃分的磁盤分區表
t 設定或修改磁盤分區類型辨別
l 顯示可用的磁盤分區類型辨別清單
w 運作fdisk指令期間設定的分區資訊寫入磁盤分區表
m 顯示可用的fdisk子指令
q 退出fdisk指令
四、磁盤陣列
磁盤陣列(RAID)基本思路是,把多個小型廉價的磁盤組合成一個陣列,以達到擴大存儲容量、提供I/0性能及提高資料容錯功能的目的,提供資料的可用性。從系統管理的角度,可以磁盤陣列看做一個邏輯存儲機關或磁盤裝置。利用磁盤陣列,可以把資料分布到若幹個磁盤中,按照RAID定義,磁盤陣列支援資料的均勻分布(RAID 0)、資料鏡像(RAID 1)及增加奇偶校驗的資料均勻分布(RAID 5)已達到資料,增加I/0帶寬的目的。
磁盤陣列可以分為硬體實作的磁盤陣列和軟體實作的磁盤陣列。
硬體磁盤陣列的特點是:速度快、穩定性好,可以有效地提供硬碟的可用性。但需要額外的硬體裝置
支援。
軟體磁盤陣列的特點是:有作業系統的軟體子產品實作,不需要額外的硬體支援,故成本較低,但由于
需要占用較多的CPU和記憶體資源,因而性能相對較低。
(1)磁盤陣列的類型及定義
包括RAID 0、RAID 1、RAID 4、RAID 6、RAID10
RAID 0 :是一種“磁盤均勻分布”技術,主要目的是提供資料的I/O性能。寫入磁盤陣列的資料經過
拆分後均勻寫入每個成員磁盤或分區,能夠以較低的成本提供資料的I/O性能。
RAID 1: RAID 1 也稱作“磁盤鏡像”為了確定資料的可用性,RAID 1是最常用的磁盤陣列類型之
一。RAID 1磁盤陣列采用"一式兩份"的方式,吧同一資料分别寫入磁盤陣列中的一個成員裝置及其“鏡
像”裝置,是每個資料均保留一個副本。
RAID 4 采用專用的磁盤存儲奇偶校驗資料,其他磁盤均勻存儲資料,以實作資料的保護。對于所有
的資料寫操作,采用專用的奇偶校驗磁盤意味着存在潛在的瓶頸。
RAID 5 是最常用的一種RAID技術。與RAID 4不同的是,RAID 5磁盤陣列采用交錯的方式,把奇偶校
驗資料均勻寫入每一個成員裝置中,進而減小RAID 4磁盤陣列固有的寫資料瓶頸問題。RAID 5磁盤陣
列最少需要3個磁盤或分區
RAID 6 采用複雜的奇偶校驗方案,針對每一組資料,均生成兩個奇偶交驗資料,確定能夠恢複磁盤
陣列中任何兩個磁盤損壞而丢失資料。
配置磁盤陣列
mdadm是一個磁盤陣列維護工具,具有豐富的功能,可用于組建、維護以及監控軟體實作的磁盤陣
列,增加、删除以及更換失靈的成員裝置等。
格式:mdadm [mode] raid-device [options] devices
-l raid-level --level=raid-level 設定磁盤裝置的RAID類型。當與“--create”選項一起使用時“--leve l”選項
的參數
例如 以使用兩個磁盤分區/dev/sdb1和/sdb2 組建RAID 1 磁盤陣列為例,為了確定資料的可靠性,最好
使用不同磁盤裝置的分區建立RAID 1磁盤陣列
(1)使用fdisk指令,在/dev/sdb磁盤上劃分兩個大小基本相同的分區,把分區辨別為fd,儲存分區表。
(2)使用下列mdadm指令,組建RAID 1磁盤陣列/dev/md0 (0表示第一個磁盤陣列)
(3)使用下列mkfs指令,在建立的磁盤陣列上建立一個ext4檔案系統
(4)使用mount指令,把建立的檔案系統安裝到任何一個安裝點即可通路磁盤陣列了
(5)在磁盤陣列工作期間,可以使用下列mdadm指令查詢磁盤陣列的基本資訊
(6) 也可以使用下列mdadm指令查詢磁盤陣列的詳細資訊
在磁盤陣列的運作過程中,如果某個成員裝置出現故障,需要及時更換損壞的裝置,以保證磁盤陣列
能繼續有效工作。
首先需要使用mdadm指令的“-f"選項标記出現故障的裝置,然後使用mdadm指令的”-r“選項移除故障
裝置。
接着更換磁盤裝置,在新的磁盤上劃分RAID分區,在使用下列mdadm指令,添加磁盤陣列的成員裝置
(這裡仍使用原來的磁盤分區/dev/sdb6)
如果不想在使用,首選需要使用umount指令解除安裝磁盤陣列的檔案系統。然後使用mdadm指令,停止并
删除磁盤 陣列
邏輯卷 (LVM)
實體卷(Physical Volume)實體卷指的磁盤、磁盤分區或磁盤陣列等儲存設備。實體卷是LVM的基本存儲
單元。
卷組(Logical Volume Group)卷組相當傳統的磁盤裝置,可由一個或多個實體卷組成。在卷組上可以創
建一個或多個邏輯卷。
邏輯卷(Logical Volume)邏輯卷相當于傳統的磁盤分區,可以在邏輯卷想建立檔案系統。必要時,邏輯
卷可以動态地伸縮。
實體擴充單元(Physical Extent)實體卷可以進一步細分為實體擴充單元,每個實體擴充單元具有唯一的編
号,也是LVM能夠尋址的最小單元。實體擴充單元的大小可以配置預設值為4MB。
邏輯擴充單元(Logical Extent)邏輯卷也可以為可尋址的邏輯擴充單元。在同一個卷組中,實體擴充單元
與邏輯擴充單元的大小相同,且一一對應。LVM(Logical Volume Management)是一個邏輯卷管理工具,
可用于配置設定磁盤,分布與鏡像資料。以及重新設定邏輯卷的大小。利用LVM,可以提供裝置管理的靈
活性、把磁盤、磁盤分區或磁盤陣列等儲存設備配置設定到一個或多個實體卷中。但是,實體卷不能跨盤組
建。為了實作跨盤組合,可以先在每個磁盤上建立一個或多個實體卷,然後把若幹實體卷組合成一個
卷組。是以,卷組可以包含多個磁盤、磁盤分區或磁盤陣列。卷組又可以分若幹邏輯卷,在每個邏輯
卷上,可以建立Ext4等檔案系統。
LVM邏輯卷的優勢:
1.在系統運作期間,可以動态擴充或雖小邏輯卷,重新設定邏輯卷的存儲空間大小,而不影響檔案系
統的通路,即使在增加或更換儲存設備時也無需停機,提供了系統的可用性。
2.當卷組中儲存設備出現故障或損壞時,其中的資料可以動态遷移到另外一個新的實體卷裝置上,而
原先的實體卷裝置仍可保持聯機工作狀态。
3.邏輯卷可以彙聚多個實體裝置,均衡分布資料,提高儲存設備的I/0性能,增加資料能力。
4.可以建立邏輯卷快照,以反映邏輯卷在特定時刻的實時狀态,并且能夠在正常的系統運作期間進行
精确的備份。
1.建立實體卷
在使用LVM之前,首選需要使用pvcreate指令,把磁盤或分區轉換成實體卷。
格式:pvcreate [options] PVPaths
其中,PVPaths是實體卷的裝置檔案名。
例如,如果想把磁盤分區/dev/sdb1轉換成實體卷,可以使用fdisk指令劃分磁盤分區,確定分區類型是8e。
建立完實體卷之後,使用pvdisplay指令檢視實體卷的屬性資訊
2.建立卷組
格式:vgcreate vgname pvdevices......
其中vgname是塊裝置的名稱,PvPDevices是利用pvcreate指令建立的實體卷的裝置檔案名。
-l 設定卷組允許的最大邏輯卷數量,對于LVM1而言,預設的數量限制是255,LVM2的預設值是0,
表示沒有限制。
-p 設定卷組允許的最大實體卷數量。同樣,預設的數量限制是255,LVM2的預設值是0,表示沒有限
制。
-s 用于設定卷組中實體卷的實體擴充單元的大小。數字後面的字母是選用的,分别表示以KB、MB、
GB或TB為機關,預設機關是MB,實體擴充單元的預設大小是4MB。
例如建立/dev/sdb5實體卷建立出vg0這個卷組,PE塊的大小是8MB
檢視卷組的屬性資訊
3.建立邏輯卷
在建立檔案系統之前,首選需要使用lvcreate指令和卷組中的空閑實體擴充單元,建立邏輯卷。lvcreate
指令的主要功能是利用卷組建立新的邏輯卷,格式:
lvcreate [-L size] -n LAVNAME VGNAME
其中的size是邏輯卷的大小,如果沒有指定size,lvcreate将以卷組剩餘的所有可用空間作為該邏輯卷的大
小,lvname則是邏輯卷的識别名稱,vgname則是卷組的識别名稱。
選項
-i 用于指定資料條塊的數量,這個數量應等于實體卷的數量,表示有多少實體卷交錯分布,以構成邏
輯卷。
-I 用于指定資料條塊的大小,在LVM1中,指定的數值必須等于2^n(n=2-9)在LVM2中,資料條塊可以
更大,不能超過實體擴充單元的大小。
-L 用于指定配置設定給建立邏輯卷的存儲容量。指定的數值後面可以附加K、M、G或T等字尾。分别表示
以KB\MB\GB\TB為機關。
-n 用于指定建立邏輯卷的名稱
使用卷組vg1(其中包括/dev/sdb1 與/dev/sdb2兩個磁盤分區,37G)作為例子,可以利用下列指令,把整
個卷組的所有空間均配置設定給一個邏輯卷,建立一個37G的邏輯卷lv1
利用vgdisplay指令确定卷組vg0中擁有多少實體擴充單元
建立邏輯卷之後,檢視建立的邏輯卷的屬性資訊
建立邏輯卷之後,可建立檔案系統,例如,下列指令将會在邏輯卷lv0建立一個ext4的檔案系統
建立檔案系統之後,即可安裝檔案系統,例如,下列指令将會把檔案系統安裝到/lvm目錄中
如果希望在系統啟動自動安裝檔案,需要修改/etc/fstab檔案