VmWare下的linux虚拟机磁盘空间扩展

我用vmware开启了一个虚拟机,虚拟机操作系统是centos7。今天发现磁盘空间不够了,导数据到里面的mysql,提示没有空间,之后mysql也连不上了。这个mysql部署在docker里,结果停止都停止不了,强制停止也不行。无奈之下,重启了docker,万幸还能访问。使用

bash 复制代码
df -Th

命令查看,发现linux的磁盘空间已经使用了100%。任凭我到处删东西,东拼西凑,也只剩下700M。把牙一咬,决心不辞劳苦,不避风险,给它扩展空间。

给linux虚拟机扩展空间,步骤有二:

1、vmware下给虚拟机分配多一点磁盘

2、在linux虚拟机中启用这些新的磁盘

一、vmware下为虚拟机扩展磁盘

将虚拟机关机,然后在vmware中右击虚拟机图标,选"设置"-"硬盘"-"实用工具",扩展虚拟机的磁盘空间。比如我之前是48G,现在扩展到100G。

二、linux虚拟机中扩展磁盘

1、查看当前磁盘情况

bash 复制代码
[admin@localhost ~]$ sudo fdisk -l

磁盘 /dev/sda:107.4 GB, 107374182400 字节,209715200 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000de48e

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM
/dev/sda3        41943040   104857599    31457280   83  Linux

磁盘 /dev/mapper/centos-root:49.4 GB, 49387929600 字节,96460800 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

从 fdisk -l 的输出可以看出,虚拟机的磁盘大小确实已经扩展到 107.4GB,但新增加的空间尚未被分配到任何分区。/dev/sda3 结束于扇区 104857599,而总共有 209715200 个扇区,这意味着还有大约 50GB 的空间未分配。

2、将新加入的磁盘空间创建为新分区

我需要在这未分配的空间上创建一个新分区,然后将其加入到 LVM 以扩展现有的逻辑卷。

1)使用 fdisk 创建新分区

(1)进入 fdisk:

bash 复制代码
sudo fdisk /dev/sda

(2)输入 n 来创建新分区

(3)选择主分区(p),然后选择分区号(系统自动填上 4,因为之前已经有了3个分区)。

(4)一直按回车,使用默认的起始扇区和终止扇区,这样可以使用所有剩余的空间。

(5)输入 w 保存更改并退出。

2) 刷新内核分区表

bash 复制代码
sudo partprobe

或者重新启动虚拟机

3) 将新分区初始化为 LVM 物理卷

新分区应该会出现在 /dev/sda4,这时可以将其初始化为 LVM 物理卷:

bash 复制代码
sudo pvcreate /dev/sda4

4) 将新物理卷添加到卷组

将新创建的物理卷添加到现有的卷组 centos 中:

bash 复制代码
sudo vgextend centos /dev/sda4

5)扩展逻辑卷

现在,你可以将剩余的空间分配给逻辑卷 centos-root:

bash 复制代码
sudo lvextend -r -l +100%FREE /dev/centos/root

-r 选项会自动调整文件系统大小,+100%FREE 会将所有可用空间分配到逻辑卷中。

6)验证扩展

完成后,使用以下命令确认根分区是否已经扩展,检查 /dev/mapper/centos-root 是否已经扩展并包含新增的空间。结果显示大功告成。

bash 复制代码
df -h

参考文章:
虚拟机扩容(/dev/mapper/centos-root下的空间不足)

相关推荐
云飞云共享云桌面21 小时前
传统工作站 vs 云飞云共享云桌面:制造业设计云桌面选型深度对比
运维·服务器·前端·网络·3d·架构·制造
暮云星影1 天前
全志linux开发屏幕适配(一)屏幕参数设置说明
linux·arm开发
Maynor9961 天前
我用 Codex 给自己的网站上线了一个智能体客服:从 Dify 到服务器部署,全程实战复盘
运维·服务器
java_cj1 天前
深入kubectl create源码:从YAML到Pod的完整链路拆解
运维·云原生·容器·kubernetes
swordbob1 天前
NIO 的 Channel 里有多个 BIO 吗?
linux·网络·nio
深圳恒讯1 天前
越南服务器BGP多线和单线有什么区别?
运维·服务器
Fcy6481 天前
Linux下 信号的保存与捕捉
linux·中断·信号的捕捉·信号的保存
志栋智能1 天前
超自动化运维如何提升安全合规水平?
运维·安全·自动化
A_humble_scholar1 天前
Linux(九) 进程管理完全指南:从入门到实战
linux·运维·chrome
江华森1 天前
Linux 操作命令完全指南
linux·运维