本文主要介紹:
- 磁盤(pán)的相關(guān)操作
- lvm邏輯卷
1. 磁盤(pán)的基本概念
每個(gè)硬件設(shè)備都會(huì)以一個(gè)文件的形式映射到/dev目錄下,第一個(gè)IDE是hda,以此類推,b、c...;SCSI設(shè)備是sda、sdb等
2. 磁盤(pán)的分區(qū)
每一個(gè)硬盤(pán)設(shè)備,Linux分區(qū)分配1-16序列號(hào)碼;有三個(gè)分區(qū),分別為主分區(qū),擴(kuò)展分區(qū),邏輯分區(qū)。
主分區(qū):?jiǎn)?dòng)操作系統(tǒng),存放啟動(dòng)系統(tǒng)和引導(dǎo)程序;
擴(kuò)展分區(qū):占用一個(gè)設(shè)備號(hào),sd4;
邏輯分區(qū):是拓展分區(qū)的具體表現(xiàn);

Linux安裝時(shí)一般選擇ext3格式,這個(gè)文件格式存取效率高,是一種日志型文件系統(tǒng),是GUN/Linux系統(tǒng)中標(biāo)準(zhǔn)的文件系統(tǒng)。當(dāng)一個(gè)分區(qū)做成了ext3文件系統(tǒng),使用時(shí)需要進(jìn)行掛載,缺省目錄為/mnt,若需要再建其他目錄為掛載點(diǎn),光驅(qū)位只讀系統(tǒng)。
掛載、卸載文件系統(tǒng):
mount命令:
#格式:mount [-t 類型] 存儲(chǔ)設(shè)備 掛載點(diǎn)目錄
umount命令:
#格式:umount 存儲(chǔ)設(shè)備位置
3. swap分區(qū)
swap分區(qū),即交換分區(qū),系統(tǒng)在物理內(nèi)存不夠時(shí),把物理內(nèi)存中的一部分空間釋放出來(lái),以供當(dāng)前使用;釋放出來(lái)的空間是一些很長(zhǎng)時(shí)間沒(méi)有操作的程序,臨時(shí)保存在swap分區(qū)中,等需要時(shí)從swap分區(qū)中恢復(fù)數(shù)據(jù)到內(nèi)存中。
擴(kuò)充一塊swap空間,此操作是在/下,只是顯示操作步驟(盡量避免使用根分區(qū))
[root@oraclehost ~]# free -m 查看內(nèi)存空間
[root@oraclehost ~]# df -h 查看磁盤(pán)空間分配
執(zhí)行結(jié)果:

磁盤(pán)的其他相關(guān)操作:
- 先使用dd命令生成一個(gè)空文件,單位為M,設(shè)置為2G
[root@oraclehost ~]# dd if=/dev/zero of=/swap1 bs=1M count=2048
- 創(chuàng)建一個(gè)swap類型文件
[root@oraclehost ~]# mkswap /swap1
- 啟用交換分區(qū)文件
[root@oraclehost ~]# swapon /swap1
- 實(shí)現(xiàn)開(kāi)機(jī)自啟動(dòng),在/etc/fstab中添加swap1分區(qū)_
/swap1 swap swap defaults 0 0
## 在tmpfs行修改虛擬內(nèi)存(物理內(nèi)存+交換分區(qū))的大小
tmpfs /dev/shm tmpfs defaults,size=2G 0 0
- tmpfs重置,使當(dāng)下有效
[root@oraclehost ~]# mount -o remount /dev/shm
執(zhí)行結(jié)果:

- 撤銷操作,返回原狀
[root@oraclehost ~]# swapoff /swap1
[root@oraclehost ~]# rm -rf /swap1
修改/etc/fstab文件
4. 磁盤(pán)操作命令
1. du
du 查看磁盤(pán)使用情況
du -s 顯示當(dāng)前目錄總的使用量
du -h 帶單位的顯示各個(gè)文件的使用情況(人性化human)
2. df
df 查看磁盤(pán)剩余情況
df -h 帶單位的顯示磁盤(pán)信息
3. 磁盤(pán)分區(qū)命令
fdisk 的查詢:
fdisk -m 命令幫助信息
fdisk -L 列出分區(qū)的類型信息
命令參數(shù):
a :激活分區(qū)的可引導(dǎo)標(biāo)志
n :添加新分區(qū)
d :刪除已存在的分區(qū)
p :顯示分區(qū)表
t :改變分區(qū)的文件系統(tǒng)類型
w :寫(xiě)分區(qū)表
q :退出
4. 磁盤(pán)格式化
語(yǔ)法:mkfs <選項(xiàng)> <分區(qū)設(shè)備名>
如:mkfs -t ext3 /dev/sdb1
或者:mkfs.ext3 /dev/sdb1
練習(xí):添加一塊虛盤(pán)(5G)
步驟:
添加前

(1)關(guān)閉虛擬機(jī),創(chuàng)建一塊5G虛盤(pán)(disk1)
(2)將添加的虛盤(pán)做成一個(gè)分區(qū)
[root@oraclehost ~]# fdisk /dev/sdb

(3)將虛盤(pán)格式化為ext3文件格式,并mount到/disk1下
[root@oraclehost ~]# mkdir /disk1
[root@oraclehost ~]# mkfs -t ext3 /dev/sdb1
[root@oraclehost ~]# mount /dev/sdb1 /disk1
(4)在/etc/fstab下添加描述,完成自動(dòng)掛載
[root@oraclehost ~]# vi /etc/fstab
/dev/sdb1 /disk1 ext3 defaults 0 0
(5)重新加載
[root@oraclehost ~]# mount -o -remount /disk1

取消掛載:
umount /dev/sdb1 /disk1
實(shí)現(xiàn)開(kāi)機(jī)自掛載:
vi /etc/rc.d/rc.local
添加 mount /etc/sdb1 /data
5.磁盤(pán)陣列raid存儲(chǔ)技術(shù)
raid是獨(dú)立磁盤(pán)冗余陣列,稱磁盤(pán)陣列raid技術(shù)是以硬件方式(磁盤(pán)柜及控制器)實(shí)現(xiàn)的存儲(chǔ)
管理技術(shù),可以實(shí)現(xiàn)數(shù)據(jù)的讀并發(fā)寫(xiě)、快速的動(dòng)態(tài)擴(kuò)容等容災(zāi)方案。
raid主要利用數(shù)據(jù)條帶、鏡像、數(shù)據(jù)校驗(yàn)技術(shù)來(lái)獲取高性能、可靠性、容錯(cuò)性和擴(kuò)展性;
鏡像:將相同的數(shù)據(jù)同時(shí)存放到多個(gè)磁盤(pán)中(寫(xiě)的性能低、消耗的時(shí)間長(zhǎng));
數(shù)據(jù)條帶:將數(shù)據(jù)分片放到多個(gè)不同的磁盤(pán)中,多個(gè)數(shù)據(jù)分片組成一個(gè)完整的數(shù)據(jù)副本;當(dāng)訪問(wèn)數(shù)據(jù)時(shí),可以從多個(gè)磁盤(pán)上進(jìn)行讀寫(xiě),提高了并發(fā)量,提升了io的性能。
數(shù)據(jù)校驗(yàn):利用冗余數(shù)據(jù)進(jìn)行數(shù)據(jù)錯(cuò)誤檢驗(yàn)和恢復(fù),冗余數(shù)據(jù)通常采用海明碼、異或操作等算法來(lái)計(jì)算獲得;但從多出讀取數(shù)據(jù)并進(jìn)行計(jì)算,影響系統(tǒng)性能。
raid等級(jí)
(1)raid0
相當(dāng)于一個(gè)簡(jiǎn)單的、無(wú)數(shù)據(jù)校驗(yàn)的數(shù)據(jù)條帶化技術(shù);數(shù)據(jù)分散存儲(chǔ)在所有磁盤(pán)中,以獨(dú)立訪問(wèn)方式實(shí)現(xiàn)多塊磁盤(pán)的并讀訪問(wèn),并發(fā)執(zhí)行io操作,總線帶寬得到充分的利用。
缺點(diǎn):一旦數(shù)據(jù)損壞,整個(gè)數(shù)據(jù)將無(wú)法使用、恢復(fù)。
image.png
(2)raid1
數(shù)據(jù)完全一致的分別寫(xiě)到工作盤(pán)和鏡像盤(pán),利用率是50%;當(dāng)工作磁盤(pán)發(fā)生故障,系統(tǒng)會(huì)自動(dòng)從鏡像磁盤(pán)讀取數(shù)據(jù),不會(huì)影響工作。
缺點(diǎn):數(shù)據(jù)寫(xiě)入時(shí),響應(yīng)時(shí)間受到影響,代價(jià)高。
image.png
(3)raid5
磁盤(pán)上同時(shí)存儲(chǔ)數(shù)據(jù)和校驗(yàn)數(shù)據(jù),數(shù)據(jù)塊和對(duì)應(yīng)的校驗(yàn)信息保存在不同的磁盤(pán)上,當(dāng)一個(gè)數(shù)據(jù)盤(pán)損壞時(shí),系統(tǒng)可以根據(jù)同一條的其他數(shù)據(jù)塊和數(shù)據(jù)校驗(yàn)來(lái)重建損壞的數(shù)據(jù)?;旧峡梢詽M足大部分的存儲(chǔ)應(yīng)用需求,是raid0和raid1的折中方案。
image.png
(4)raid01和raid10
raid01:是先做條帶化再做鏡像,本質(zhì)是對(duì)物理磁盤(pán)實(shí)現(xiàn)鏡像;
raid10:先做鏡像再做條帶化,是對(duì)虛擬磁盤(pán)實(shí)現(xiàn)鏡像。raid01比raid10具有更好的容錯(cuò)能力。
RAID01 的數(shù)據(jù)將同時(shí)寫(xiě)入到兩個(gè)磁盤(pán)陣列中,如果其中一個(gè)陣列損壞,仍可繼續(xù)工作,保證數(shù)據(jù)安全性的同時(shí)又提高了性能。
image.png
raid10:整體的磁盤(pán)利用率為50%
image.png
RAID 0+1 和RAID 1+0的比較
RAID0+1是先做兩個(gè)RAID0,然后再做RAID1,因此RAID0+1允許壞多個(gè)盤(pán),但只能在壞在同一個(gè)RAID0中,不允許兩個(gè)RAID0都有壞盤(pán)。
RAID1+0是先做RAID1,然后再做RAID0,因此RAID1+0允許壞多個(gè)盤(pán),只要不是一對(duì)磁盤(pán)壞。
結(jié)論:RAID1+0比RAID0+1安全得多,因?yàn)樵谕粚?duì)磁盤(pán)中,兩塊磁盤(pán)都?jí)牡舻母怕屎艿汀?p>
6.LVM邏輯卷管理器
LVM是以完全的軟件方式實(shí)現(xiàn)的磁盤(pán)最高管理,屏蔽了底層磁盤(pán)布局,便于動(dòng)態(tài)調(diào)整磁盤(pán)容量
注意:/boot分區(qū)用于存放引導(dǎo)文件,不能應(yīng)用于LVM機(jī)制
優(yōu)點(diǎn):
- 在多個(gè)磁盤(pán)上條帶化存儲(chǔ)數(shù)據(jù),提供并行io能力
- 可以建立磁盤(pán)鏡像,提供容錯(cuò)功能保護(hù)數(shù)據(jù)
- 擴(kuò)展性好,根據(jù)需要靈活擴(kuò)容存儲(chǔ)空間
(1)線性卷
一個(gè)線性卷可以將多個(gè)物理卷(PV),集中到一個(gè)邏輯卷中。寫(xiě)數(shù)據(jù)時(shí),數(shù)據(jù)在磁盤(pán)中是順序?qū)懭?,一個(gè)磁盤(pán)寫(xiě)滿,再寫(xiě)入下一個(gè)。
image.png
(2)條狀卷
當(dāng)向LVM邏輯卷讀寫(xiě)數(shù)據(jù)時(shí),文件系統(tǒng)在基本物理卷之間部署數(shù)據(jù)。同時(shí)從多個(gè)物理盤(pán)中讀寫(xiě),提高數(shù)據(jù)io的效率
image.png
(3)鏡像卷
鏡像維護(hù)不同設(shè)備中的相同的副本,當(dāng)向一個(gè)設(shè)備中寫(xiě)入數(shù)據(jù)時(shí),也會(huì)向第二個(gè)設(shè)備中寫(xiě),鏡像保護(hù)數(shù)據(jù);當(dāng)一個(gè)鏡像分支失敗,會(huì)變成一個(gè)線性卷,仍可訪問(wèn)。
image.png
7.LVM的管理命令
pvcreate 設(shè)備名
vgcreate 卷組名 物理卷名1 物理卷名2
lvcreate -L 大小 -n 邏輯卷名 卷組名
lvextend -L +大小 /dev/卷組名/邏輯卷名








