首先创建物理卷pvcreate /dev/sdb1 /dev/sdb2,再用vgcreate myvg创建卷组,接着lvcreate -L 50G -n mylv创建逻辑卷,格式化mkfs.ext4并挂载至/mnt/mylv;扩展时lvextend加resize2fs;移除需先umount再lvremove;快照用于备份,通过lvcreate -s创建。

LVM (Logical Volume Management) 允许你灵活地管理磁盘空间,可以动态调整分区大小,而无需重新格式化或重启系统。本文将带你了解如何在Linux中创建和管理逻辑卷。
创建逻辑卷的完整操作流程
物理卷(PV)创建:首先,你需要将物理磁盘或分区初始化为物理卷。使用
pvcreate /dev/sdaX
命令,将/dev/sdaX
替换为你的磁盘分区。 例如,pvcreate /dev/sdb1 /dev/sdb2
。 如果你有一个全新的磁盘/dev/sdb
,你可能需要先用fdisk
或parted
创建分区。卷组(VG)创建:将一个或多个物理卷组合成一个卷组。使用
vgcreate <卷组名称> <物理卷>
命令。例如,vgcreate myvg /dev/sdb1 /dev/sdb2
。 卷组就像一个存储池,你可以在其中创建逻辑卷。 卷组名称要具有描述性,方便日后管理。逻辑卷(LV)创建:在卷组中创建逻辑卷。使用
lvcreate -L <大小> -n <逻辑卷名称> <卷组名称>
命令。例如,lvcreate -L 50G -n mylv myvg
。 这将在卷组myvg
中创建一个名为mylv
的 50GB 逻辑卷。 大小可以用 G (GB), M (MB), T (TB) 等单位。格式化逻辑卷:创建逻辑卷后,需要对其进行格式化。使用
mkfs.ext4 /dev/myvg/mylv
命令,将/dev/myvg/mylv
替换为你的逻辑卷路径。 你可以选择其他文件系统,如xfs
或btrfs
。挂载逻辑卷:最后,将逻辑卷挂载到文件系统中的某个目录。首先创建一个挂载点,例如
mkdir /mnt/mylv
,然后使用mount /dev/myvg/mylv /mnt/mylv
命令进行挂载。 为了让逻辑卷在系统重启后自动挂载,你需要编辑/etc/fstab
文件。
逻辑卷创建后如何扩展空间?
扩展逻辑卷是LVM的强大之处。 首先,如果卷组有足够的剩余空间,你可以直接使用
lvextend -L +<大小> /dev/<卷组名称>/<逻辑卷名称>命令。 例如,
lvextend -L +20G /dev/myvg/mylv将逻辑卷
mylv增加 20GB。 接下来,你需要调整文件系统的大小以适应新的空间。 对于 ext4 文件系统,使用
resize2fs /dev/myvg/mylv命令。 如果你使用 XFS 文件系统,使用
xfs_growfs /mnt/mylv命令(假设
/mnt/mylv是你的挂载点)。 如果卷组空间不足,你需要先添加新的物理卷到卷组。
如何移除逻辑卷?
移除逻辑卷是一个需要谨慎操作的过程。 首先,卸载逻辑卷:
umount /mnt/mylv(将
/mnt/mylv替换为你的挂载点)。 然后,移除逻辑卷:
lvremove /dev/myvg/mylv。 这会永久删除逻辑卷上的所有数据,请务必备份重要数据。 接下来,你可以选择移除卷组
vgremove myvg,以及物理卷
pvremove /dev/sdb1 /dev/sdb2。 注意,移除卷组前,必须先移除其内的所有逻辑卷。 移除物理卷前,必须先将其从卷组中移除。
逻辑卷快照有什么用?
逻辑卷快照允许你在不中断服务的情况下创建逻辑卷的只读副本。 这对于备份、测试和开发非常有用。 使用
lvcreate -s -L <大小> -n <快照名称> -p r /dev/<卷组名称>/<逻辑卷名称>命令创建快照。 例如,
lvcreate -s -L 10G -n mylv_snap -p r /dev/myvg/mylv创建一个名为
mylv_snap的快照,大小为 10GB。 快照的大小不需要和原始逻辑卷一样大,但应该足够存储在快照创建后原始逻辑卷上的更改。 一旦快照创建完成,你可以挂载它并访问其中的数据。 当你不再需要快照时,可以使用
lvremove /dev/myvg/mylv_snap命令将其删除。










