- A+
所属分类:Linux
LVM(逻辑卷管理)是Linux环境下用于磁盘分区管理的一种技术。它允许用户灵活地管理磁盘空间,特别是在需要调整分区大小或添加新硬盘的情况下。
LVM的主要组件包括:
物理卷(PV):这是LVM中最底层的组件,通常是一个或多个磁盘分区,但也可以是整个磁盘;
卷组(VG):由一个或多个物理卷组成,为创建逻辑卷提供了一个存储池;
逻辑卷(LV):建立在卷组之上,相当于传统分区系统中的分区。逻辑卷可以动态地扩展和缩小,而会丢失数据;
物理块(PE):是LVM中的最小存储单元,类似于文件系统中的块。LVM的优点包括:
灵活性:可以轻松调整逻辑卷的大小,无需担心物理硬盘上的连续空间问题;
易于扩展:向LVM添加新硬盘非常简单,可以直接扩展已有的逻辑卷;
无需重启:LVM的更改不需要重启系统即可生效。
LVM常用命令
创建和初始化
pvcreate:初始化物理卷;
vgcreate:创建卷组;
lvcreate:创建逻辑卷。查看信息
pvs:列出所有物理卷的概要信息;
vgs:列出所有卷组的概要信息;
lvs:列出所有逻辑卷的概要信息。扩展和缩减
lvextend:扩展逻辑卷的大小;
lvreduce:缩减逻辑卷的大小(需谨慎操作)。
LVM使用
fdisk /dev/sdb

partprobe //刷新分区表
pvcreate /dev/sdb1 //创建物理卷
pvs //物理卷信息
vgcreate sdbvg /dev/sdb1 //卷组创建
vgs //卷组信息
lvcreate -L 10G -n sdblv sdbvg //逻辑卷创建,sdblv(逻辑卷名称) sdbvg(卷组名称)
lvcreate -l 100%FREE -n 逻辑卷 卷组 //创建逻辑卷占用卷组中所有剩余的可用空间
lvs //逻辑卷信息
mkfs.xfs /dev/sdbvg/sdblv //创建文件系统
mkdir -pv /sdblv //创建挂载目录
mount /dev/sdbvg/sdblv /sdblv //挂载
lvcreate逻辑卷创建
-L:指定逻辑卷的大小;
-n:为新的逻辑卷指定一个名字,名字必须是唯一的;
-l:指定逻辑卷的大小,以逻辑扩展为单位。每个逻辑扩展的大小取决于卷组的配置,默认通常为4MB。

lvextend逻辑卷扩展
lvextend -L +10G /dev/sdbvg/sdblv //sdblv逻辑卷加10G lvextend -l +100%FREE 逻辑分区路径 //卷组剩余所有内存加入sdblv逻辑卷 xfs_growfs /dev/sdbvg/sdblv //扩大XFS文件系统 df -h //显示文件系统磁盘空间使用情况 -h人类可读

vgextend卷组扩展
新建分区
vgextend sdbvg /dev/sdb2 //把sdb2加入sdbvg卷组
lvextend -L +20G /dev/sdbvg/sdblv
xfs_growfs /dev/sdbvg/sdblv
df -h

lvreduce逻辑卷缩小
-L
:指定逻辑卷的新大小;
-l
:指定逻辑卷的新大小,使用逻辑扩展数而不是直接的容量大小。
lvreduce -L -30G /dev/sdbvg/sdblv
mkfs.xfs -f /dev/sdbvg/sdblv //强制
umount /sdblv && mount /dev/sdbvg/sdblv /sdblv //重新挂载
df -h

vgremove卷组移除
vgremove [选项] 卷组名
umount /sdblv
vgremove sdbvg
vgremove选项
-f:强制删除卷组;
-y:自动回答“是”来确认删除,无需用户交互。