1.磁盤的基本概念
1.什么是磁盤
磁盤(disk)是指利用磁記錄技術(shù)存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器宜猜。
磁盤是計(jì)算機(jī)主要的存儲(chǔ)介質(zhì)麻昼,可以存儲(chǔ)大量的二進(jìn)制數(shù)據(jù),并且斷電后也能保持?jǐn)?shù)據(jù)不丟失。
絕大多數(shù)人對(duì)硬盤都不陌生组橄,
一塊小小的硬盤里,就可以存儲(chǔ)海量的照片音樂和電影罚随,尤其是我們喜愛的各類動(dòng)作片玉工。
但如此小的空間,是如何儲(chǔ)存那么多信息的呢淘菩?
每個(gè)硬盤中心都是一摞高速運(yùn)轉(zhuǎn)的圓盤遵班,在圓盤上附著的一圈金屬顆粒,每個(gè)金屬顆粒都有自己的磁化程度潮改,用于儲(chǔ)存0和1狭郑。
當(dāng)記錄數(shù)據(jù)時(shí),硬盤的磁頭開始通電汇在,形成強(qiáng)磁場(chǎng)翰萨,數(shù)據(jù)在磁場(chǎng)的作用下轉(zhuǎn)變成電流,使顆粒磁化糕殉,從而將信息記錄在圓盤上亩鬼。
由海量顆粒組成的信息,就是我們存在硬盤里的數(shù)據(jù)阿蝶。
2.磁盤的基本結(jié)構(gòu)
1.什么是盤片: 硬盤一般有一個(gè)或多個(gè)盤片辛孵,每個(gè)盤片可以有兩面,即第一個(gè)盤片的正面為0面赡磅,反面為1面然后依次類推。
2.什么是磁道:每個(gè)盤片的盤面在出廠的時(shí)候被劃分出了多個(gè)同心圓環(huán)宝与,數(shù)據(jù)就存儲(chǔ)在這樣的同心圓環(huán)上面焚廊,我們將這樣的圓環(huán)稱為磁道(Track)冶匹,每個(gè)盤面可以劃分多個(gè)磁道。但肉業(yè)不可見咆瘟。
3.什么是扇區(qū): 在硬盤出廠時(shí)會(huì)對(duì)磁盤進(jìn)行一次低格嚼隘,其實(shí)就是再每個(gè)磁道劃分為若干個(gè)弧段,每個(gè)弧段就是一個(gè)扇區(qū) (Sector)袒餐。扇區(qū)是硬盤上存儲(chǔ)的物理單位飞蛹,現(xiàn)在每個(gè)扇區(qū)可存儲(chǔ)512字節(jié)數(shù)據(jù)已經(jīng)成了業(yè)界的約定。
4.什么是柱面:柱面實(shí)際上就是我們抽象出來(lái)的一個(gè)邏輯概念灸眼,簡(jiǎn)單來(lái)說(shuō)就是處于同一個(gè)垂直區(qū)域的磁道稱為 柱面 卧檐,即各盤面上面相同位置磁道的集合。這樣數(shù)據(jù)如果存儲(chǔ)到相同半徑磁道上的同一扇區(qū)焰宣,這樣可以實(shí)現(xiàn)并行讀取霉囚,主要是減少磁頭尋道時(shí)間。
5.什么是磁頭: 讀取磁盤磁道上面金屬塊匕积,主要負(fù)責(zé)讀或?qū)懭霐?shù)據(jù)盈罐。
3.磁盤的預(yù)備知識(shí)
我們需要簡(jiǎn)單了解下磁盤的接口類型、磁盤涉及的相關(guān)術(shù)語(yǔ)闪唆、磁盤在Linux下的命名方式盅粪。
1.磁盤的接口類型
IDE,Scsi(已經(jīng)被淘汰)
SATA III 與SAS(企業(yè)使用較多)
ssd的Msata接口為超極本設(shè)計(jì)悄蕾,但是被m.2接口的SSD替代票顾,而m.2接口(支持SATA、PCI-E雙通道協(xié)議)***
1笼吟、M.2接口是為超極本量身定做的新一代接口標(biāo)準(zhǔn)库物,以取代原來(lái)的mSATA接口。擁有更小巧的規(guī)格尺寸贷帮,還是更高的傳輸性能戚揭,M.2都遠(yuǎn)勝于mSATA。 m2接口百度百科 固態(tài)硬盤SATA和mSATA有什么區(qū)別
2撵枢、M.2幾個(gè)名詞需要各位讀者知道了解民晒,SATA和PCI-E AHCI和NVMe
3、最后呢锄禽,可以擴(kuò)展了解 M.2固態(tài)硬盤使用過程中常見問題潜必?*
2.磁盤的基本術(shù)語(yǔ)
尺寸: 2.5英寸 3.5英寸
容量:KB MB GB TB PB EB
轉(zhuǎn)速:7500 15000
IOPS:每秒能夠發(fā)生IO的次數(shù)
3.磁盤在系統(tǒng)上的命名方式
設(shè)備名稱 | 分區(qū)信息 | 設(shè)備類型 |
---|---|---|
/dev/sda | /dev/sda1 | 第一塊物理磁盤第一分區(qū) |
/dev/sdb | /dev/sdb2 | 第二塊物理磁盤第二個(gè)分區(qū) |
/dev/vdd | /dev/vdd4 | 第四塊虛擬磁盤的第四個(gè)分區(qū) |
PS1:系統(tǒng)中分區(qū)由數(shù)字編號(hào)表示,1~4留給主分區(qū)使用和擴(kuò)展分區(qū)沃但,邏輯分區(qū)從5開始磁滚,為什么分區(qū)還有限制?不應(yīng)該是隨意分配?因?yàn)镸BR分區(qū)表只能分配4個(gè)主分區(qū)垂攘?why维雇?
MBR為什么只能劃分4個(gè)主分區(qū)
PS2: 前面我們已經(jīng)提到過MBR分區(qū)表只能分配4個(gè)主分區(qū),但現(xiàn)在還有一種新型的分區(qū)表GPT晒他,GPT支持分配128個(gè)主分區(qū)吱型。注意MBR與GPT之間不能互轉(zhuǎn),會(huì)導(dǎo)致數(shù)據(jù)丟失陨仅。
MBR與GPT之間又有什么區(qū)別
4.磁盤基本分區(qū)Fdisk
1.添加一塊小于2TB的磁盤進(jìn)行使用津滞,步驟如下:
1.給虛擬機(jī)添加一塊新的硬盤
2.使用fdisk進(jìn)行分區(qū)
3.使用mkfs進(jìn)行格式化
4.使用mount進(jìn)行掛載
PS: 生產(chǎn)分區(qū)建議,如無(wú)特殊需求直接使用整個(gè)磁盤即可灼伤,無(wú)需分區(qū)触徐。
PS: 學(xué)習(xí)分區(qū)建議: 1P+1E(3L) 2P+1E(2L) 3P+1E(1L) (僅適用于練習(xí))
[root@xuliangwei ~]# fdisk -l
[root@xuliangwei ~]# fdisk /dev/sdb
Command (m for help): m #輸入m列出常用的命令
Command action
a toggle a bootable flag #切換分區(qū)啟動(dòng)標(biāo)記
b edit bsd disklabel #編輯sdb磁盤標(biāo)簽
c toggle the dos compatibility flag #切換dos兼容模式
d delete a partition #刪除分區(qū)
l list known partition types #顯示分區(qū)類型
m print this menu #顯示幫助菜單
n add a new partition #新建分區(qū)
o create a new empty DOS partition table #創(chuàng)建新的空白分區(qū)表
p print the partition table #顯示分區(qū)表的信息
q quit without saving changes #不保存退出
s create a new empty Sun disklabel #創(chuàng)建新的Sun磁盤標(biāo)簽
t change a partitions system id #修改分區(qū)ID,可以通過l查看id
u change display/entry units #修改容量單位,磁柱或扇區(qū)
v verify the partition table #檢驗(yàn)分區(qū)表
w write table to disk and exit #保存退出
x extra functionality (experts only) #拓展功能
1.fdisk創(chuàng)建主分區(qū)
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free) #主分區(qū)
e extended #擴(kuò)展分區(qū)
Select (default p): p #選擇創(chuàng)建主分區(qū)
Partition number (1-4, default 1): #默認(rèn)創(chuàng)建第一個(gè)主分區(qū)
First sector (2048-2097151, default 2048): #默認(rèn)扇區(qū)回車
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151): +50M #分配50MB
2.fdisk創(chuàng)建擴(kuò)展分區(qū)
Command (m for help): n #新建分區(qū)
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): e #創(chuàng)建擴(kuò)展分區(qū)
Partition number (2-4, default 2):
First sector (104448-2097151, default 104448):
Using default value 104448
Last sector, +sectors or +size{K,M,G} (104448-2097151, default 2097151): #空間都給到擴(kuò)展分區(qū)
3.fdisk創(chuàng)建邏輯分區(qū)
Command (m for help): n #新建分區(qū)
Partition type:
p primary (1 primary, 1 extended, 2 free)
l logical (numbered from 5)
Select (default p): l #創(chuàng)建邏輯分區(qū)
Adding logical partition 5
First sector (106496-2097151, default 106496):
Using default value 106496
Last sector, +sectors or +size{K,M,G} (106496-2097151, default 2097151): +100M #分配100MB空間
4.fdisk查看分區(qū)情況,并保存
Command (m for help): p #查看分區(qū)創(chuàng)建
Device Boot Start End Blocks Id System
/dev/sdb1 2048 104447 51200 83 Linux
/dev/sdb2 104448 2097151 996352 5 Extended
/dev/sdb5 106496 311295 102400 83 Linux
#保存分區(qū)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
#檢查磁盤是否是MBR分區(qū)方式
[root@xuliangwei ~]# fdisk /dev/sdb -l|grep type
Disk label type: dos
#安裝parted, 刷新內(nèi)核立即生效,無(wú)需重啟
[root@xuliangwei ~]# yum -y install parted
[root@xuliangwei ~]# partprobe /dev/sdb
2.格式化磁盤
mkfs格式化磁盤饺蔑,實(shí)質(zhì)創(chuàng)建文件系統(tǒng)锌介,文件系統(tǒng)類似于將房子裝修成3室一廳,還是2室一廳猾警。
#選項(xiàng):
# -b 設(shè)定數(shù)據(jù)區(qū)塊占用空間大小孔祸,目前支持1024、2048发皿、4096 bytes每個(gè)塊崔慧。
# -t 用來(lái)指定什么類型的文件系統(tǒng),可以是ext4, xfs
# -i 設(shè)定inode的大小
# -N 設(shè)定inode數(shù)量穴墅,防止Inode數(shù)量不夠?qū)е麓疟P不足
#1.格式化整個(gè)磁盤
[root@xuliangwei ~]# mkfs.ext4 /dev/sdb
#2.格式化磁盤的某個(gè)分區(qū)
[root@xuliangwei ~]# mkfs.xfs /dev/sdb1
3.使用mount掛載并使用
如果需要使用該磁盤的空間惶室,需要準(zhǔn)備一個(gè)空的目錄作為掛載點(diǎn),與該設(shè)備進(jìn)行關(guān)聯(lián)
磁盤掛載方式Mount
前面我們已經(jīng)提到過玄货,如果需要使用磁盤的空間皇钞,需要準(zhǔn)備一個(gè)空的目錄作為掛載點(diǎn),與該設(shè)備進(jìn)行關(guān)聯(lián)松捉。mount主要是為文件系統(tǒng)指定一個(gè)訪問入口夹界。
PS: 類似我的商場(chǎng)沒有門,那么就無(wú)法進(jìn)入購(gòu)買商品隘世,此時(shí)通過mount命令可以創(chuàng)建一個(gè)入口可柿。給超市安裝一個(gè)門。如圖:
1.通過mount進(jìn)行掛載丙者,但重啟將會(huì)失效复斥。我們稱為臨時(shí)生效。
選項(xiàng):-t指定文件系統(tǒng)掛載分區(qū) -a 掛載/etc/fstab中的配置文件 -o 指定掛載參數(shù)
掛載/dev/sdb1至db1目錄
[root@xuliangwei ~]# mkdir /db1
[root@xuliangwei ~]# mount -t xfs /dev/sdb1 /db1/
2.掛載的磁盤械媒,如果不想使用可以使用umount進(jìn)行卸載目锭。
選項(xiàng): -l 強(qiáng)制卸載
1.卸載目錄方式
[root@xuliangwei ~]# umount /db1
2.卸載設(shè)備方式
[root@xuliangwei ~]# umount /dev/sdb1
3.umount不能卸載的情況
[root@xuliangwei db1]# umount /db1
umount: /db1: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1)
PS: 如上情況解決辦法有兩種, 1.切換至其他目錄 2.使用'-l'選項(xiàng)強(qiáng)制卸載
[root@student db1]# umount -l /db1