CentOS 下使用 LVM 扩展根分区空间的完整流程

在服务器运维中,会遇到磁盘空间不足的问题。如果系统使用了 LVM(Logical Volume Manager) 来管理磁盘,就可以很方便地对逻辑卷进行扩容,而不需要重装系统。


1. 查看磁盘使用情况

首先,使用 lsblk 查看磁盘分区布局:

bash 复制代码
lsblk

输出示例:

bash 复制代码
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda             252:0    0  400G  0 disk 
├─vda1          252:1    0    1G  0 part /boot
└─vda2          252:2    0  249G  0 part 
  ├─centos-root 253:0    0  197G  0 lvm  /
  ├─centos-swap 253:1    0   32G  0 lvm  
  └─centos-home 253:2    0   20G  0 lvm  /home

可以看到:

  • 磁盘总大小是 400G

  • 已经分区使用了 250G(vda1 + vda2);

  • 还剩下大约 150G 空闲未分配空间

再确认卷组信息:

bash 复制代码
vgdisplay

输出关键部分:

bash 复制代码
VG Name               centos
VG Size               <249.00 GiB
Alloc PE / Size       63743 / <249.00 GiB
Free  PE / Size       0 / 0

说明卷组 centos 当前已经用满,没有空余 PE。


2. 新建分区

使用 fdisk/dev/vda 上创建一个新分区:

bash 复制代码
fdisk /dev/vda

在交互界面依次输入:

bash 复制代码
n   # 新建分区
p   # 主分区
3   # 分区号(已有 vda1,vda2,这里用 vda3)
回车 # 默认起始扇区
回车 # 默认结束扇区,使用剩余所有空间
t   # 修改分区类型
3   # 选择 vda3
8e  # 设置为 Linux LVM
w   # 保存退出

让内核重新加载分区表:

bash 复制代码
partprobe

这时可以看到新分区 /dev/vda3


3. 创建物理卷并加入卷组

创建物理卷(PV):

bash 复制代码
pvcreate /dev/vda3

扩展卷组 centos

bash 复制代码
vgextend centos /dev/vda3

验证:

bash 复制代码
vgdisplay centos

此时应该能看到 Free PE / Size 大约为 150G。


4. 扩展逻辑卷

查看逻辑卷路径:

bash 复制代码
lvdisplay

假设根分区逻辑卷是 /dev/centos/root,执行:

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

这条命令会将卷组中所有空余空间都分配给根分区。


5. 扩展文件系统

如果根分区文件系统是 XFS(CentOS 7/8 默认):

bash 复制代码
xfs_growfs /

如果是 ext4 文件系统:

bash 复制代码
resize2fs /dev/centos/root

6. 验证扩容结果

bash 复制代码
df -h

输出中可以看到 / 的容量已经增加,大约多了 150G。


总结

通过以上步骤,我们顺利地将磁盘剩余的 150G 空间扩展到 LVM 根分区,整个过程无需重启系统。

LVM 的优势就在于此:能够在业务不中断的情况下灵活扩展存储空间。

相关推荐
晨曦夜月13 分钟前
头文件与目标文件的关系
linux·开发语言·c++
Xyz996_13 分钟前
Ansible进行Nginx编译安装的详细步骤
运维·ansible
白仑色15 分钟前
java中的anyMatch和allMatch方法
java·linux·windows·anymatch·allmatch
云和数据.ChenGuang18 分钟前
自动化运维工程师之ansible启动rpcbind和nfs服务
运维·服务器·运维技术·数据库运维工程师·运维教程
yimengsama19 分钟前
VMWare虚拟机如何连接U盘
linux·运维·服务器·网络·windows·经验分享·远程工作
松涛和鸣23 分钟前
32、Linux线程编程
linux·运维·服务器·c语言·开发语言·windows
云和数据.ChenGuang25 分钟前
AB压力测试运维工程师技术教程
运维·压力测试·运维工程师
꧁坚持很酷꧂26 分钟前
把虚拟机Ubuntu中的USB设备名称改为固定名称
linux·数据库·ubuntu
少年白char38 分钟前
【AI漫剧】开源自动化AI漫剧生成工具 - 从文字到影像:AI故事视频创作的全新可能
运维·人工智能·自动化
容智信息41 分钟前
容智Report Agent智能体驱动财务自动化,从核算迈向价值创造
大数据·运维·人工智能·自然语言处理·自动化·政务