移动 LVM 分区

移动 LVM 分区

我有双启动,我从不使用Windows,但因为我很好,所以一开始我想把我的硬盘分成两部分,Windows在左边,Linux在右边。但后来Linux空间不够了,所以我缩小了Windows,并且因为我使用了LVM分区,所以我创建了一个新分区并在逻辑分区上共享它们。但现在linux仍然空间不足,我觉得创建大量的小LVM分区很奇怪,所以我想移动我创建的第二个LVM分区并扩展它,这样我就只保留2个分区。

是否可以?

谢谢。

答案1

有可能,最简单的选择是使用 gparted 之类的东西,可以从这里获得:https://gparted.org/livecd.php

可以在此处找到有关调整大小的简单指南 https://www.howtoforge.com/partitioning_with_gparted

调整分区大小后,重新启动并使用

pvresize /dev/<device_name>
lvresize -l +100%FREE -r /dev/mapper/<lvname> 

-r 标志很重要,因为它还会调整文件系统的大小

此页面上有一个不错的指南: http://ryandoyle.net/posts/expanding-a-lvm-partition-to-fill-remaining-drive-space/

请注意:如果您的文件系统上有关键数据,我会事先备份。

答案2

几乎一切皆有可能。问题是:值得吗?

我认为没有工具可以做到这一点。调整 PV 的大小是不够的,除非您有足够的勇气使用 移动缩小的分区dd

为了做到这一点“简单”,PV 必须与 PE 大小(可能是 4MiB)对齐;不是朝着行驶的起点,而是朝着彼此。那么你可以

  1. 保存后面PV的PE位置/etc/lvm/backup
  2. 删除后面的PV
  3. 延长第一个(也是唯一剩余的)PV
  4. 进行数学计算并调整定义中的 PE 偏移量/etc/lvm/backup(或者更确切地说,在删除 PV 之前的数据副本中)
  5. 加载更改后的数据vgcfgrestore

相关内容