扩展Linux硬盘大小

结城 Linux 6 次阅读 719 字 发布于 2026-05-18 预计阅读时间: 3 分钟


使用ubuntu桌面版的时候,遇到了Linux硬盘大小问题,在这里记录一下修复方案。

我的磁盘空间分配了 150G,文件系统实际可用的空间为 120G,但只有约 59G 可用。

我的磁盘结构如下:

总磁盘 /dev/sda:120G

  • /dev/sda1:1M(通常是 BIOS boot 分区)
  • /dev/sda2​:2G(/boot 分区)
  • /dev/sda3​:118G 物理卷(PV) ,属于 LVM,需要在此空间进行扩展

这里着重说一下/dev/sda3

系统此时在这个 PV 上创建了一个 卷组(VG)ubuntu-vg

卷组中有一个 ​逻辑卷(LV) ​:ubuntu-lv​,大小 仅 59G

该 LV 挂载为根目录 /

此卷有大约 118G 的 LVM 物理空间,但只分配了 59G 给实际使用的逻辑卷,剩下 59G 未分配!

分配了 150G,但系统只看到 120G,因为我在虚拟机设置初始化之后后期进行了调整,此处暂时忽略。

我们需要解决的是 LVM 未用满可用空间,所以需要进行扩容。

Ubuntu支持在线扩展 ext4/XFS 文件系统,无需重启计算机,使用此方案扩展硬盘大小整个过程不会丢失数据,是安全的在线扩容操作。

1:确认卷组(VG)中有空闲空间

运行bash命令:

sudo vgs

会看到类似:

VG        #PV #LV #SN Attr   VSize   VFree
ubuntu-vg   1   1   0 wz--n- 118.00g 59.00g

注意,此处的 VFree 就是未分配的空间。

2:扩展逻辑卷(LV)使用所有剩余空间

我们现在需要扩展 LV 到使用卷组中所有空闲空间

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

-l +100%FREE 表示使用 VG 中所有未分配的物理 extents。

3:扩展文件系统以使用新空间

先确认文件系统类型:

df -T /

不同的Linux发行版文件系统类型不完全相同,我这里使用的是 Ubuntu。

Ubuntu 默认的文件系统是是 ext4,如果你更改了文件系统类型为 xfs ,也有对应的解决方案

如果是 ext4:
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
如果是 xfs:
sudo xfs_growfs /

需要注意的是,不同于ext4,XFS 文件系统只能扩容不能缩容,且 xfs_growfs​ 需要挂载点路径(如 /),而不是设备路径。

4:验证结果

df -h /

如果不出意外,即可看到根分区接近 118G 可用空间,忽略元数据空间开销,接近120G,代表空间已经完全使用。

精确扩展空间

想分配更精确的空间,而不是全部挂载使用,可以使用下列命令

比如只扩到 100G 而不是全部,可以用:

sudo lvextend -L +30G /dev/ubuntu-vg/ubuntu-lv   # 增加 30G

或使用下列命令

sudo lvextend -L 100G /dev/ubuntu-vg/ubuntu-lv   # 总共 100G

执行完成后,执行最终确认

resize2fs
给时光以生命,给岁月以文明
最后更新于 2026-06-15