扩展 LVM 大小

扩展 LVM 大小

我最近将我的 ubuntu 从 250GB SSD 克隆到我的新 2TB SSD。它自动创建了一个 248GB 的​​ LVM,其中包含我的根文件系统。

我想将 LVM 大小调整为 2TB。

nvme0n1             259:1    0   1.8T  0 disk 
├─nvme0n1p1         259:7    0   512M  0 part /boot/efi
└─nvme0n1p2         259:8    0   1.8T  0 part 
  ├─vgubuntu-root   253:0    0 231.4G  0 lvm  /
  └─vgubuntu-swap_1 253:1    0   976M  0 lvm  [SWAP]

然而 PSize 只有 250 GB,而不是 2TBsudo pvs

PV VG Fmt 属性 PSize PFree
  /dev/nvme0n1p2 vgubuntu lvm2 a-- 232.38g 0

我看到以下输出lvdisplay

--- 逻辑卷 ---
  LV 路径 /dev/vgubuntu/root
  LV 名称根
  VG 名称 vgubuntu
  LV UUID 0wM6pq-o26o-qVBf-1x61-vFbP-Poyf-fFW3f7
  LV 写访问 读/写
  LV Creation 主机,时间 ubuntu,2021-04-24 06:13:08 +0800
  LV 状态可用
  # 打开 1
  LV 大小 <231.43 GiB
  当前 LE 59246
  段 2
  分配继承
  自动预读扇区
  - 目前设置为 256
  块设备 253:0

我尝试了以下lvextend命令,但是它的大小没有超出 248GB:

lvextend -l +100%FREE /dev/vgubuntu/root/

输出为:

New size (59246 extents) matches existing size (59246 extents).

有人可以给出建议吗?

答案1

看起来你需要的是 growpart。我不确定你已经做了哪些步骤。以下是我在类似机器上所做的:

在扩展存储之前,这是我所拥有的

root@agw:~# lsblk /dev/vda
NAME                 MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
vda                  252:0    0   20G  0 disk 
├─vda1               252:1    0    1M  0 part 
├─vda2               252:2    0  513M  0 part /boot/efi
└─vda3               252:3    0 19.5G  0 part 
  ├─vgxubuntu-root   253:0    0 18.5G  0 lvm  /
  └─vgxubuntu-swap_1 253:1    0  976M  0 lvm  [SWAP]
  
root@agw:~# vgs
  VG        #PV #LV #SN Attr   VSize  VFree
  vgxubuntu   1   2   0 wz--n- 19.49g    0  

我向底层磁盘添加了 2G。您会看到 vda 现在有 22G 的空间,而 vda3 并未自动使用所有空间。

root@agw:~# lsblk /dev/vda
NAME                 MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
vda                  252:0    0   22G  0 disk 
├─vda1               252:1    0    1M  0 part 
├─vda2               252:2    0  513M  0 part /boot/efi
└─vda3               252:3    0 19.5G  0 part 
  ├─vgxubuntu-root   253:0    0 18.5G  0 lvm  /
  └─vgxubuntu-swap_1 253:1    0  976M  0 lvm  [SWAP]
  
root@agw:~# vgs
  VG        #PV #LV #SN Attr   VSize  VFree
  vgxubuntu   1   2   0 wz--n- 19.49g    0  

扩展 vda3 后,运行 lvextend 和 resize2fs(如果您使用的是 ext4)。

root@agw:~# growpart /dev/vda 3
CHANGED: partition=3 start=1054720 old: size=40888287 end=41943007 new: size=45082591 end=46137311

root@agw:~# pvs
PV         VG        Fmt  Attr PSize  PFree
/dev/vda3  vgxubuntu lvm2 a--  21.49g 2.00g

root@agw:~# lvextend -l+100%FREE /dev/vgxubuntu/root
  Size of logical volume vgxubuntu/root changed from <18.54 GiB (4746 extents) to <20.54 GiB (5258 extents).
  Logical volume vgxubuntu/root successfully resized.
  
root@agw:~# df -hPT /
Filesystem                 Type  Size  Used Avail Use% Mounted on
/dev/mapper/vgxubuntu-root ext4   19G   11G  7.2G  59% /

root@agw:~# resize2fs /dev/mapper/vgxubuntu-root
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/mapper/vgxubuntu-root is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 3
The filesystem on /dev/mapper/vgxubuntu-root is now 5384192 (4k) blocks long.

root@agw:~# df -hPT /
Filesystem                 Type  Size  Used Avail Use% Mounted on
/dev/mapper/vgxubuntu-root ext4   21G   11G  9.1G  53% / 

答案2

您即将扩展它。我们正在寻找的名称是LV Path命令中的状态lvdisplayLV Path将名称显示为/dev/vgubuntu/root

扩展它的命令应该是:

lvextend -l +100%FREE /dev/vgubuntu/root

答案3

你需要使用pvresize

在这种情况下pvresize /dev/nvme0n1p2

然后您应该能够使用所采用的方法调整 lv 的大小。

相关内容