本文主要记录在虚拟机扩容硬盘后系统中Ubuntu系统中不显示不生效问题,假设现在已经在虚拟机中扩容了 250G 硬盘,并且已经重启。

1721370215

查看硬盘容量

命令

sudo lsblk

回显信息

NAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                         8:0    0   250G  0 disk 
├─sda1                      8:1    0     1G  0 part /boot/efi
├─sda2                      8:2    0     2G  0 part /boot
└─sda3                      8:3    0 196.9G  0 part 
  └─ubuntu--vg-ubuntu--lv 252:0    0 196.9G  0 lvm  /
sr0                        11:0    1  1024M  0 rom

 可以看到 sda 已经是 250G 了 但是实际系统中只有 196.9G 新增的 50G 并没有应用在系统中。

使用 parted 扩容sda3分区

输入使用 parted 工具

sudo parted /dev/sda

回显信息

GNU Parted 3.6
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

我们接着输入设置大小单位命令然后回车

unit s

接着输入查看磁盘信息

p free

可能会提示一下信息

Warning: Not all of the space available to /dev/sda appears to be used, you can fix the
GPT to use all of the space (an extra 104857600 blocks) or continue with the current
setting? 
Fix/Ignore?

我们直接输入

fix

回显信息

Model: VMware Virtual disk (scsi)
Disk /dev/sda: 524288000s
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start       End         Size        File system  Name  Flags
        34s         2047s       2014s       Free Space
 1      2048s       2203647s    2201600s    fat32              boot, esp
 2      2203648s    6397951s    4194304s    ext4
 3      6397952s    419430366s  413032415s
        419430367s  524287966s  104857600s  Free Space
        

然后我们输入命令对第三个盘进行扩容

resizepart 3

回显信息

End?  [419430366s]?

然后我们输入要扩容的容量

End?  [419430366s]? 524287966s

最后输入结束命令然后回车

q

刷新磁盘3的容量

resize2fs /dev/sda3
sudo lsblk

可以看到sda3已经成功扩容 246.9G

NAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                         8:0    0   250G  0 disk 
├─sda1                      8:1    0     1G  0 part /boot/efi
├─sda2                      8:2    0     2G  0 part /boot
└─sda3                      8:3    0 246.9G  0 part 
  └─ubuntu--vg-ubuntu--lv 252:0    0 196.9G  0 lvm  /
sr0                        11:0    1  1024M  0 rom

 这个时候实际上还是没有分到系统里面只是分到磁盘里面了通过下面的操作我们将磁盘容量分到系统里面

系统逻辑卷扩容

  • 扩容sda3

    sudo pvresize /dev/sda3

    回显信息

    Physical volume "/dev/sda3" changed
    1 physical volume(s) resized or updated / 0 physical volume(s) not resized
  • 分配剩余全部空间

    sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv

    回显信息

    Size of logical volume ubuntu-vg/ubuntu-lv changed from <196.95 GiB (50418 extents) to <246.95 GiB (63218 extents).
    Logical volume ubuntu-vg/ubuntu-lv successfully resized.

    -调整文件系统大小

    resize2fs /dev/ubuntu-vg/ubuntu-lv

    回显信息

    resize2fs 1.47.0 (5-Feb-2023)
    Filesystem at /dev/ubuntu-vg/ubuntu-lv is mounted on /; on-line resizing required
    old_desc_blocks = 25, new_desc_blocks = 31
    The filesystem on /dev/ubuntu-vg/ubuntu-lv is now 64735232 (4k) blocks long.
  • 再次查看硬盘容量

    sudo lsblk

    回显信息

    NAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
    sda                         8:0    0   250G  0 disk 
    ├─sda1                      8:1    0     1G  0 part /boot/efi
    ├─sda2                      8:2    0     2G  0 part /boot
    └─sda3                      8:3    0 246.9G  0 part 
    └─ubuntu--vg-ubuntu--lv 252:0    0 246.9G  0 lvm  /
    sr0                        11:0    1  1024M  0 rom

可以看到 246.9G 已经扩容完成