LVM Linux虚拟卷管理工具
LVM基本概念
物理分区 -> PV物理卷 -> VG虚拟卷组 -> LV虚拟卷 -> 文件系统(通过monut)
注意:对应添加流程看比如容易理解
查看命令
fdisk -l # 查看物理分区
pvs #查看物理卷
vgs #查看虚拟卷组
lvs #查看虚拟卷
df -h # 查看文件系统
添加流程
fdisk /dev/sdb
使用 fdisk 分区,然后用(t)命令修改分区格式为8e,8e代表 lvm 虚拟卷。或者通过L查看分区类型,找到 Linux LVM的编号
pvcreate /dev/sdb1
用户pvcreate 命令将 /dev/sdb1 分区加入物理卷中
vgcreate newvg /dev/sdb1
创建一个名为 newvg 的卷组,使用 /dev/sdb1 物理卷
lvcreate -L 10G -n newlv newvg
创建一个名为 newlv 的虚拟卷,使用 newvg 卷组的容量
mke2fs -t ext4 /dev/newvg/newlv
# 格式化新创建的虚拟卷,使用 ext4 格式
mount /dev/newvg/newlv /mnt/projects
# 最后,monut 卷到 /mnt/projects 目录,可以正常使用。
扩容流程
pvcreate /dev/sdc2
添加物理卷
vgextend newvg /dev/sdc2
将 /dev/sdc2 的容量添加到 myvg 虚拟卷组
lvextend -L +3G /dev/newvg/newlv
# 增加3G容量给 /dev/newvg/newlv 虚拟卷
resize2fs /dev/newvg/newlv
#文件系统确认扩容
e2fsck /dev/newvg/newlv # 可选
# 检查文件系统是否正确
注意:只要虚拟卷组里还有剩余容量,可以不用添加物理卷,而给虚拟卷扩容
注意:虚拟卷可以容纳不同的物理硬盘和物理分区的容量,然后分配给同一个虚拟卷
缩容流程
e2fsck -f /dev/newvg/newlv
强制卸载并检查文件系统
resize2fs /dev/newvg/newlv 10G
缩小容量到 10G ,前提是分区中存的文件小于10G,否则会报错
lvreduce -L 700M /dev/newvg/newlv
# 减少到700M
lvreduce -L -3G /dev/newvg/newlv
# 从虚拟卷中减少 3G 容量
vgreduce newvg /dev/sdb1
# 删除虚拟卷组中物理卷 /dev/sdb1
删除流程
lvremove /dev/myvg/mylv
vgremove myvg
pvremove /dev/sdc1
**PVE root分区扩容**
lvextend -L +1G /dev/pve/root
resize2fs /dev/pve/root
其他
如果是xfs 文件系统,需要使用 xfs_growfs 代替 resize2fs 扩容
xfs_growfs
partprobe
查看虚拟卷详情
lvs -a -o name,size,chunk_size