问题

如何减小现有的 LVM 卷的大小,以在 Ubuntu 机器上释放一些空间?

挂载卷

我们可以再次挂载逻辑卷:

# mount /dev/vg0/lv_data

现在卷组有 20G 的可用空间。
然后,我们可以使用 lvcreate 使用 20G 可用空间创建新的逻辑卷。

如何缩小 Ubuntu 上的 LVM 卷
on  it road.com

运行 FS 检查

要执行 lvreduce,必须卸载磁盘,因此必须在磁盘上不需要活动时执行此操作。
然后运行文件系统检查以验证数据完整性:

# umount /dev/vg0/lv_data
# e2fsck -f /dev/vg0/lv_data

减小卷的大小

使用 lvreduce 命令调整逻辑卷的大小。
此命令可以缩小文件系统以及逻辑卷。

# lvreduce -r -L 80G /dev/vg0/lv_data

注意这里的 -r 标志。
根据 lvreduce 的手册页:

-r|--resizefs
       Resize underlying filesystem together with the LV using fsadm.
	   使用 fsadm 与 LV 一起调整底层文件系统的大小。

备份现有数据

在修改任何系统之前,始终建议先创建备份,因为减小 LVM 大小会增加数据损坏的风险。
在大多数情况下,lvreduce 命令会警告可能的数据丢失并要求确认。
但是,我们不应依赖这些确认提示来防止数据丢失,因为在某些情况下我们不会看到这些提示,例如当逻辑卷处于非活动状态或者未使用 -resizefs 选项时。
请注意,使用 lvreduce 命令的 -test 选项并不表示操作是安全的,因为该选项不会检查文件系统或者测试文件系统调整大小。

找到我们要缩小的逻辑卷的名称(此示例使用逻辑卷 /dev/vg0/lv_data):

# lvs

对于此示例,此处是当前和预期的卷大小。

当前卷大小:100GB
预期卷大小:80GB

日期:2020-09-17 00:13:47 来源:oir作者:oir