1. 程式人生 > >Linux磁盤知識,RAID,LVM

Linux磁盤知識,RAID,LVM

RAID LVM 磁盤分區 分區工具 文件系統

一、磁盤基礎知識

1、磁盤和硬盤均是對磁盤存儲系統的統一稱呼。磁盤工作時,磁頭懸浮在磁盤盤片上方做徑向運動,互相不接觸。


2、采購磁盤:

(1)主軸轉速速度快(r/min),5400/7200/10000/15000;

(2)接口類型:SATA/SAS/SCSI/IDE;企業環境中SAS使用比較普遍

(3)讀寫更靈敏的磁頭;

(4)容量大,企業級SAS主流硬盤容量300G、600G、1000G,建議300G、600G是首選,多用於線上對外提供服務的業務服務器;企業級SATA主流硬盤容量1T、2T、4T,多用於線下不對外提供服務或者並發業務訪問量不大的服務器。

線上的業務用SAS;線下的業務用SATA,磁帶庫;線上高並發小容量的業務用SSD(還可以利用硬盤加內存的緩存技術解決大規模高並發的問題)。

(5)SSD硬盤性能遠大於機械硬盤;


3、Linux系統將系統不用的物理內存作為緩存區或緩沖區使用,buffer為寫入緩沖區,synca將緩沖區數據寫入磁盤,cache為讀取數據的緩存區。


4、機械硬盤讀取和寫入速度太慢,所以在門戶架構網站中,讀取和寫入都要使用緩存緩沖技術。


5、磁盤內部結構

(1)一個磁盤有多個盤片,每個盤片有兩個盤面,每個盤面有兩個磁頭(head)。

(2)同一個盤片上,半徑不同的所有同心圓稱為磁道(track).

(3)以盤片中心 為圓心,向盤片邊緣磁道畫直線,被劃分的多個扇形區域稱為扇區(sector).

(4)柱面(cylinder)是所有盤面相同半徑的所有磁道從上到下組成的圓柱形集合,柱面數等於盤面上的磁道數。

(5)一般每個扇區的大小是512字節。

(6)一個柱面包含多個半徑相同的磁道,一個磁道包含多個扇區。

(7)磁道大小=扇區大小(512字節)x扇區數;

盤面大小=磁道大小x磁道數;

磁盤大小=柱面大小x柱面數;

柱面大小=磁道大小x磁頭數;

磁盤容量=盤面大小x盤面數=扇區大小x扇區數x磁道數x磁道數(磁頭數)。


6、磁盤分區

技術分享圖片

技術分享圖片

技術分享圖片


(1)磁盤的0磁頭0磁道1扇區存放有主引導記錄MBR和硬盤的分區表DPT。主引導記錄MBR的作用是檢查分區表是否正確以及確定那個分區為引導分區,並在MBR引導結束時把引導分區的啟動程序 調入內存使用。

(2)磁盤分區的實質64bytes的分區表進行重新設置,主要是劃分起始結束磁頭號,扇區號,柱面號。

(3)一個磁盤的分區表僅有64bytes大小,每個分區表占16bytes,因此一個磁盤最多能支持4個分區,即主分區+擴展分區不超過4個。

(4)磁盤分區是按照柱面來劃分的。

(5)一個硬盤只能有1個擴展分區,擴展分區不能直接使用,還需要在擴展分區上創建邏輯分區才行。擴展分區有自己的分區表,因此可以創建多個邏輯分區。

(6)主分區是磁盤上必須存在的分區,可以在主分區上安裝系統。

(7)邏輯分區必須存在於擴展分區,邏輯分區編號從5開始。


7、分區工具

(1)一般是裝完系統後用fdisk進行分區,裝系統之前的分區,大多數是系統ISO裏面的工具分,或者raid裏分小磁盤。

(2)fdisk只能root權限用戶使用。

(3)MBR無法支持大於2T的硬盤分區,GPT可以支持大於2T的硬盤分區;

(4)磁盤分區工具:fdisk(適合小於2T的磁盤分區),parted(擅長給大於2T的磁盤分區,也可以給小於2T的磁盤分區),首選fdisk,大於2T的磁盤分區再選parted

(5)用fdisk進行分區適合於對裝系統後剩余的空間進行分區,如安裝系統時未全部分區或者安裝系統後又要增加分區。

(6)磁盤分區工具parted每步操作都是實時生效的,而fdisk如果沒執行W則不生效。


8、swap分區構建

(1)swap分區在實際工作中,特別是JAVA環境下,程序寫的有問題時會發生內存泄漏,就會占用swap分區。(解決辦法:一般是修改程序,或擴大swap,或先swap off再on)

(2)使用物理分區(或使用文件)擴容swap: fdisk /dev/sdb #分一個分區 /dev/sdb1出來; mkswap /dev/sdb1 #將分區fdisk /dev/sdb1設置成swap ; free #查看; swapon /dev/sdb1 #使分區/dev/sdb1生效; free #查看;

9、文件系統:

(1)文件系統是一種存儲和組織計算機數據的機制或方法,使得對計算機內部數據的訪問變得簡單容易(文件系統是一套實現了數據存儲,分級組織,訪問和獲取等操作的抽象數據模型)。常見文件系統:ext2,ext3(centos 5.x),ext4(centos 6.x),xfs,zfs,Reiserfs,FAT,NFSISO9660.

(2)磁盤分區並不是直接掛在目錄存放數據實體,還需要格式化操作才可以存放數據,格式化是給磁盤分區寫入文件系統後才可以被系統識別存放數據。

(3)操作系統中的數據分為文件內容和文件屬性,操作系統將文件屬性寫入inode,將文件內容寫入block,操作系統還將文件系統的整體信息(稱之為元數據metadata),包括整個文件系統的inode和block總的數量,已經使用量,未使用量信息,寫入superblock中。

(4)文件系統磁盤布局

技術分享圖片

(5)文件系統選擇

技術分享圖片


10、掛載點

(1)掛載:將文件系統與目錄樹相結合的操作稱為掛載。

(2)掛載點一定是目錄,掛載點是該目錄進入文件系統的入口。

11、文件系統操作命令

(1)df 列出文件系統的磁盤使用量;

(2)du 評估文件系統的使用量

( 3 ) ln 鏈接文件

(4)fdisk /parted 磁盤分區

(5)mkfs 磁盤分區格式化

(6)fsck(e2fsck) /badblocks ext4(ext2)磁盤檢驗(正常使用的磁盤一定不要用!磁盤有壞道時使用)

( 7 )mount / unmount 掛載/卸載

(8)partprobe 把分區表的變化通知內核

(9)mkswap 格式化swap分區

(10)swap on/off 使用/不使用 swap分區

(11)dumpe2fs 查看ext文件系統信息

( 12 )tune2fs /resize2fs 修改文件系統參數

( 13 )megacli 查看raid信息

(14)ipmitools 查看硬件信息


二、磁盤陣列(Redundant Arrays of Inexpensive Disks,RAID),把多塊獨立物理磁盤按不同的技術方式組合起來形成一個磁盤組,擴大了磁盤容量,提升了磁盤系統安全穩定性能和讀寫性能,提供了不同級別冗余的一種技術。

RAID技術分為:軟RAID技術和硬RAID技術。軟RAID技術,省成本,性能差,受系統影響,工作中很少使用。硬RAID技術,性能優,具有檢測和糾錯修復能力,工作中普遍使用


1、RAID 0:又稱條帶模式,RAID 0連續以位或字節為單位分割數據,並行執行讀/寫於多個磁盤上。 速度快,無冗余,容量無損失,至少需要2塊磁盤。企業中單盤也要做成raid 0,否則無法使用。

技術分享圖片


2、RAID 1:它是通過磁盤數據鏡像實現數據冗余,在成對的獨立磁盤上產生互為備份的數據。

有冗余,速度無提高,容量損失一半,只支持2塊磁盤(最好使用相同規格的兩塊盤)。

技術分享圖片


3、RAID5 :不對存儲的數據進行備份,而是把數據和相對應的奇偶校驗信息存儲到組成RAID5的各個磁盤上,並且奇偶校驗信息和相對應的數據分別存儲於不同的磁盤上。當RAID5的一個磁盤數據發生損壞後,利用剩下的數據和相應的奇偶校驗信息去恢復被損壞的數據。至少需要3塊磁盤RAID5後磁盤容量=n-1,n位總磁盤數。

企業中多用raid 5 + 熱備盤(冗余備份)

技術分享圖片

4、RAID 10 :(又稱RAID 0+1)是磁盤分段及鏡像的結合,采用2組RAID0的磁盤陣列互為鏡像,它們之間又成為一個RAID1的陣列。同時擁有RAID 0的高速度和RAID 1的數據高可靠性,但是CPU占用率同樣也更高,而且磁盤的利用率比較低。至少需要4塊磁盤。

技術分享圖片

技術分享圖片

技術分享圖片

冗余由好到壞:raid1 raid10 raid5 raid0;

性能由好到壞:raid0 raid10 raid5 raid1;

成本由低到高:raid0 raid5 raid10 raid1;

根據存儲和訪問地需求,去選擇對應的級別。

單臺服務器,盤不多,數據重要,選raid 1;

數據庫服務器,主庫raid 10,從庫raid 5(為了成本也可選raid0或raid 10);

web服務器,數據不多,raid 5或raid0;監控或其他應用服務器,單盤raid0,多盤raid5。


三、LVM:邏輯卷管理,用於靈活動態管理磁盤的容量,有效利用磁盤空間。

1、LVM:靈活動態管理磁盤的容量,有一定的冗余性能,但很弱; RAID:側重性能和數據安全。


Linux磁盤知識,RAID,LVM