500G磁盘空间去哪里了
2026/7/2 11:23:08 网站建设 项目流程

1、问题发现 500G磁盘空间去哪里了

2、问题分析:

2.1 问题验证;

验证命令:

parted /dev/vda print free

现状确认

根据parted输出,你的磁盘情况已经完全明确:

  1. 磁盘总容量:537GB(对应标称 500GB 磁盘,属于十进制与二进制计算的正常差值)
  2. 已分配空间:共约 129GB
    • /dev/vda1:1GB,主分区,/boot启动分区
    • /dev/vda2:128GB,主分区,LVM 物理卷
  1. 未分配空闲空间408GB,位于磁盘尾部,完全未创建分区、未被系统使用
  2. 分区表类型msdos(MBR 格式),当前仅 2 个主分区,可直接新建第 3 个主分区

3、 完整扩容根分区操作步骤

3.1 磁盘查看

结合fdisk -l输出,磁盘结构已完全明确:

  1. 磁盘总容量/dev/vda总计 500 GiB
  2. 已分配分区
    • /dev/vda1:1 GiB,普通 Linux 分区,为/boot启动分区
    • /dev/vda2:119 GiB,类型8e(Linux LVM),是当前系统 LVM 的物理卷,承载根分区和交换分区
  1. 未分配空间:约 380 GiB,位于磁盘尾部,未创建任何分区,因此系统无法识别使用
  2. 分区表类型dos(MBR 格式),当前仅 2 个主分区,可直接创建第 3 个主分区,无需扩展分区

3.2 步骤1:新建 LVM 分区

fdisk /dev/vda # 进入 /dev/vda 磁盘的分区编辑交互界面

进入交互界面后,按以下顺序输入指令:

n # 指令:新建一个分区

p # 选择分区类型:主分区(primary),MBR分区表支持最多4个主分区

3 # 分区编号:默认3即可(直接回车也会默认取3),对应最终分区名 /dev/vda3

# 起始扇区:直接回车,系统会自动从磁盘空闲空间的起点开始分配

# 结束扇区:直接回车,系统会自动占用全部剩余空闲空间

t # 指令:修改分区的类型ID

3 # 选择目标分区:刚创建的第3个分区 8e

# 将分区类型设置为 Linux LVM,只有LVM类型的分区才能加入逻辑卷

p # 【可选,强烈建议执行】打印当前分区表,核对新分区的大小、类型是否正确 w # 指令:保存分区表修改并退出 fdisk 工具

你现在处于 MBR(dos)分区表的 fdisk 交互中,p主分区和e扩展分区是 MBR 架构下的特有概念,核心区别在于能否直接使用分区数量限制

为什么不建议选 e

  • 你的需求只是新增 1 个分区用来扩容 LVM,完全用不到多分区,主分区一步就能完成。
  • 如果坚持用扩展分区,后续你还必须在扩展分区里再创建 1 个逻辑分区(如/dev/vda5),才能继续做 pvcreate 扩容,平白多了一层嵌套,没有任何实际价值。

只有当你需要把一块磁盘分成5 个及以上独立分区的时候,才需要用到扩展分区。例如:

  • 老 Windows 机器要分 C、D、E、F、G 多个盘符
  • 服务器需要单独拆分 /home、/var、/data、/opt 等超过 4 个独立挂载点

你的场景只需要 1 个分区给 LVM,用主分区是最简洁、最标准的做法。

p # 【可选,强烈建议执行】打印当前分区表,核对新分区的大小、类型是否正确

w # 指令:保存分区表修改并退出 fdisk 工具

3.3 步骤 2:刷新内核分区表,让系统识别新分区

# 让内核重新读取 /dev/vda 的分区表,识别刚创建的 /dev/vda3

# 查看系统块设备列表 验证本步是否成功 lsblk

输出中如果能看到vda下新增了vda3分区,说明分区创建并识别成功,继续下一步。

3.4 步骤 3:将新分区初始化为 LVM 物理卷(PV)

LVM 体系中,磁盘分区必须先初始化为物理卷(PV),才能加入容量池。

# 在 /dev/vda3 分区上初始化 LVM 物理卷元数据 pvcreate /dev/vda3

验证本步是否成功 pvs

输出中出现/dev/vda3条目,且 VG 列为空(还未加入卷组),即为正常。

3.5 步骤 4:将新物理卷加入现有卷组(VG),扩容容量池

卷组(VG)是 LVM 的容量池,把新 PV 加进去后,池子里就多了可用空间。

# 将 /dev/vda3 物理卷加入名为 openeuler 的卷组 vgextend openeuler /dev/vda3

验证本步是否成功 # 列出系统中所有卷组信息 vgs

输出中openeuler卷组的VSize(总容量)会变大,VFree(空闲容量)会显示约 400G,即为扩容成功。

3.6 步骤 5:扩展根目录逻辑卷(LV),分配全部空闲空间

卷组有了空闲空间后,需要把空间分配给根分区对应的逻辑卷。

# 将卷组中 100% 的空闲空间,全部追加给根逻辑卷 openeuler-root

# -l +100%FREE:参数含义为「追加所有剩余空闲空间」

lvextend -l +100%FREE /dev/mapper/openeuler-root

验证本步是否成功 # 列出所有逻辑卷信息 lvs

输出中root逻辑卷的LSize(容量)已变大,说明逻辑卷扩容完成。

注意:此时df命令看到的容量还不会变,因为文件系统还没识别新空间。

3.7 步骤 6:扩容 ext4 文件系统,让系统识别新增空间

逻辑卷只是块设备变大了,上面的文件系统还需要单独扩容才能使用新空间。

# 在线扩容 ext4 文件系统,无需卸载分区,运行中的业务无感知

resize2fs /dev/mapper/openeuler-root

原理说明:ext4 文件系统原生支持内核态在线扩容,扩容过程中分区可以正常读写,仅会有极轻微的 IO 延迟,业务完全无感知。

3.8 步骤 7:最终验证扩容结果

# 以人类可读格式 + 显示文件系统类型,查看所有挂载点的容量

4、 关于MBR(dos)分区表

先讲大前提:MBR 的天生限制

把整块硬盘想象成一个大仓库,分区表就是仓库门口的房间登记本。 MBR 分区表的登记本天生只有 4 页,最多只能登记 4 个独立房间 —— 这就是 “最多 4 个主分区” 的来源。

1. 主分区(Primary,选项 p)

  • 就是直接登记在登记本上的独立房间,可以直接格式化、存数据,也可以作为系统启动分区。
  • 数量限制:MBR 磁盘最多 4 个主分区。
  • 你的系统里,vda1(/boot)和vda2(LVM)就是两个主分区,直接创建、直接使用。

2. 扩展分区(Extended,选项 e)

  • 它本质是一个特殊的 “空套间”,同样占用 1 个主分区名额(占登记本 1 页),但它本身不能格式化、不能存数据
  • 它唯一的作用:在套间内部再隔出多个小房间,这些小房间叫逻辑分区(编号固定从 5 开始,比如vda5vda6)。

存在的意义:突破 “MBR 最多 4 个分区” 的数量限制

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询