当所有 4 个主分区都已被占用时,扩展 LVM

当所有 4 个主分区都已被占用时,扩展 LVM

我被要求增加 LVM 管理的 CentOS(虚拟)服务器的磁盘大小。当前分区表如下:

Disk /dev/vda: 429.5 GB, 429496729600 bytes, 838860800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000ba858

Device Boot Start End Blocks Id System
/dev/vda1 * 2048 1026047 512000 83 Linux
/dev/vda2 1026048 104857599 51915776 8e Linux LVM
/dev/vda3 104857600 314572799 104857600 8e Linux LVM
/dev/vda4 314572800 629145599 157286400 8e Linux LVM

总共有 4 个主分区,大约有 100GB 的可用空间。由于允许的最大主分区数限制为 4 个,因此无法添加新分区。

当使用 ext4 分区时,我想我可以使用 fdisk,删除 /dev/vda4 并以相同的起始位置但新的结束位置重新添加它。但是,LVM 不是我的强项。我可以用 LVM 做同样的事情吗?我假设还需要调用命令lvextend以及之后的resize2fs/ xfs_growfs

lvdisplay的输出:

  --- Logical volume ---
  LV Path                /dev/vg_directadmin/swap
  LV Name                swap
  VG Name                vg_directadmin
  LV UUID                qD1ib9-TAqx-gkKb-9ybC-Jg7g-653o-dDehoj
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2015-07-08 15:02:22 +0200
  LV Status              available
  # open                 2
  LV Size                1.00 GiB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1

  --- Logical volume ---
  LV Path                /dev/vg_directadmin/lv_tmp
  LV Name                lv_tmp
  VG Name                vg_directadmin
  LV UUID                ezqLis-CBQt-IiZK-7BjX-gvf5-b476-xxlkTe
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2015-07-08 15:02:22 +0200
  LV Status              available
  # open                 1
  LV Size                1.00 GiB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2

  --- Logical volume ---
  LV Path                /dev/vg_directadmin/lv_root
  LV Name                lv_root
  VG Name                vg_directadmin
  LV UUID                FfvRs5-bQav-72te-GxcF-wlan-hWoT-Ir3I36
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2015-07-08 15:02:23 +0200
  LV Status              available
  # open                 1
  LV Size                297.50 GiB
  Current LE             76160
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

答案1

下午我研究了 LVM,找到了一个解决方案。所以,我的初始解决方案被证明是一个可行的解决方案。以下是我所做的。

  1. 用来fdisk扩大/dev/vda4。为此,删除分区 4,将其重新添加为主分区,并让其利用所有可用扇区。它会询问您是否删除 LVM2_member 签名,请确保回答. 将分区类型设置为 Linux LVM (8e)。 写入新的分区表。
  2. pvresize /dev/vda4
  3. lvextend -l +100%FREE /dev/vg_directadmin/lv_root
  4. 最后,您需要使用/dev/vg_directadmin/lv_rootresize2fs 调整大小(如果我没记错的话,在 CentOS 7 上是 xfs_growfs)。我还必须使用 进行磁盘检查,然后e2fsck -f /dev/vg_directadmin/lv_root进行resize2fs /dev/vg_directadmin/lv_root
  5. 最后,重新安装。

希望这对其他人有帮助。HowToForge 上的 Linux LVM 也是一个有用的教程!

相关内容