安全地调整根 LVM 的大小

安全地调整根 LVM 的大小

我有一个由 5 个 PV(物理卷)组成的 LV(逻辑卷)。每个 PV 大 100GB,因此总计 500GB。

根分区挂载在该LV上,仅使用250GB。

我必须删除至少 2 个 PV,才能将分区缩小到不超过 300GB(3 个 PV)。

我怎样才能安全地完成这个任务(不丢失数据)?

太感谢了!

解决了: 千伏分钟为我们做所有的事情(resize2fs、vgreduce,...)。

答案1

您无法缩小已安装的 ext4,因此您必须从 Live CD 等进行此操作。

首先,缩小逻辑卷,包括调整文件系统的大小。请注意,这将需要一段时间!它可能需要移动大量数据。

lvreduce -r -L 290G «vg-name»/«lv-name»

注意两者-r(这告诉它首先调整文件系统的大小;这对于避免数据丢失至关重要),我还要求将其缩小一点,以确保没有恼人的舍入错误(这主要是管理员的舍入 - 例如,您的意思是 300 GiB 还是 300GB?)。 LVM 工具非常精确,如果您愿意,您可以完全做到这一点……但最后重新增加文件系统可能更容易。(-r/--resizefs选项在旧版本和其他 LVM 工具中不可用lvreduce。这就是为什么许多其他网站上的帖子说您必须resize2fs在减小 LV 大小之前对文件系统进行明确操作,由于该选项,这不再是必要的-r。)

现在,您可以尝试vgreduce看看它是否可以删除任何未使用的卷组。vgreduce -a «vg-name»将尝试删除全部来自卷组的 PV,但只有空的 PV 才会成功。如果这删除了两个,那就太好了,你就完成了。

如果这不起作用,您将需要移动数据,这是通过pvmove.第一个参数pvmove是要移动数据的 PV;第二个(可选)参数是移动的位置。如果省略第二个,LVM 会选择某个位置(除了您将其移出的位置之外)。 pvmove之后,您可以尝试vgreduce «vg-name» «path-to-pv»将其从卷组中删除;同样,只有在没有数据的情况下才会成功。

从 VG 中删除它们后,您可以使用pvremove来从磁盘中删除 LVM“标签”。还,您必须安全地擦除磁盘之前的数据是否需要保密; LVM 和 resize2fs 有复制的数据尚未被安全删除。

相关内容