LVM即邏輯卷管理,主要是爲了讓用戶在無需停機的情況下對各個分區進行調整
1.lvm建立
劃分物理分區把分區id修改mbr爲8e(在gpt中id修改爲15)
pvs|pvdisplay ##lvm的檢測信息
vgs|vgdisplay
lvs|lvdisplay
watch -n 1 'pvs;vgs;lvs;df -h /mnt/' ##監控
fdisk /dev/vdb ##創建一個分區並修改格式爲linux lvm
pvcreate /dev/vdb2 ##建立pv分區
vgcreate -s 2M(必須是2的整數倍) vg1 /dev/vdb2
##創建一個vg1卷組,卷組中的邏輯卷物理擴展單元爲2M
lvcreate -l 100 -n lv1 vg1
##創建邏輯卷名爲lv1,邏輯卷的大小爲100個物理擴展單元
##如果lvextend -L 100 會直接指定大小爲100M
mkfs.xfs /dev/vg1/lv1 ##以xfs格式格式化這個邏輯卷(xfs格式只能拉神不能縮減)
mkfs.ext4 /dev/vg1/lv1 ##以ext4格式格式化(可拉伸可縮減),本實驗選用上面的xfs格式
mount /dev/vg1/lv1 /mnt/ ##掛載該邏輯卷,掛載點是mnt
監控頁面
創建邏輯卷的過程 船艦完之後wq保存退出partprobe同步分區表之後再進行操作
劃分邏輯卷的過程
2.拉伸文件系統(xfs格式)
當VG中的容量足夠用時,可拉伸的文件系統由xfs,ext4等格式,所以在拉伸之前我們需要查看文件系統的類型
mount ##查看文件系統的類型
lvextend -L 250M /dev/vg1/lv1 ##邏輯卷拉伸到250M
xfs_growfs /dev/vg1/lv1 ##拉大文件系統
mount命令查看到我們剛纔建立的邏輯卷類型是xfs格式
xfs文件系統拉伸可以不卸載設備,這裏將上一步200M的邏輯卷擴大爲250M(總的是300M)
通過監控可以看到效果
3.ext4格式的拉伸與縮減
fdisk /dev/vdb ##在新建一個分區並修改格式爲linux lvm(8e)
pvcreate /dev/vdb3
vgcreate -s 2M vg2 /dev/vdb3
lvcreate -l 100 -n lv2 vg2
mkfs.ext4 /dev/vg2/lv2
mount /dev/vg2/lv2 /mnt/
##拉伸過程 可以不卸載文件系統
lvextend -L 260M /dev/vg2/lv2 ##拉伸到260M
##拉伸邏輯卷的大小爲260M(這裏分區的時候只給了300M,要留有餘地)
resize2fs /dev/vg2/lv2 ##拉大文件系統
##縮減過程
umount /mnt ##線卸載設備
e2fsck -f /dev/vg1/lv1 ##掃描邏輯卷 檢查邏輯卷佔用了多少
resize2fs /dev/mapper/vg1-lv1 230M
##縮減邏輯卷的大小爲230M
lvreduce -L 230M /dev/mapper/vg0-vo ##減少到230M
mount /dev/vg1/lv1 /mnt/ ##掛載設備
ext4文件系統拉伸 從200M到260M
ext4文件系統縮減 從260M到230M
4.邏輯卷的刪除(逐級刪除lv-vg-pv)
lvremove /dev/vg1/lv1 ##刪除lv
vgremove /dev/vg1 ##刪除vg
pvremove /dev/vdb2
fdisk /dev/vdb ##刪除分區 d 2 wq
partprobe ##同步分區表
當lvm分區出現pv物理卷丟失時:
vgreduce --removemissing vg0 ##從容器中移除丟失的分區
5.lvm快照
1.創建分區
2.lvm快照
touch /mnt/file1 ##在mnt創建文件,作爲要備份的數據
lvcreate -L 20M -n lv1-backup -s /dev/vg1/lv1
##-L 20M 表示此次創建快照的大小
##-n lv1-backup 標示新的快照名字爲lv1-backup
##-s 標示創建快照 /dev/vg1/lv1爲要創建快照的邏輯卷
mount /dev/vg1/lv1-backup /mnt/ ##掛載
rm -fr /mnt/* ##刪除數據
umount /mnt/ ##卸載 到此數據還原了
lvremove /dev/vg1/lv1-backup ##移除快照