解决 Ubuntu 安装后磁盘只识别 100G 的“坑”:LVM 机制解析与一键在线扩容

By | 2026年5月20日

前言

很多朋友在安装 Ubuntu 系统(尤其是 Ubuntu Server 24.04/22.04)时,明明给虚拟机或物理机分配了 1TB(甚至更大)的硬盘,但进入系统后运行 df -hlsblk 一看,却发现根目录(/)竟然只有可怜的 100GB 空间!

剩下的 900 多 GB 空间去哪了?这其实是系统的默认安全机制。今天这篇文章就来彻底聊聊这背后的原因,并教大家如何用两条命令安全地把空间“薅”回来。

为什么当时只有 100G?(背后的 LVM 机制)

在安装 Ubuntu 时,系统默认开启了 LVM(Logical Volume Manager,逻辑卷管理) 技术。

LVM 就像是磁盘和系统之间的一个“空间魔术师”。它把物理硬盘虚拟化成一个“蓄水池”。在安装时,Ubuntu 处于安全和灵活性的考虑,采用了以下策略:

  1. 按需分配(留有余地):它默认只从“蓄水池”里舀出 100GB 的水放进根目录逻辑卷(ubuntu--vg-ubuntu--lv)里。
  2. 方便后续扩展与快照:蓄水池里剩下的 900 多 GB 并没有消失,而是处于 “未分配(Free)” 状态。在企业级场景中,这些剩下的空间可以随时分配给不同的业务。例如:突然需要加一个数据库,就可以单独分出 300G 给数据库,而不需要动根目录。
  3. 支持动态调整:正因为有了 LVM,我们才可以在不关机、不重启、不破坏现有数据的情况下,“在线”把剩下的 900多G 空间直接加回根目录。

Ubuntu 默认只给 100G 并不是 Bug,而是 LVM 机制为了系统弹性故意留白的“高级操作”。

实战演练:从 100G 一键扩容到 1022G

步骤一:查看当前磁盘状态

在终端中输入 lsblk,你会看到类似下面的结构:

可以看到,物理分区 sda3 有 1022G,但是底下的逻辑卷卷只有 100G。

步骤二:执行在线扩容(无需重启)

请在 root 权限下(或者命令前加 sudo)依次执行以下两条命令

# 1. 扩容逻辑卷(LV)
# 这行命令的意思是:将卷组中 100% 剩余的空闲空间(+100%FREE) 全部分配给根目录所在的逻辑卷。
lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv

# 2. 扩容底层文件系统(Ext4)
# 容器变大了,我们还需要通知 Linux 的文件系统去占满这个新空间。
# Ext4 是 Ubuntu 24.04 系统默认使用的文件系统格式。
resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv

步骤三:验证成果

扩容完成后,再次运行 lsblk 检查:

此时可以看到,ubuntu--vg-ubuntu--lv 的大小已经完美变成了 1022G!再配合 df -h / 查看,根目录的可用空间终于实至名归!

常用命令

查看文件系统格式

命令:df -T /

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注