将 /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 应该已经成功扩容。

相关推荐
小二李1 小时前
第11章 nestjs服务端开发:登录鉴权
运维·服务器
i建模2 小时前
如何在Arch Linux中重设忘记的root密码
linux·运维·服务器
chatexcel2 小时前
元空AI+Clawdbot:7×24 AI办公智能体新形态详解(长期上下文/自动化任务/工具粘合)
运维·人工智能·自动化
kida_yuan3 小时前
【Linux】运维实战笔记 — 我常用的方法与命令
linux·运维·笔记
@syh.3 小时前
【linux】进程控制
linux
何中应5 小时前
vmware的linux虚拟机如何设置以命令行方式启动
linux·运维·服务器
江畔何人初5 小时前
kubernet与docker的关系
linux·运维·云原生
bubuly5 小时前
软件开发全流程注意事项:从需求到运维的全方位指南
大数据·运维·数据库
百炼成神 LV@菜哥5 小时前
Kylin Linux V10 aarch64 安装启动 TigerVNC-Server
linux·服务器·kylin
佑白雪乐6 小时前
<Linux基础11集>电流+二极管+晶体管+存储器
linux