邏輯卷管理器可以認為是一種磁盤管理模式,也可以認為是一款磁盤的分區方式。邏輯卷管理器可以
動態的管理一塊或者多塊硬盤、分區等。換句話說,當用戶想要隨著實際需求的變化調整硬盤分區的大小時,會受到硬盤“靈活性”的限制。這時就需要用到另外一項非常普及的硬盤設備資源管理技術了—LVM(邏輯卷管理器)。LVM可以允許用戶對硬盤資源進行動態調整。
下面來看下lvm 這邊的名詞(都是首字母縮寫,方便記憶)
PV(Physical Volume) 物理卷
實質上就是一塊硬盤,只不過如果要使用lvm管理磁盤,就需要將其設置為PV
VG(Volume Group) 卷組
有多個PV組成,是lvm劃分分區容量的一個容量池
LV(Logical Volume) 邏輯卷
來自於VG,是邏輯卷管理器提供出來的一個分區
PE(Physical Extend) 物理拓展
組成VG的最小單位,lvm的最小單位,默認大小4M,PE必須是整數,若果不足,系統直接捨棄
理解後,就要 來敲命令了:(如果是在虛擬機中,請添加一塊新的硬盤!再進行lvm的使用)
1.創建物理卷
pvcreate 磁盤/分區路徑
eg: pvcreate /dev/sdb1
2.創建卷組
vgvreate [-s 大小] vg名稱 pv路徑 (-s 指的是pe 的大小,默認是4M,不指定就是默認)
eg: vgcreate -s 8M vg1 /dev/sdb1
3.創建邏輯卷
lvcreate -l PE數量 -n lv名稱 vg名稱
-L 這個lv大小 ( -l 和- L 用法是不一樣的,看清楚)
eg: lvcreate -l 100 -n lv1 vg1
這樣我們的lvm 邏輯卷 的 lv 1 就創建成功了!
想要使用的話,接下來就要做 製作文件系統(格式化)、掛載
用於lvm查看的一些命令:
pvdisplay pvs
vgdisplay vgs
lvdisplay lvs
我們在上面提到使用lvm 的好處就是可以動態管理我們的磁盤或者分區!
我們看看具體的使用:
一、vg的增大與減小
物理卷的增大與減小實際上就是向物理卷中新增或者移除pv的過程。
1、物理卷的增大
vgextend 卷組名稱 pv路徑
eg : vgextend vg1 /dev/sdb2
2、物理卷的減小
(1)、pv未使用
vgreduce 卷組名稱 pv路徑
eg : vgreduce vg1 /dev/sdb1
(2)、pv正在使用(裡面有lv)
首先 umount lv路徑 ( 卸載邏輯卷)
在指定卷組中移除一個pv , vgreduce 卷組名 pv 路徑
將pv 刪除 , pvmove pv 路徑
二、lv的增大與減小
邏輯卷的增大與減小實際上就是增大與減少邏輯卷中pe的數量
1、邏輯卷的增大
允許掛載中增大,並且lv的增大不會破壞數據
第一步:增大lv
lvextend -l [+]數量 lv路徑
-L [+]大小
第二步:增大文件系統
ext系列文件系統調整命令: resize2fs lv的路徑
xfs系列文件系統調整命令:xfs_growfs lv的路徑
2、邏輯卷的減小(lvm 這邊的lv 減小,針對的文件系統只能是ext 格式的)
不允許掛載中減小,不支持xfs文件系統的減小,減小時理論上不會破壞數據
第一步:卸載lv
umount lv路徑 或者 掛載點路徑
第二步:文件系統檢查
e2fsck -f lv路徑
第三步:減小文件系統
resize2fs lv路徑 大小
eg : resize2fs /dev/vg1/lv1 100M
第四步:減小lv
lvreduce -l [-]數量 lv路徑
-L [-]大小
eg: lvreduce -L 100M /dev/vg1/lv1
第五步:重新掛載
mount or vim /etc/fstab 永久掛載
*命令lvresize可以同時用於增大與減小,使用方法與lvextend和lvreduce相同
三、邏輯卷的刪除
1.刪除lv
lvremove lv路徑
2.刪除vg
vgremove vg名稱
3.刪除pv
pvremove pv路徑
最後 大家 不要忘了 lsblk 和 df -Th 這兩個命令
lsblk 可以顯示系統中硬盤使用情況
df -Th 顯示出系統中的掛載,並把 文件系統類型和大小顯示出來
有什麼不懂的問題,可以在留言區評論!謝謝
閱讀更多 運維小弟 的文章