Skip to main content

在Ubuntu下扩充LVM的存储空间

分类:  HowTo 标签:  #Ubuntu Server #LVM 发布于: 2025-03-23 19:02:44

最近尝试编译Open Harmony,在我的服务器上新起了一台Ubuntu 20.04 LTS版本的虚拟机(注意Open Harmony的编译只支持Ubuntu 18.04和 Ubuntu 20.04), 分配硬盘的时候分配了大约80GB的硬盘,默认安装启用了LVM(Logic Volume Manager)。 安装好之后,下载了Open Harmoney的源码,解开后才发现,硬盘空间不够了,必须得添加一块新的硬盘,并扩展LVM, 这里记录一下扩充的基本方法。

通过hyper-v Manager添加新的硬盘之后,重新启动虚拟机,登录到Ubuntu中,使用如下的命令先查看一下基本的文件系统:

sudo fdisk -l

会显示目前系统中所有的硬盘资料,例如:

Disk /dev/sdb: 150 GiB, 161061273600 bytes, 314572800 sectors
Disk model: Virtual Disk
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/sda: 127 GiB, 136365211648 bytes, 266338304 sectors
Disk model: Virtual Disk
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: B9E7C416-E665-43D4-BB2B-A374F38C28F5

Device       Start       End   Sectors  Size Type
/dev/sda1     2048   2203647   2201600  1.1G EFI System
/dev/sda2  2203648   6397951   4194304    2G Linux filesystem
/dev/sda3  6397952 266336255 259938304  124G Linux filesystem

我们计划将整个硬盘都添加到逻辑卷中,因此先直接在该硬盘上创建一个物理卷

先通过sudo切换到管理员:

sudo -s
pvcreate /dev/sdb

创建好之后,然后查看一下当前的卷:

vgs

root@myubuntu:/home/ghw# vgs
  VG        #PV #LV #SN Attr   VSize   VFree
  ubuntu-vg   2   1   0 wz--n- 273.94g    0

可以看到卷分组的名字叫:ubuntu-vg

开始向这个卷添加创建物理卷的硬盘:

vgextend ubuntu-vg /dev/sdb

然后扩容ubuntu-vg这个逻辑组:

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

最后对分区进行扩容:

resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

注意:
这里我的文件系统是ext4,所以用命令resize2fs来扩充文件系统,如果是其他的文件系统,例如xfs, 那就需要使用该文件系统专用的命令。

这个时候再查看文件系统的大小:

df -h

即可观察到已经扩容完毕。