Mathieu Longtin Asked: 2009-08-18 05:56:35 +0800 CST2009-08-18 05:56:35 +0800 CST 2009-08-18 05:56:35 +0800 CST 减小现有分区的大小 (Redhat 5) 772 如何减少现有 LVM 分区的大小而不将数据固定在其中? 如果该分区是根 (/) 分区怎么办? redhat 2 个回答 Voted Best Answer niXar 2009-08-18T06:07:27+08:002009-08-18T06:07:27+08:00 首先,您不能减少已安装的分区(至少 ext{2,3,4} 是这种情况)。你必须用棍子或其他东西来启动/。 然后,为了确保不会搞砸,我分三个步骤进行: 使用 resize2fs 将文件系统(首先需要 fsck -f)减少到比目标略少(1G)。 $ sudo fsck -f /dev/vg/mylv $ sudo resize2fs /dev/vg/mylv 24G 使用 lvreduce 将逻辑卷减小到目标值 $ sudo lvreduce -L 25G /dev/vg/mylv 在设备上重新运行不带参数的 resize2fs,它将获取块设备的大小。 $ sudo resize2fs /dev/vg/mylv 您也可以通过取范围大小的倍数来简单地计算正确的大小,但我发现额外的步骤很容易出错,而且当我必须做那种事情时,我没有多余的大脑周期。 Wojciech Domalewski 2009-08-29T11:35:35+08:002009-08-29T11:35:35+08:00 您要调整单个 LV(逻辑卷)或 PV(物理卷、磁盘 LVM 分区)的大小吗?没有什么比得上“LVM 根分区”了。我猜你有一个基于 LV 的根文件系统。在这种情况下,请遵循 niXar 的建议。 但是,如果您想调整单个 LVM(磁盘)分区(即单个 PV)的大小,您可以使用“pvresize”或“pvmove”来调整它的大小。 # man pvmove # man pvresize 并且不要忘记在开始使用磁盘分区或 DM 设备之前备份您的数据。 顺便说一句:http ://www.tldp.org/HOWTO/LVM-HOWTO/reducelv.html
首先,您不能减少已安装的分区(至少 ext{2,3,4} 是这种情况)。你必须用棍子或其他东西来启动/。
然后,为了确保不会搞砸,我分三个步骤进行:
使用 resize2fs 将文件系统(首先需要 fsck -f)减少到比目标略少(1G)。
$ sudo fsck -f /dev/vg/mylv
$ sudo resize2fs /dev/vg/mylv 24G
使用 lvreduce 将逻辑卷减小到目标值
$ sudo lvreduce -L 25G /dev/vg/mylv
在设备上重新运行不带参数的 resize2fs,它将获取块设备的大小。
$ sudo resize2fs /dev/vg/mylv
您也可以通过取范围大小的倍数来简单地计算正确的大小,但我发现额外的步骤很容易出错,而且当我必须做那种事情时,我没有多余的大脑周期。
您要调整单个 LV(逻辑卷)或 PV(物理卷、磁盘 LVM 分区)的大小吗?没有什么比得上“LVM 根分区”了。我猜你有一个基于 LV 的根文件系统。在这种情况下,请遵循 niXar 的建议。
但是,如果您想调整单个 LVM(磁盘)分区(即单个 PV)的大小,您可以使用“pvresize”或“pvmove”来调整它的大小。
并且不要忘记在开始使用磁盘分区或 DM 设备之前备份您的数据。
顺便说一句:http ://www.tldp.org/HOWTO/LVM-HOWTO/reducelv.html