首先,我們需要明白的是邏輯卷的效率和可擴展性都是十分好的。使用他的時候,需要先創建物理卷,然後把物理卷合成卷組,然後在卷組中創建邏輯卷。
- 創建物理卷
pvcreate /dev/sdb1 /dev/sdc1 - 創建卷組
vgcreate vg0 -s 16M /dev/sd{b,c}1
-s 指的是PE大小,其中PE爲一個卷組單位的大小 - 增加捲組
vgextend 需要擴展的卷組名 硬盤設備名 - 創建邏輯卷
lvcreate -n lv0 -l 100 vg0
-l:爲指定PE的個數,也可以換爲L
-L:指定容量,比如2G
lvcreate -n lv1 -l 100%FREE vg0
這樣寫是把vg0卷組中的剩餘全部弄完邏輯卷lv1
使用的時候和其他硬盤一樣,需要進行一系列的流程
- mkfs格式化文件系統
- 寫入配置文件/etc/fstab
- 創建掛載目錄
- 掛載
mount -a
增加邏輯卷
lvcreat -L +5G/5G 邏輯卷名 來增加邏輯卷大小,需要注意的是+5G/5G意義不同+5G表示增加5G,5G表示增加到5G
resize2fs 格式化文件系統 ext系統,增加之後需要這個命令來與之前的邏輯捲進行同步格式化
xfs_growfs 掛載點 xfs文件系統
也可以直接使用 lvextend -r -l 命令,在增加的同時格式化
縮小邏輯卷
縮減必須取消掛載,而且ext系列可以縮減,xfs不能縮
1.取消掛載
umount /mnt/lv0
2.先檢查文件系統完整性
e2fsck -f /dev/vg0/lv0 -f必須加
也可以換成fsck -f /dev/vg0/lv0
3.縮減文件系統
resize2fs /dev/vg0/lv0 10G(表明縮減大小)
4.縮減邏輯卷
lvreduce -L 10G /dev/vg0/lv0
5.重新掛載
更換硬盤,移走邏輯卷
1.增大卷組空間
新增硬盤,加入卷組
2.pvmove /dev/sdd
移動需要移走硬盤的空間
這裏只需要移動,其他不需要管,只要空餘的卷組空間比需要跟換的空間大就可以了,至於移到哪裏,系統自動判斷
3.把磁盤移出卷組
vgreduce vg0 /dev/sdd
3.把磁盤變爲孤立磁盤移出物理卷
pvremove /dev/sdd
邏輯卷跨主機遷移
1.首先需要把所有物理卷合在同一塊硬盤
pvmove /dev/sd*
2.需要修改卷組和邏輯卷名稱,防止衝突
vgrename 原卷組名 修改後卷組名
lvrename 原邏輯卷名 修改後邏輯卷名
3.取消掛載
4.禁用卷組
vgchange -an 卷組名
5.導出卷組
vgexport 卷組名
6.拆除硬盤
7.加到新電腦
8.導入新電腦
vgimport 原電腦卷組名
9.啓用卷組
vgchange -ay 原電腦卷組名
再加入新硬盤設備時,可以使用以下命令來激活讓系統識別
echo ‘- - -’ > /sys/class/scsi_host/host1/scan 不重啓掃描添加硬盤
/dev/mapper/
/dev/卷組名是存放設備名稱軟鏈接
邏輯卷快照的實現
lvcreate -n lv0-snapshot -s -L 1G -p r /vg0/lv0
-s 表面是快照
快照和邏輯卷在同一個卷組裏
-p r 只讀方式創建,避免文件被誤修改(xfs系統加上之後不合並)
或者也可以把快照邏輯卷以只讀方式掛載
lvconvert - -merge 源邏輯卷路徑 還原
但是在創建快照邏輯卷的時候必須是以只讀方式設置
這種只是在CentOS6上可以實現
在CentOS7上需要把mount -o nouuid 加上才能掛載 因爲相同UUID在CentOS7上不能同時掛載