在linux中,disc是指「磁碟」,是塊儲存裝置,即用於存放檔案的裝置;檔案系統實際就是磁碟空間的一種對映。為了避免在太大的空間中存放或讀取資料降低存取效率、或者需要將資料進行分類存放管理,因此就有將一個磁碟空間劃分為多個區域的需求,即所謂的磁碟分割區。
本教學操作環境:linux7.3系統、Dell G3電腦。
磁碟(disc)是一種塊儲存裝置,用於存放檔案的裝置。檔案系統實際就是磁碟空間的一種對映。
在 Linux 系統中,檔案系統是建立在硬碟上的,因此,要想徹底搞清楚檔案系統的管理機制,就要從瞭解硬碟開始。硬碟可分為機械硬碟(Hard Disk Drive, HDD)和固態硬碟(Solid State Disk, SSD),機械硬碟採用磁性碟片來儲存資料,而固態硬碟通過快閃記憶體顆粒來儲存資料。
機械磁碟外觀
磁碟結構圖
機械硬碟主要由磁碟、磁軌、磁區、磁頭、柱面與傳動軸等組成。
磁碟:磁碟一般有一個或多個碟片。每個碟片可以有兩面,即第一個碟片的正面為0面,反面為 1 面;第二個碟片的正面為 2 面…依次類推。
磁軌:每個碟片的盤面被劃分成多個狹窄的同心圓環,資料就儲存在這樣的同心圓環上面,我們將這樣的圓環稱為磁軌 (Track)。每個盤面可以劃分多個磁軌,最外圈的磁軌是0號磁軌,向圓心增長依次為1磁軌、2磁軌…磁碟的資料存放就是從最外圈開始的。
磁區:根據硬碟的規格不同,磁軌數可以從幾百到成千上萬不等。每個磁軌可以儲存數 Kb 的資料,但是計算機不必要每次都讀寫這麼多資料。因此,再把每個磁軌劃分為若干個弧段,每個弧段就是一個磁區 (Sector),現在每個磁區可儲存 512 位元組資料已經成了業界的約定。也就是說,即使計算機只
需要某一個位元組的資料,但是也得把這個 512 個位元組的資料全部讀入記憶體,再選擇所需要的那個位元組。
磁頭:是硬碟讀取資料的關鍵部件,它的主要作用就是將儲存在硬碟碟片上的磁資訊轉化為電訊號向外傳輸,而它的工作原理則是利用特殊材料的電阻值會隨著磁場變化的原理來讀寫磁碟上的資料,磁頭的好壞在很大程度上決定著硬碟碟片的儲存密度。比較常用的是GMR(Giant Magneto Resistive)巨磁阻磁頭。
現代硬碟尋道都是採用CHS(Cylinder Head Sector)的方式,硬碟讀取資料時,讀寫磁頭沿徑向移動,移到要讀取的磁區所在磁軌的上方,這段時間稱為尋道時間(seek time)。因讀寫磁頭的起始位置與目標位置之間的距離不同,尋道時間也不同。目前硬碟一般為2到30毫秒,平均約為9毫秒。磁頭到達指定磁軌後,然後通過碟片的旋轉,使得要讀取的磁區轉到讀寫磁頭的下方,這段時間稱為旋轉延遲時間(rotational latencytime)一個7200(轉/每分鐘)的硬碟,每旋轉一週所需時間為60×1000÷7200=8.33毫秒,則平均旋轉延遲時間為8.33÷2=4.17毫秒(平均情況下,需要旋轉半圈)。平均尋道時間和平均選裝延遲稱為平均存取時間。
固態硬碟(SSD)
固態硬碟和傳統的機械硬碟最大的區別就是不再採用碟片進行資料儲存,而採用儲存晶片進行資料儲存。固態硬碟的儲存晶片主要分為兩種:一種是採用快閃記憶體作為儲存媒介的;另一種是採用DRAM作為儲存媒介的。目前使用較多的主要是採用快閃記憶體作為儲存媒介的固態硬碟
固態硬碟
固態硬碟和機械硬碟對比
目前,常見的機械硬碟介面有以下幾種:
IDE 硬碟介面:(Integrated Drive Eectronics,並口,即電子整合驅動器)也稱作 "ATA硬碟" 或 "PATA硬碟",是早期機械硬碟的主要介面,ATA133 硬碟的理論速度可以達到 133MB/s(此速度為理論平均值)因為並口線的抗干擾性太差,且排線佔用空間較大,不利計算機內部散熱,已逐漸被SATA所取代。
SATA介面:全稱Serial ATA,也就是使用串列埠的ATA介面,特點是抗干擾性強,對傳輸線的要求比ATA低很多,且支援熱插拔等功能。SATA-II的介面速度為300MiB/s,而新的SATA-III標準可達到600MiB/s的傳輸速度。SATA的傳輸線也比ATA的細得多,有利於機箱內的空氣流通,整理線材也比較方便。
SCSI介面:全稱Small Computer System Interface(小型機系統介面),經歷多代的發展,從早期的SCSI-II,到當前的Ultra320 SCSI以及Fiber-Channel(光纖通道),介面型式也多種多樣。SCSI硬碟廣為工作站級個人計算機以及伺服器所使用,因此會使用較為先進的技術,如碟片轉速15000rpm的高轉速,且資料傳輸時CPU佔用率較低,但是單價也比相同容量的ATA及SATA硬碟更加昂貴。
SAS介面:全稱Serial Attached SCSI,是新一代的SCSI技術,可相容SATA硬碟,都是採取序列式技術以獲得更高的傳輸速度,可達到12Gb/s。此外也透過縮小連線線改善系統內部空間等。
FC介面:全稱Fibre Channel(光纖通道介面),擁有此介面的硬碟在使用光纖聯接時具有熱插拔性、高速頻寬(4Gb/s或10Gb/s)、遠端連線等特點;內部傳輸速率也比普通硬碟更高。但其價格高昂,因此FC介面通常只用於高階伺服器領域
現在,普通機械盤介面多為SATA,固態盤介面多為SAS
檔案系統是作業系統用於明確儲存裝置(常見的是磁碟,也有基於NAND Flash的固態硬碟)或分割區上的檔案的方法和資料結構,即在儲存裝置上組織檔案的方法。作業系統中負責管理和儲存檔案資訊的軟體機構稱為檔案管理系統,簡稱檔案系統。檔案系統的介面,對物件操縱和管理的軟體集合,物件及屬性。從系統角度來看,檔案系統是對檔案儲存裝置的空間進行組織和分配,負責檔案儲存並對存入的檔案進行保護和檢索的系統。具體地說,它負責為使用者建立檔案,存入、讀出、修改、轉儲檔案,控制檔案的存取,當使用者不再使用時復原檔案等。檔案系統是軟體系統的一部分,它的存在使得應用可以方便的使用抽象命名的資料物件和大小可變的空間。管理和排程檔案的儲存空間,提供檔案的邏輯結構、物理結構和儲存方法;實現檔案從標識到實際地址的對映,實現檔案的控制操作和存取操作,實現檔案資訊的共用並提供可靠的檔案保密和保護措施,提供檔案的安全措施。
FAT:
在Win 9X下,FAT16支援的分割區最大為2GB。我們知道計算機將資訊儲存在硬碟上稱為「簇」的區域內。使用的簇越小,儲存資訊的效率就越高。在FAT16的情況下,分割區越大簇就相應的要大,儲存效率就越低,勢必造成儲存空間的浪費。並且隨著計算機硬體和應用的不斷提高,FAT16檔案系統已不能很好地適應系統的要求。在這種情況下,推出了增強的檔案系統FAT32。
NTFS:
NTFS檔案系統是一個基於安全性的檔案系統,是Windows NT所採用的獨特的檔案系統結構,它是建立在保護檔案和目錄資料基礎上,同時照顧節省儲存資源、減少磁碟佔用量的一種先進的檔案系統。使用非常廣泛的Windows NT 4.0採用的就是NTFS 4.0檔案系統,相信它所帶來的強大的系統安全性一定給廣大使用者留下了深刻的印象。Win 2000採用了更新版本的NTFS檔案系統NTFS 5.0,它的推出使得使用者不但可以像Win 9X那樣方便快捷地操作和管理計算機,同時也可享受到NTFS所帶來的系統安全性。
exFAT:
全稱Extended File Allocation Table File System,擴充套件FAT,即擴充套件檔案分配表,是Microsoft在Windows Embeded 5.0以上(包括Windows CE 5.0、6.0、Windows Mobile5、6、6.1)中引入的一種適合於快閃記憶體的檔案系統,為了解決FAT32等不支援4G及其更大的檔案而推出。
RAW:
RAW檔案系統是一種磁碟未經處理或者未經格式化產生的檔案系統,一般來說有這幾種可能造成正常檔案系統變成RAW檔案系統:沒有格式化、格式化中途取消操作、硬碟出現壞軌、硬碟出現不可預知的錯誤、毒所致。解決RAW檔案系統的最快的方法是立即格式化,並且使用防毒軟體全盤防毒
Ext:
Ext2:Ext是GNU/Linux 系統中標準的檔案系統,其特點為存取檔案的效能極好,對於中小型的檔案更顯示出優勢,這主要得利於其簇快取層的優良設計。
Ext3:是一種紀錄檔式檔案系統,是對ext2系統的擴充套件,它相容ext2。紀錄檔式檔案系統的優越性在於:由於檔案系統都有快取層參與運作,如不使用時必須將檔案系統卸下,以便將快取層的資料寫回磁碟中。因此每當系統要關機時,必須將其所有的檔案系統全部shutdown後才能進行關機
Ext4:Linux kernel 自 2.6.28 開始正式支援新的檔案系統 Ext4。Ext4 是 Ext3 的改進版,修改了 Ext3 中部分重要的資料結構,而不僅僅像 Ext3 對 Ext2 那樣,只是增加了一個紀錄檔功能而已。Ext4 可以提供更佳的效能和可靠性,還有更為豐富的功能。
XFS:
是一種高效能的紀錄檔檔案系統,而且是 RHEL 7 中預設的檔案管理系統,它的 優勢在發生意外宕機後尤其明顯,即可以快速地恢復可能被破壞的檔案,而且強大的 紀錄檔功能只用花費極低的計算和儲存效能。並且它最大可支援的儲存容量為 18EB, 這幾乎滿足了所有需求。
HFS:
分層檔案系統(Hierarchical File System,HFS)是一種由蘋果電腦開發,並使用在Mac OS上的檔案系統。最初被設計用於軟碟和硬碟,同時也可以在在唯讀媒體如CD-ROM上見到。
RAID是由多個獨立的高效能磁碟驅動器組成的磁碟子系統,從而提供比單個磁碟更高的儲存效能和資料冗餘的技術。RAID是一類多磁碟管理技術,其向主機環境提供了成本適中、資料可靠性高的高效能儲存。RAID的兩個關鍵目標是提高資料可靠性和I/O效能。磁碟陣列中,資料分散在多個磁碟中,然而對於計算機系統來說,就像一個單獨的磁碟。通過把相同資料同時寫入到多塊磁碟(典型地如映象),或者將計算的校驗資料寫入陣列中來獲得冗餘能力,當單塊磁碟出現故障時可以保證不會導致資料丟失。
RAID中主要有三個關鍵概念和技術:映象(Mirroring)、資料條帶(DataStripping)和資料校驗(Dataparity):
映象,將資料複製到多個磁碟,一方面可以提高可靠性,另一方面可並行從兩個或多個副本讀取資料來提高讀效能。顯而易見,映象的寫效能要稍低,確保資料正確地寫到多個磁碟需要更多的時間消耗。
資料條帶,將資料分片儲存在多個不同的磁碟,多個資料分片共同組成一個完整資料副本,這與映象的多個副本是不同的,它通常用於效能考慮。資料條帶具有更高的並行粒度,當存取資料時,可以同時對位於不同磁碟上資料進行讀寫操作,從而獲得非常可觀的I/O效能提升。
資料校驗,利用冗餘資料進行資料錯誤檢測和修復,冗餘資料通常採用海明碼、互斥或操作等演演算法來計算獲得。利用校驗功能,可以很大程度上提高磁碟陣列的可靠性、魯棒性和容錯能力。不過,資料校驗需要從多處讀取資料並進行計算和對比,會影響系統效能。
不同等級的RAID採用一個或多個以上的三種技術,來獲得不同的資料可靠性、可用性和I/O效能。至於設計何種RAID(甚至新的等級或型別)或採用何種模式的RAID,需要在深入理解系統需求的前提下進行合理選擇,綜合評估可靠性、效能和成本來進行折中的選擇。
(1) 大容量
這是 RAID 的一個顯然優勢,它擴大了磁碟的容量,由多個磁碟組成的 RAID 系統具有海量的儲存空間。現在單個磁碟的容量就可以到 1TB 以上,這樣 RAID 的儲存容量就可以達到 PB 級,大多數的儲存需求都可以滿足。一般來說, RAID 可用容量要小於所有成員磁碟的總容量。不同等級的 RAID 演演算法需要一定的冗餘開銷,具體容量開銷與採用演演算法相關。如果已知 RAID 演演算法和容量,可以計算出 RAID 的可用容量。通常, RAID 容量利用率在 50% ~ 90% 之間。
(2) 高效能
RAID 的高效能受益於資料條帶化技術。單個磁碟的 I/O 效能受到介面、頻寬等計算機技術的限制,效能往往很有 限,容易成為系統效能的瓶頸。通過資料條帶化, RAID 將資料 I/O 分散到各個成員磁碟上,從而獲得比單個磁碟成倍增長的聚合 I/O 效能。
(3) 可靠性
可用性和可靠性是 RAID 的另一個重要特徵。從理論上講,由多個磁碟組成的 RAID 系統在可靠性方面應該比單個磁碟要差。這裡有個隱含假定:單個磁碟故障將導致整個 RAID 不可用。 RAID 採用映象和資料校驗等資料冗餘技術,打破了這個假定。 映象是最為原始的冗餘技術,把某組磁碟驅動器上的資料完全複製到另一組磁碟驅動器上,保證總有資料副本可用。 比起映象 50% 的冗餘開銷 ,資料校驗要小很多,它利用校驗冗餘資訊對資料進行校驗和糾錯。 RAID 冗餘技術大幅提升資料可用性和可靠性,保證了若干磁碟出錯時,不 會導致資料的丟失,不影響系統的連續執行。
(4) 可管理性
實際上, RAID 是一種虛擬化技術,它對多個物理磁碟驅動器虛擬成一個大容量的邏輯驅動器。對於外部主機系統來說, RAID 是一個單一的、快速可靠的大容量磁碟驅動器。這樣,使用者就可以在這個虛擬驅動器上來組織和儲存應用系統資料。 從使用者應用角度看,可使儲存系統簡單易用,管理也很便利。 由於 RAID 內部完成了大量的儲存管理工作,管理員只需要管理單個虛擬驅動器,可以節省大量的管理工作。 RAID 可以動態增減磁碟驅動器,可自動進行資料校驗和資料重建,這些都可以 大大簡化管理工作。
RAID0
RAID1
RAID3
RAID5
RAID6
RAID10
為了避免在太大的空間中存放或讀取資料降低存取效率、或者需要將資料進行分類存放管理,因此就有將一個磁碟空間劃分為多個區域的需求。即所謂的磁碟分割區。
格式化是資料儲存裝置為儲存資料做初始化準備的過程,即在一個分割區生成新檔案系統的過程。每個分割區在能夠儲存資料之前必須被格式化為某種檔案系統。
磁區(sector)| 物理塊(physical block)
簇(cluster)| 邏輯塊(logical block)
相關推薦:《Linux視訊教學》
以上就是linux disc是什麼的詳細內容,更多請關注TW511.COM其它相關文章!