皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

如何从 LVM 的卷组中删除物理卷?

如果你的 LVM 不再需要使用某个设备,你可以使用 vgreduce 命令从卷组中删除物理卷。

vgreduce 命令可以通过删除物理卷来缩小卷组的容量。但要确保该物理卷没有被任何逻辑卷使用,请使用 pvdisplay 命令查看。如果物理卷仍在使用,你必须使用 pvmove 命令将数据转移到另一个物理卷。

数据转移后,它就可以从卷组中删除。

最后使用 pvremove 命令删除空物理卷上的 LVM 标签和 LVM 元数据。

将扩展块移动到现有物理卷上

使用 pvs 命令检查是否使用了所需的物理卷(我们计划删除 LVM 中的 /dev/sdc 磁盘)。

  1. # pvs -o+pv_used
  2. PV VG Fmt Attr PSize PFree Used
  3. /dev/sda myvg lvm2 a- 75.00G 14.00G 61.00G
  4. /dev/sdb myvg lvm2 a- 50.00G 45.00G 5.00G
  5. /dev/sdc myvg lvm2 a- 17.15G 12.15G 5.00G

如果使用了,请检查卷组中的其他物理卷是否有足够的空闲扩展块extent

如果有的话,你可以在需要删除的设备上运行 pvmove 命令。扩展块将被分配到其他设备上。

  1. # pvmove /dev/sdc
  2. /dev/sdc: Moved: 2.0%
  3. /dev/sdc: Moved: 79.2%
  4. /dev/sdc: Moved: 100.0%

当 pvmove 命令完成后。再次使用 pvs 命令检查物理卷是否有空闲。

  1. # pvs -o+pv_used
  2. PV VG Fmt Attr PSize PFree Used
  3. /dev/sda myvg lvm2 a- 75.00G 1.85G 73.15G
  4. /dev/sdb myvg lvm2 a- 50.00G 45.00G 5.00G
  5. /dev/sdc myvg lvm2 a- 17.15G 17.15G 0

如果它是空闲的,使用 vgreduce 命令从卷组中删除物理卷 /dev/sdc

  1. # vgreduce myvg /dev/sdc
  2. Removed "/dev/sdc" from volume group "vg01"

最后,运行 pvremove 命令从 LVM 配置中删除磁盘。现在,磁盘已经完全从 LVM 中移除,可以用于其他用途。

  1. # pvremove /dev/sdc
  2. Labels on physical volume "/dev/sdc" successfully wiped.

移动扩展块到新磁盘

如果你在卷组中的其他物理卷上没有足够的可用扩展。使用以下步骤添加新的物理卷。

向存储组申请新的 LUN。分配完毕后,运行以下命令来在 Linux 中发现新添加的 LUN 或磁盘

  1. # ls /sys/class/scsi_host
  2. host0
  1. # echo "- - -" > /sys/class/scsi_host/host0/scan
  1. # fdisk -l

操作系统中检测到磁盘后,使用 pvcreate 命令创建物理卷。

  1. # pvcreate /dev/sdd
  2. Physical volume "/dev/sdd" successfully created

使用以下命令将新的物理卷 /dev/sdd 添加到现有卷组 vg01 中。

  1. # vgextend vg01 /dev/sdd
  2. Volume group "vg01" successfully extended

现在,使用 pvs 命令查看你添加的新磁盘 /dev/sdd

  1. # pvs -o+pv_used
  2. PV VG Fmt Attr PSize PFree Used
  3. /dev/sda myvg lvm2 a- 75.00G 14.00G 61.00G
  4. /dev/sdb myvg lvm2 a- 50.00G 45.00G 5.00G
  5. /dev/sdc myvg lvm2 a- 17.15G 12.15G 5.00G
  6. /dev/sdd myvg lvm2 a- 60.00G 60.00G 0

使用 pvmove 命令将数据从 /dev/sdc 移动到 /dev/sdd

  1. # pvmove /dev/sdc /dev/sdd
  2. /dev/sdc: Moved: 10.0%
  3. /dev/sdc: Moved: 79.7%
  4. /dev/sdc: Moved: 100.0%

数据移动到新磁盘后。再次使用 pvs 命令检查物理卷是否空闲。

  1. # pvs -o+pv_used
  2. PV VG Fmt Attr PSize PFree Used
  3. /dev/sda myvg lvm2 a- 75.00G 14.00G 61.00G
  4. /dev/sdb myvg lvm2 a- 50.00G 45.00G 5.00G
  5. /dev/sdc myvg lvm2 a- 17.15G 17.15G 0
  6. /dev/sdd myvg lvm2 a- 60.00G 47.85G 12.15G

如果空闲,使用 vgreduce 命令从卷组中删除物理卷 /dev/sdc

  1. # vgreduce myvg /dev/sdc
  2. Removed "/dev/sdc" from volume group "vg01"

最后,运行 pvremove 命令从 LVM 配置中删除磁盘。现在,磁盘已经完全从 LVM 中移除,可以用于其他用途。

  1. # pvremove /dev/sdc
  2. Labels on physical volume "/dev/sdc" successfully wiped.

via: https://www.2daygeek.com/linux-remove-delete-physical-volume-pv-from-volume-group-vg-in-lvm/

作者:Magesh Maruthamuthu 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

转自 https://linux.cn/article-12750-1.html

分享到:更多 ()