减少lvm空间并创建新分区

减少lvm空间并创建新分区

我的目标是从 lvm 中释放一些空间并创建新分区。下面是设备和其上的 lvm。

# lsblk
NAME            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
vda             252:0    0   200G  0 disk
|-vda1          252:1    0   512M  0 part /boot
`-vda2          252:2    0 199.5G  0 part
  |-vg-lv_root  253:0    0  15.5G  0 lvm  /
  |-vg-lv_pwcfg 253:1    0  10.9G  0 lvm  /opt/pwcfg
  |-vg-lv_var   253:2    0  12.5G  0 lvm  /var/log
  |-vg-lv_pw    253:3    0 118.4G  0 lvm  /pw
  `-vg-lv_opt   253:4    0  42.2G  0 lvm  /opt

我要实现vg-lv_pw至 50 GB。我使用以下命令来执行此操作:

# lvreduce --resizefs -L 50G /dev/vg/lv_pw
fsck from util-linux 2.23.2
mkfs_lv_pw: 11/7007616 files (0.0% non-contiguous), 445504/31039488 blocks
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/mapper/vg-lv_pw to 13107200 (4k) blocks.
The filesystem on /dev/mapper/vg-lv_pw is now 13107200 blocks long.

  Size of logical volume vg/lv_pw changed from <118.41 GiB (30312 extents) to 50.00 GiB (12800 extents).
  Logical volume vg/lv_pw successfully resized.

是的,lvm 大小设置为 50GB。

# lsblk
NAME            MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
vda             252:0    0   200G  0 disk
|-vda1          252:1    0   512M  0 part /boot
`-vda2          252:2    0 199.5G  0 part
  |-vg-lv_root  253:0    0  15.5G  0 lvm  /
  |-vg-lv_pwcfg 253:1    0  10.9G  0 lvm  /opt/pwcfg
  |-vg-lv_var   253:2    0  12.5G  0 lvm  /var/log
  |-vg-lv_pw    253:3    0    50G  0 lvm
  `-vg-lv_opt   253:4    0  42.2G  0 lvm  /opt

现在我必须接受自由空间 68.41GB并从中创建新分区。

# pvs
  PV         VG Fmt  Attr PSize    PFree
  /dev/vda2  vg lvm2 a--  <199.50g <68.41g
# vgs
  VG #PV #LV #SN Attr   VSize    VFree
  vg   1   5   0 wz--n- <199.50g <68.41g

我如何使用该可用空间并创建新分区维达3

答案1

首先,您需要减小物理卷的大小,使用pvresize

pvresize /dev/vda2 --setphysicalvolumesize 132g

这可确保所有数据和元数据最终都位于/dev/vda2.我在这里谨慎考虑尺寸。

然后,您需要/dev/vda2使用fdisk或类似的工具缩小分区条目 - 删除分区条目并使用相同的起始扇区和适当的大小(略大于 132GiB,276,824,064 512 字节扇区,以确保安全)重新创建它。这将允许您创建一个新分区。

最后,再次调整 PV 的大小,这次使用

pvresize /dev/vda2

以便它使用分区中的所有可用空间。

相关内容