将 /dev/vdb1 的空间全部合并到 /dev/mapper/centos-root(即扩展 CentOS 的根分区)

要将 /dev/vdb1 的 1TB 空间合并到 /dev/mapper/centos-root(即扩展 CentOS 的根分区),可以采用 LVM(逻辑卷管理) 的方式。以下是详细步骤:


步骤 1:检查当前磁盘和 LVM 情况

1.1 确认 /dev/vdb1 是否已格式化并挂载

bash 复制代码
lsblk                 # 查看磁盘和分区情况
df -h                 # 查看挂载情况

如果 /dev/vdb1 已经挂载,需要先卸载:

bash 复制代码
umount /dev/vdb1

1.2 检查当前 LVM 结构

bash 复制代码
pvdisplay             # 查看物理卷(PV)
vgdisplay             # 查看卷组(VG)
lvdisplay             # 查看逻辑卷(LV)

记录 VG Name(如 centos),后面会用到。


步骤 2:将 /dev/vdb1 加入 LVM

2.1 创建物理卷(PV)

bash 复制代码
pvcreate /dev/vdb1

检查是否成功:

bash 复制代码
pvdisplay

2.2 扩展卷组(VG)

假设你的 VG 名称是 centos(根据 vgdisplay 输出调整):

bash 复制代码
vgextend centos /dev/vdb1

检查 VG 是否扩展:

bash 复制代码
vgdisplay

步骤 3:扩展逻辑卷(LV)

3.1 查看 /dev/mapper/centos-root 对应的 LV

bash 复制代码
lvdisplay

通常,/dev/mapper/centos-root 对应的 LV 路径是 /dev/centos/root

3.2 扩展 LV

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

-l +100%FREE 表示使用所有剩余空间)

3.3 调整文件系统大小

bash 复制代码
sudo lsblk -f
  • 输出示例

    复制代码
    NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
    vdb1   ext4         a1b2c3d4-...                        /mnt/data
    • FSTYPE 列中查看文件系统类型(ext4 即为目标格式)。
如果是 xfs 文件系统
bash 复制代码
xfs_growfs /dev/mapper/centos-root
如果是 ext4 文件系统
bash 复制代码
resize2fs /dev/mapper/centos-root

步骤 4:验证

bash 复制代码
df -h                 # 检查根分区是否扩容成功
lsblk                 # 确认 LVM 结构

可能出现的问题

1. /dev/vdb1 已经有文件系统

如果 /dev/vdb1 已经有数据,需要先备份并清除文件系统签名:

bash 复制代码
wipefs -a /dev/vdb1   # 清除文件系统签名

2. VG 没有足够空间

如果 vgdisplay 显示 Free PE / Size 为 0,可能是 /dev/vdb1 未正确加入 VG,重新检查 vgextend

3. 文件系统无法调整

  • 确保文件系统支持在线调整(xfsext4 支持)。
  • 如果无法调整,可以尝试在救援模式下操作。

总结

步骤 命令
检查磁盘 lsblk, df -h
创建 PV pvcreate /dev/vdb1
扩展 VG vgextend centos /dev/vdb1
扩展 LV lvextend -l +100%FREE /dev/centos/root
调整文件系统 xfs_growfs /resize2fs /dev/mapper/centos-root
验证 df -h, lsblk

完成后,/dev/mapper/centos-root 应该已经成功扩容。

相关推荐
南棱笑笑生24 分钟前
20250614让NanoPi NEO core开发板在Ubuntu core16.04系统下使用耳机播音测试
linux·运维·ubuntu
liang899925 分钟前
负载均衡器:Ribbon和LoadBalance
运维·ribbon·负载均衡
陶然同学38 分钟前
从零开始:VMware上的Linux与Java开发环境配置
linux·运维·服务器·vmware·虚拟机
盛满暮色 风止何安43 分钟前
BGP基础
运维·服务器·网络·网络协议·tcp/ip·网络安全·智能路由器
阿拉丁的梦44 分钟前
ue5的blender4.1groom毛发插件v012安装和使用方法(排除了冲突错误)
linux·运维·服务器
GeminiJM1 小时前
Docker监控服务部署
运维·docker·容器
morliz子轩1 小时前
在Docker上部署datalust/Seq日志服务系统
运维·docker·容器
exe4521 小时前
在docker中部署dify
运维·docker·容器
riverz12271 小时前
ARM 和 x86_64是什么关系
linux
qq_243050796 小时前
aflplusplus:开源的模糊测试工具!全参数详细教程!Kali Linux教程!(一)
linux·web安全·网络安全·黑客·渗透测试·模糊测试·kali linux