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下的空间不足)

相关推荐
带电的小王4 分钟前
sherpa-ncnn:Linux(x86/ARM32/ARM64)构建sherpa-ncnn --语音转文本大模型
linux·语音识别·实时音视频·sherpa-ncnn
沧浪之水!19 分钟前
【Linux网络】:套接字之UDP
linux·网络·udp
BranH21 分钟前
Linux系统中命令设定临时IP
linux·运维·服务器
极小狐32 分钟前
极狐GitLab 项目功能和权限解读
运维·git·安全·gitlab·极狐gitlab
宁酱醇33 分钟前
GitLab_密钥生成(SSH-key)
运维·ssh·gitlab
秋风起,再归来~39 分钟前
【Linux庖丁解牛】—进程优先级!
linux·运维·服务器
cosX+sinY1 小时前
ubuntu 20.04 编译运行lio-sam,并保存为pcd
linux·ubuntu·机器人
Lalolander1 小时前
设备制造行业如何避免项目管理混乱?
运维·制造·工程项目管理·四算一控·epc·环保设备工程·设备制造
LucianaiB1 小时前
【金仓数据库征文】_AI 赋能数据库运维:金仓KES的智能化未来
运维·数据库·人工智能·金仓数据库 2025 征文·数据库平替用金仓
prinrf('千寻)2 小时前
nacos设置权重进行负载均衡不生效
运维·负载均衡