Linux基礎介紹【第九篇】,linux基礎第九篇

來源:互聯網
上載者:User

Linux基礎介紹【第九篇】,linux基礎第九篇

伺服器添加3塊磁碟的體繫結構

 

注意:

1、linux系統的特性是將系統不用的實體記憶體緩衝起來,因此,859不是系統的真是記憶體。

2、系統真正可用記憶體是921。

3、buffers為寫入緩衝區,sync將緩衝區資料寫入磁碟。

4、cache為讀取資料的緩衝區。

5、硬碟是機械的,無論是寫入還是讀取都太慢了,所以讀取和寫入都是用來緩衝技術。

6、門戶架構網站都會採用緩衝技術,來讓使用者寫入讀取儘可能不接觸磁碟。

磁碟的內部結構

磁碟的內部結構主要包括:碟片、磁頭、碟片主軸、控制電機、磁頭控制器、資料轉換器、介面、緩衝等幾個部分。

磁頭組件及磁頭驅動裝置

1、磁頭組件。它由讀寫磁頭、傳動手臂、傳動軸三部分組成。

磁碟讀取資料的工作原理是利用特定的磁粒子的極性來記錄資料。磁頭在讀取資料時,將磁粒子的不同極性轉換成不同的電脈衝訊號,再利用資料轉換器將這些原始訊號變成電腦可以使用的資料,寫的操作正好與此相反。

2、磁頭驅動裝置。磁碟的尋道是靠移動磁頭,而移動磁頭則需要該裝置驅動才能實現(機械操作)。磁頭驅動裝置由電磁線圈電機、磁頭驅動小車、防震動裝置構成,高精度的輕型磁頭驅動裝置能夠對磁頭進行正確的驅動和定位,並能在很短的時間內精確定位系統指令指定的磁軌。

3、磁碟片。碟片是磁碟儲存資料的真正載體,磁碟碟片大多採用金屬薄膜材料(或有機玻璃材料),這種金屬薄膜較磁碟片的不連續顆粒載體具有更高的儲存密度、高剩磁及高矯頑力等優點。

4、主軸組件。主軸組件包括如軸承和驅動電機等。磁碟主軸的轉數是衡量磁碟讀寫效能的重要參考之一。例:SAS15K,SATA10K。

5、前置控制電路。前置電路控制磁頭感應的訊號、主軸電機調速、磁頭驅動和伺服定位等,由於磁頭讀取的訊號微弱,將放大電路密封在腔體內可以減少外來訊號的幹擾,提高操作指令的準確性。

企業生產工作中磁碟的選型

當前伺服器市場,主流磁碟為SAS、SATA、SSD硬碟。

企業級SAS硬碟

企業裡常見的SAS硬碟是15000轉/分。當前主流300G、600G、1T,從具體的業務需求及性價比考慮,工作中多用300-600G的SAS硬碟。用於提供生產線上的普通對外提供服務的商務服務器。例如,生產線上的資料庫業務、儲存業務、圖片業務及相關高並發業務(web http、cache服務),總的來說,如果沒有特殊業務需求,SAS磁碟是生產環境首選的磁碟配置。

企業級SATA硬碟

企業級SATA硬碟7200-10000轉/分,常見的容量為1T、2T、4T和6T,優點是經濟實惠,容量大,從具體的業務需求及性價比考慮,工作中多用SATA磁碟做線下不提供服務的資料存放區或者並發商務服務不是很大的業務應用,比如網站程式及資料庫、圖片的線下備份等。特性容量性價比高,一般2T的SATA磁碟較佳。

磁碟選購要點:

1、線上業務用SAS磁碟。

2、線下的業務用SATA磁碟,磁帶庫。

3、線上高並發、小容量的業務用SSD磁碟。

4、根據資料的訪問熱度,智能分析階層式存放區。

注意:千萬不能用SATA磁碟來做線上高並發服務的資料存放區或資料庫業務。

磁碟相關名詞解釋

英文

中文

disk

磁碟

head 

磁頭

sector 

扇區

track 

磁軌

cylinder 

柱面

units

單元塊(一個柱面的大小)

block

資料區塊

inode 

索引節點

在磁碟不工作的時候,磁頭停靠在靠近主軸接觸碟片的表面,即線速度最小的地方,這裡是一個不存放任何資料的特殊地區,稱為啟停區或著陸區(landing zone),啟停區以外就是資料區。

在磁碟的最外圈,離主軸最遠的磁軌稱為"0"磁軌,磁碟資料的存放就是從最外圈"0"磁軌開始的。"0"磁軌非常重要,系統的引導程式就在0柱面0磁軌1扇區的前446bytes。

磁軌

每個碟片有兩個面,都可記錄資訊。碟片表面以碟片中心為圓心,用於記錄資料的不同半徑的圓形磁化軌跡就稱為磁軌。

磁碟在格式化時被劃分成許多同心圓,這些同心圓的軌跡叫做磁軌(track)。磁軌由盤面從外向內依次從0開始順序編號。

柱面

所有的盤面上同一個半徑的磁軌的圓形軌跡從上到下依次會成一個圓柱體,就稱作柱面(cylinder),每個圓柱上的磁頭由上而下從"0"開始編號。

柱面數=一個盤面的磁軌數

扇區

盤面有圓心向四周畫直線,不同的磁軌被直線分成許多扇形(弧形)的地區,每個弧形的地區叫做扇區,每個扇區大小為512位元組。

作業系統是以扇區(sector)為單位將資訊儲存在磁碟上,一般情況下,每個扇區的大小是512個位元組。一個扇區主要有兩個部分內容,儲存資料地點的標識符和儲存資料的資料區段。

扇區的第一個主要部分是標識符。標識符就是扇區頭標,包括組成扇區三維地址的三個數字,扇區所在的磁頭(或盤面)、磁軌(或柱面號)以及扇區在磁軌上的位置即扇區號。投標中還包括一個欄位,其中有顯示扇區是否能可靠儲存資料,或者是否已發現某個故障因而不宜使用的標記。有些磁碟控制卡在扇區頭標中還記錄有指示字,可在原扇區出錯時指引磁碟轉到替換扇區或磁軌。最後,扇區頭標以迴圈冗餘校正(CRC)值作為結束,以供控制器檢驗扇區頭標的讀出情況,確保準備無誤。

扇區的第二個主要部分是儲存資料的資料區段,可分為資料和保護資料的錯誤修正碼(ECC)。在初始準備期間,電腦用512個虛擬資訊位元組(實際資料的存放地)和與這些虛擬資訊位元組相應的ECC數字填入這個部分。

磁軌柱面扇區總結

磁碟最基本的組成部分是由堅硬的金屬材料製成的塗以磁性介質的碟片(有很多層),不同容量磁碟的碟片數不等。

1、一塊磁碟有2-14個碟片,每個碟片有兩個面,每個面對應一個讀寫磁頭,用磁頭號來區分盤面,即盤面數就是磁頭數,碟片數*2=磁頭數(盤面數)。

2、不同盤面的磁軌被劃分為多個扇形地區,每個地區就是一個扇區(sector)。

3、同一個盤面,以碟片中心為圓心,每個不同半徑的圓形軌跡就是一個磁軌(track)。

4、不同盤面相同半徑的磁軌組成一個圓柱面就是柱面(cylinder)。

5、一個柱麵包含多個磁軌(這些磁軌半徑相同),一個磁軌包含多個扇區。

6、資料資訊記錄可表示為:某磁頭、某磁軌(柱面)、某扇區。

磁碟容量計算

方法一:

磁碟容量=512*扇區數*磁軌數*磁頭數

每個磁軌的大小=512*扇區數

一個盤面的大小=512*扇區數*磁軌數

方法二:

磁碟容量=柱面數*柱面大小

柱面數=磁軌數

柱面大小=磁軌大小*磁頭數

磁軌大小=512*扇區數

磁頭數:255 heads,扇區數:63sectors/track,柱面數:25cylinders。

磁碟大小=512*扇區數*磁軌數*磁頭數=512*255*63*25=205632000 bytes

機械磁碟讀寫原理

1、磁碟是按照柱面為單位讀寫資料的,即先讀取同一個盤面的某一個磁軌,讀完之後,如果資料沒有讀完,磁頭也不會切換其他的磁軌,而是選擇切換磁頭,讀取下一個盤面的相同半徑的磁軌,直到所有盤面的相同半徑的磁軌讀取完成之後,如果資料還沒有讀寫完成,才會切換到其他不同半徑的磁軌,這個切換磁軌的過程稱為尋道。

2、不同磁頭間的切換是電子切換,而不同磁軌間的切換需要磁頭做徑向運動,這個徑向運動需要步進電機調節,這個動作是機械的切換。

磁碟分割磁碟儲存邏輯結構

一個硬碟的儲存結構包括主引導記錄、分區表、分區結束標誌,及其它分區的引導資訊及資料區資訊。

主開機磁區在整個硬碟裡是唯一的,也就是一個硬碟只能有一個,下面是0磁軌1扇區的放大圖示。

16位元組分區表的內容

位元組數

說明

1bytes

state:分區狀態,0=未啟用,0x80=啟用。

1bytes

startHead:分區起始磁頭號

2bytes

startSC:分區起始扇區和柱面號,低位元組的低6位為扇區號,高2位為柱面號的第9,10位,高位元組為柱面號的低8位。

1bytes

type:分區類型,如0x0B=FAT32,0x83=linux等,00表示此項未用

1bytes

endHead:分區結束磁頭號

2bytes

endSC:分區結束扇區和柱面號

4bytes

Relative:線性定址方式下分區相對扇區地址(對於基本分區即為絕對位址)

4bytes

sectors:分區大小(總扇區數)

備份與恢複MBR

磁碟分割

1、磁碟分割的實質就是針對0磁頭0磁軌1扇區的前446位元組後面接下來的64bytes的分區表進行設定,即主要是劃分起始以及結束磁頭號,及扇區號和柱面號。

2、分區工具有fdisk(適合小於2T的磁碟分割),parted(適合大於2T的磁碟分割,可以對小於2T的磁碟分割),fdisk首選,只有大於2T時才會選parted。

3、一塊磁碟的分區表僅有64bytes大小,每個分區表要佔用16位元組,因此一塊磁碟僅支援四個分區表資訊,即主要磁碟分割+擴充分區的總量不超過4個。

4、磁碟分割是按照柱面(cylinder)來劃分的。

5、擴充分區不能直接使用的,還需要在擴充分區的基礎上建立邏輯分區。

6、擴充分區有自己的分區表,因此擴充分區下面的邏輯分區可以有多個。

磁碟在使用前一般需要進行分區,當然如果不分區直接格式化使用也可以,但這不是常見情況。磁碟分割有主要磁碟分割、擴充分區和邏輯分區。一塊硬碟最多可以有4個分區表資訊(磁碟本身限制),其中一個主要磁碟分割的位置可以用一個擴充分區替換,且一塊硬碟只能有一個擴充分區(作業系統限制),在這個擴充分區中可以劃分多個邏輯分區(IDE磁碟分割編號大概5-63),SATA(編號5-15)。

一台伺服器6塊600G的磁碟,raid5後,總大小3T,次數無法裝系統。解決辦法是做raid5後,不要直接重啟裝系統,而是再raid介面,繼續分一個小的虛擬磁碟vd 200G,用這個200G的虛擬磁碟裝系統,裝完系統後再把剩餘的2.8T通過parted分區。

主要磁碟分割primary

主要磁碟分割是磁碟上必須存在的分區,一般為磁碟的第一個分區。在一個磁碟上最多隻能有4個主要磁碟分割。

一個磁碟想分6個分區,主要磁碟分割和擴充分區的數量:

1p+1e,2p+1e,3p+1e。

擴充分區Extended

擴充分區就像一個虛擬出來的一個小硬碟一樣,但是不同的是沒有MBR,而只有擴充分區表,而且這個擴充分區表示沒有64bytes的限制的,所以可以在擴充分區上劃分多個邏輯分區。一塊磁碟只能存放一個擴充分區,並且擴充分區不能直接存放資料,擴充分區受限於作業系統。

邏輯分區logical

不能在磁碟中單獨直接劃分邏輯分區(fdisk),邏輯分區必須存在於擴充分區內。在擴充分區內可以劃分多個邏輯分區,邏輯分區的編號從數字5開始。在這個擴充分區內可以劃分多個邏輯分區(IDE磁碟大概編號可以是5-63)。

磁碟分割注意事項

1、任意多個主要磁碟分割,但要求1<=主要磁碟分割數量<=4。

例如,一個硬碟可以分為4個主要磁碟分割、3個主要磁碟分割、2個主要磁碟分割、1個主要磁碟分割。

2、擴充分區可以和主要磁碟分割組合,但要求2<=(主要磁碟分割+擴充分區)<=4。

例如:3個主要磁碟分割+1個擴充分區、2個主要磁碟分割+1個擴充分區或1個主要磁碟分割+1個擴充分區。當總分區的數量大於4個的時候,必須提前分一個擴充分區。

3、如果要分成四個磁碟分割的話,那麼分區方式可以為p+p+p+p或p+p+p+e。

注意:

由於MBR及磁碟分割表大小的限制,如果對磁碟分配了4p或3p+e後,即使磁碟還有剩餘未分的空間,那麼這部分空間也無法分區使用了(因為無分區可分了,分區資料表空間已經被沾滿)。因此,在做分區規劃時,如果業務需要,在分區之前就已經明確要超過4個分區,就可以選擇3p+e的分區方式,並且在最後一個擴充分區要將所有的剩餘空間都分配給這個擴充分區。當然,也可以採用1p+1e、2p+1e的分區方式,其實就是主要磁碟分割不能分完,保留不分。

說明:

1、擴充分區不是一個真正的可用分區,建立完擴充分區後,還需要在擴充分區上面建立邏輯分區才可以使用。

2、對於主要磁碟分割和邏輯分區在一本的資料存放區使用上是沒有區別的(對於大多數的資料存放區),在安裝作業系統時第一個分區要選主要磁碟分割。

3、分區數字編號1-4留給主要磁碟分割或擴充分區使用,邏輯分區編號只能從5開始,即使1-4分區號有剩餘,也不會分配給邏輯分區。

4、對硬碟分區,實際上就是修改硬碟的分區表(partition table),也就是說可以通過fdisk分區實際上就是在修改64位元組的分區表,分區對應的資料沒有關係。因此,理論上調整分區大小,不會刪除分區內的資料。

資料分割配置

方案一:叢集結構中的某個節點,資料有多份或者不重要。

/boot 100MB linux引導程式

swap 實體記憶體的1.5倍,當記憶體大於等於8G時,給8G即可。

/ 剩餘硬碟大小

方法二:資料庫及儲存,有大量重要資料

/boot 100MB

/ 50-200G

swap 實體記憶體的1.5倍,當記憶體大於等於8G時,給8G即可。

/data 剩餘硬碟大小,放資料庫及儲存資料。

方案三:門戶層級或大網站

/boot 100MB

swap 實體記憶體的1.5倍,當記憶體大於等於8G時,給8G即可。

/ 50-200G

剩餘空間保留,不再進行分區,將來分給別的需要的部門。

硬碟分區的裝置名稱

在linux系統中,是通過裝置名稱來訪問裝置的,裝置名稱存放在"/dev"目錄中。

裝置名稱的定義規則如下,其他的分區依次類推:

系統的第一塊IDE介面的硬碟:/dev/hda

系統的第二塊IDE介面的硬碟:/dev/hdb

系統的第一塊SCSI介面的硬碟:/dev/sda

系統的第二塊SCSI介面的硬碟:/dev/sdb

SATA、SAS都是sd開頭。

每個分區則使用磁碟名稱加對應的數字編號表示:

系統的第一塊IDE介面硬碟的第一個分區:/dev/hda1

系統的第一塊IDE介面硬碟的第五個分區:/dev/hda5

系統的第二塊SCSI介面硬碟的第一個分區:/dev/sdb1

系統的第二塊SCSI介面硬碟的第五個分區:/dev/sdb5

注意:

1、分區數字編號1-4留給主要磁碟分割或擴充分區使用,邏輯分區編號只能從5開始。

2、IDE硬碟裝置名稱均以/dev/hd開頭,不同硬碟編號依次是/dev/hda/、/dev/hdb、/dev/hdc…。

3、SCSI/SAS/SATA/USB介面硬碟的裝置名稱均以/dev/sd開頭。不同硬碟編號依次是/dev/sda、/dev/sdb、/dev/sdc…。

4、特別注意,SAS/SATA為當前互連網生產環境主流硬碟介面,SSD固態硬碟,由於是電子裝置,效能很高,也逐漸被應用。

5、linux環境下沒有盤符的概念。要對磁碟裝置進行操作,需要使用磁碟裝置名稱,讀取磁碟裝置內容,需要把建立的分區或邏輯卷上的檔案系統掛載到指定的目錄上。

6、在linux系統上劃分了分區之後,還要在分區上建立檔案系統。

檔案系統類型

檔案系統是對一個存放裝置上的資料和中繼資料進行組織的一種機制。檔案系統是在一個磁碟(包括光碟片、磁碟片、閃盤及其它存放裝置)或分區上組織檔案的方式和方法,常見檔案系統如ext2、ext3、ext4、NTFS、FAT、FAT32等。檔案系統是組織隱藏檔或資料的方法,目的是易於查詢和存取資料。因此,如果磁碟上沒有檔案系統也就無法儲存資料了,因此,在磁碟分割後能夠使用之前必須建立對應的檔案系統才行。

檔案系統是基於存放裝置的,比如硬碟或光碟片,並且包含檔案物理位置的維護,檔案系統也可以說是虛擬資料或網路資料存放區的方法,比如NFS、MFS、GFS。目前unix、linux的檔案系統有很多種實現,例如:UFS(基於BSD的unix檔案系統)、ext2、ext3、ext4、zfs、xfs和reiserfs等。

注意:

1、檔案系統是對一個存放裝置上的資料和中繼資料進行組織的一種機制。

2、分區必須格式化建立檔案系統才能存放資料。

3、一個分區只能有一種檔案系統。

4、linux下常見檔案系統ext2、ext3、ext4、zfs、xfs(CentOS7)和reiserfs(單獨安裝)。windows下常見檔案系統NTFS、FAT32。

檔案系統的選擇

SAS、SATA銀盤檔案系統選擇:

1、reiserfs:大量小檔案業務首選reiserfs(100k以內)

2、xfs:有的門戶的資料區塊mysql業務。

4、ext4:視頻下載、流媒體、資料庫、小檔案業務。

5、ext2:沒有日誌,CDN網站加速服務。

常用應用:

CentOS5.x系統:預設ext3。

CentOS6.x系統:預設ext4。

CentOS7.x系統:預設xfs。

SSD檔案系統選擇

ext4、reiserfs可以作為SSD檔案系統,但未對SSD做最佳化,不能充分發揮SSD效能,並影響SSD使用時間。

btrfs對SSD作了最佳化,mount通過參數啟用。但btrfs仍處於實驗階段,生產環境謹慎使用。

jffs32、nilfs2、yaffs是常用的flash file system,在嵌入式環境廣泛應用,建議使用。

在linux中製作檔案系統

用類似如下命令在linux中製作並最佳化reiserfs檔案系統:

/sbin/mkreiserfs /dev/sda2

用類似如下命令在linux中製作xfs檔案系統:

mkfs -t xfs -f /dev/sda2

注意:ext3fs其實是簡單的啟用了記賬的ext2fs。當建立該檔案系統時,對mke2fs使用-j選項:

/sbin/mke2fs -j /dev/sda2

查看目前支援的檔案系統

檔案系統內部

超級塊:記錄檔案系統的控制與管理資訊(Group0以前的資訊)。

1、block和inode的個數和大小,及其已用和未用的數量。

2、檔案系統的載入時間、最近一次寫入資料時間、最近一次執行fsck進行磁碟檢查的時間等。

3、有效位:0已載入,1位載入。

組描述:記錄本塊組從何處開始

塊位示圖:使用位示圖記錄哪些塊已用哪些塊未用。

inode位示圖:使用位示圖記錄inode的使用方式。

inode區:各個inode組成的地區,每個inode都有一個唯一編號。

資料區塊區:各個block組成的地區,用於隱藏檔資料。

磁碟分割

添加一塊磁碟建立6個分區

1p+1e(5L):/dev/sdb1,/dev/sdb5,/dev/sdb6,/dev/sdb7,dev/sdb8,dev/deb9

分區:設定分區表

格式化:建立檔案系統

查看磁碟資訊

 

 

 

 

 

 

 

最後分區情況

列出類型

 

通知linux分區表的變化(否則需要重啟系統才能看到變化)

查看結果

檔案系統的簡單操作

磁碟與目錄的容量:

df:列出檔案系統的整體磁碟使用量。

du:評估檔案系統的磁碟使用量(常用於評估目錄所佔容量)。

1、將容量結果以易讀的容量格式顯示出來:df -h。

2、將/etc下面的可用的磁碟容量以易讀的容量格式顯示:df -h /etc。

3、將目前各個分區當做可用的inode數量列出:df -ih。

4、檢查根目錄下面每個目錄所佔用的容量:du -sm/*。

串連檔案:ln

1、hard link(永久連結實際連結):只是在某個目錄下建立一條檔案名稱連結到某inode號碼的關聯記錄而已。

2、symbolic link(符號連結,捷徑):再建立一個獨立的檔案,而這個檔案會讓資料的讀取指向它連結的那個檔案夾的檔案名稱。

3、將/etc/passwd複製到/tmp下面,並且查看inode與block

磁碟格式化:mkfs -t ext3 /dev/sda6

磁碟檢查:fsck、badblocks

fsck -C -f -t ext3 /dev/sda6,卸載狀態檢查。

badblocks -sv /dev/sda6

磁碟掛載與卸載

1、掛載ext2、ext3檔案系統

mount /dev/sda6 /mnt

df –h

2、掛載cd或dvd光碟片

mkdir /media/cdrom

mount -t iso9660 /dev/cdrom /media/cdrom #-t iso9660這個是光碟片的格式

mount /dev/cdrom /media/cdrom #系統自己去測試掛載

df

3、格式化與掛載磁碟片

mkfs -t vfat /dev/fd0

mkdir /media/floppy

mount -t fat /dev/fd0 /media/floppy

df

4、掛載隨身碟

mkdir /tmp/flash

mount -t vfat -o iocharset=cp950 /dev/sda1 /tmp/flash

df

5、檔案卸載umount

umount /dev/sda6

umount /media/cdrom

umount /tmp/flash

umount /dev/fd0

umount /tmp/home

強制卸載:umount –lf 掛載點

強制卸載nfs案例:

umount:/mnt:device is busy解決辦法

當無法卸載nfs掛載目錄時,原因及解決辦法:

1、可能目前的目錄就是掛載的nfs目錄(/mnt)

解決辦法:退出掛載的目錄/mnt,再執行卸載。

2、比如nfs server掛了,nfs client會出問題(df -h窗會死掉口)

最好的強制卸載方法umount -lf /mnt。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.