news 2025/12/29 10:07:21

为什么我给虚拟机分了 32G 硬盘,Ubuntu 却只识别 16G?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
为什么我给虚拟机分了 32G 硬盘,Ubuntu 却只识别 16G?

最近发现 Ubuntu 服务器莫名其妙卡死

登上去看了下原来是硬盘满了

但是使用 df -h 查看后很奇怪,我明明在 PVE 里分配了32G空间,但在 Ubuntu 里查看只有 16G

$ df -h

/dev/mapper/ubuntu--vg-ubuntu--lv 15G 14G 0 100% /

???明明分的是 32G,怎么只有 15G?这不是凭空消失了一半空间吗?

我一开始还以为 PVE 的磁盘配置出错了,后来才发现——真不是它的锅。

非常的奇怪

经过研究之后,原因是PVE分配的虚拟磁盘用了LVM

整个情况涉及 虚拟化磁盘、分区、LVM 逻辑卷和文件系统 这几层关系

真相#

原来,Ubuntu 安装时默认启用了 LVM(逻辑卷管理器)。

LVM 的逻辑是:先把整块磁盘做成一个“卷组”(VG),然后从里面再划分出若干个“逻辑卷”(LV)来挂载使用。

问题就出在这里——安装程序默认只给根目录分了大概一半空间。

所以虽然虚拟磁盘是 32G,但根目录只分到了 16G,其余的空间静静地躺在卷组里没人用。

有点像你买了 32G 的 U 盘,却只分了一个 16G 的区用,剩下的部分被遗忘在角落。

扩容#

知道原因就好办了,简单三步:

在 Ubuntu 服务器里执行

# 1. 查看卷组剩余空间

# 里面会显示 Free PE / Size,也就是卷组里未分配的空间。

vgdisplay

# 2. 扩展根逻辑卷,把所有剩余空间都用上

# 这里 +100%FREE 表示把卷组里剩余的空间全给这个逻辑卷。

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

# 3. 扩展文件系统,让它真正能用上空间

resize2fs /dev/ubuntu-vg/ubuntu-lv

这里默认文件系统是 ext4,所以用 resize2fs 命令

如果是xfs,则用 xfs_growfs /

然后再 df -h 一看,完美!

/dev/mapper/ubuntu--vg-ubuntu--lv 31G 14G 17G 45% /

小结#

这次算是被 LVM 上了一课

我之前都没咋用过 LVM

以后再看到“分了 32G 却只显示 15G”这种情况,可以试试本文的解决方式

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/23 14:52:01

电商系统中MyBatis‘小于等于‘查询实战案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个电商商品查询模块,实现按价格区间筛选商品功能。要求使用MyBatis动态SQL,能够查询价格小于等于指定值的商品。包含以下功能:1) 基础查询…

作者头像 李华
网站建设 2025/12/13 20:45:38

二叉树延伸:堆结构与 TopK 问题的深度绑定与优化

目录 前言 树 非树 树的相关术语 二叉树 二叉树的分类 计算完全二叉树和满二叉树的高度和结点数 二叉树的存储结构 顺序结构 链式结构 实现顺序结构二叉树 堆的概念与结构 堆的实现 堆的初始化 堆的值交换 获取堆顶元素、堆的数据个数、堆的判空、堆的销毁 *建…

作者头像 李华
网站建设 2025/12/27 11:48:33

企业IT实战:安全获取微软系统镜像的3种方法

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个企业级微软系统下载管理器,支持批量获取Windows各版本直链,自动验证数字签名,生成下载报告。包含断点续传功能和企业内网分发方案。点击…

作者头像 李华
网站建设 2025/12/16 3:02:23

比手动快10倍!用mv命令组合提升文件操作效率

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个效率对比工具,左侧展示传统GUI文件操作步骤,右侧展示等效的mv命令组合。包含以下对比场景:1) 分散文件收集整理 2) 按扩展名分类 3) 批量…

作者头像 李华
网站建设 2025/12/13 20:45:08

21、Puppet 环境配置与节点管理全解析

Puppet 环境配置与节点管理全解析 1. 用户数据处理与 SSH 配置 在进行系统配置时,我们首先会将所有用户数据通过 lookup() 函数提取到一个名为 $users 的哈希中。之后遍历这个哈希,为每个用户声明一个 accounts::user 资源,其属性从哈希数据中加载。需要注意的是,在…

作者头像 李华
网站建设 2025/12/13 20:45:01

Docker仓库管理效率提升的5个技巧

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 设计一个自动化脚本,能够定期清理无用的Docker镜像,优化仓库存储空间。支持按时间、标签和大小筛选镜像,提供清理报告。使用Shell脚本和Python实…

作者头像 李华