将lvm分区复制到较小的磁盘,并重命名卷组

我试图缩小一个vmdk(VMWare磁盘映像)文件尽可能小,并发现两个build议。 首先是cat /dev/zero到fs然后删除它,然后运行VMWare工具的收缩。 这工作正常。 其次是将所有内容复制到新的vmdk中。 我去了第二条路线。 我没有使用dd因为我实际上只想使用尽可能less的块,而不是具有逐块的副本。 任何未链接的文件仍然会有未被清零的块。 其次,centos映像主要是lvm,除了启动分区,我的目标将是4GB而不是8GB。

我没有用第一个40MB的dd来获取引导块和分区复制。 然后我用parted来创build一个相同的主引导,和较小的主lvm。 然后,我在该设备上使用了pvcreate sdb2, vgcreatelvcreate来创build根和交换。 我在根分区上使用mkfs.ext3fs,然后使用rsync -av / /2root不包括/proc /sys /2root /dev 。 到目前为止一切顺利。

我的问题是:

  1. 结果是2.7 GB,而来源是2.1 GB。 这对我来说很奇怪。
  2. 第二个vgroup被称为VolGroup01,而原始的被称为VolGroup00。

我怎样才能将VolGroup01重命名为VolGroup00并在完成之后进行交换?

要使用vgrename重命名vg。 通常情况下,你应该避免重复卷组名称,因为它会打破许多工具,但你总是可以根据UID重命名为vg。

 vgrename vg02 my_volume_group 

更大的结果的原因可能是你有rsync的时候重复的硬链接文件。