当前位置: 首页 > news >正文

centos 新加磁盘分区动态扩容

你不能直接将一个分区分配给/dev/mapper/centos-root,因为这是一个逻辑卷(属于 LVM 系统)。不过,你可以通过以下步骤将/dev/sda3添加到现有卷组或创建新的逻辑卷:

确认磁盘和分区信息

首先检查分区是否已格式化以及是否包含数据:

lsblk          # 查看新硬盘路径(假设为 /dev/sda3)
df -h          # 查看已挂载的文件系统

方案 A:将分区添加到现有 LVM 卷组(推荐)

如果你的系统使用 LVM,且卷组空间不足,可以将/dev/sda3添加到现有卷组(如centos):

**步骤 1:**创建物理卷(PV)

sudo pvcreate /dev/sda3

步骤 2:查看卷组

sudo vgs  # 确认卷组总容量
sudo pvs  # 查看物理卷列表

步骤 3:将 PV 添加到卷组(VG)

centos 为卷组名

sudo vgextend centos /dev/sda3

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

扩展centos-root逻辑卷:

sudo lvextend -L +50G /dev/mapper/centos-root   # 增加50GB
# 或扩展至最大可用空间:
sudo lvextend -l +100%FREE /dev/mapper/centos-root

参数说明

  • -l +100%FREE:将所有空闲空间分配给目标逻辑卷
  • 若只需分配部分空间(如 50GB),可使用:-L +50G

步骤 5:扩展文件系统

根据文件系统类型执行:

# 若为XFS文件系统:
sudo xfs_growfs /dev/mapper/centos-root# 若为ext4文件系统:
sudo resize2fs /dev/mapper/centos-root

最后效果:

lsblk

image-20250717下午52822892

centos-root 就是我的根目录

原理

为什么centos-root 在两个物理分区(sda2和sda3)下?

这是因为你的系统使用了逻辑卷管理(LVM)技术。在 LVM 中,逻辑卷可以跨越多个物理卷,从而实现灵活的存储管理和空间扩展

以下是具体解释:

  • LVM 的基本概念
    • 物理卷(PV):是 LVM 的基本存储单元,通常对应一个物理分区,如/dev/sda2/dev/sda3都可以被创建为物理卷。
    • 卷组(VG):由一个或多个物理卷组成,它就像一个存储池,包含了所有物理卷的存储空间。
    • 逻辑卷(LV):从卷组中划分出来的逻辑存储单元,可将其视为一个虚拟的分区,如centos - root就是一个逻辑卷,它可以被格式化并挂载到文件系统,供用户存储数据。
  • 为何出现两个分区下都有 centos - root:
    • /dev/sda2/dev/sda3这两个分区都被添加到了同一个卷组中(很可能是默认的centos卷组)。
    • centos - root逻辑卷从这个卷组中分配了空间,且其存储空间跨越了/dev/sda2/dev/sda3这两个物理分区,所以你会看到centos - root在两个分区下都有显示,这是 LVM 实现存储资源整合和灵活分配的一种方式。

这种方式的好处是便于管理员根据实际需求动态调整逻辑卷的大小,当一个逻辑卷空间不足时,可以将其他未使用的物理卷添加到卷组中,然后再将卷组中的空闲空间分配给逻辑卷,而无需像传统分区那样受到固定分区大小的限制

同一卷组(VG)中的所有物理卷(PV)的空间会被整合为一个统一的 “存储池”,而逻辑卷(LV)则从这个共享的存储池中分配空间

具体来说:

  • 卷组(VG)是 “容器”,它将多个物理卷(如/dev/sda2/dev/sda3)的空间合并成一个整体,消除了物理分区的边界。
  • 逻辑卷(LV)如centos-rootcentos-swap,都是从这个卷组的共享空间中划分出来的,它们的空间来源是整个卷组的空闲容量,而非某个特定的物理分区。
  • 多个逻辑卷可以 “共享” 卷组中的总空间,只要卷组有剩余空间,就可以动态扩展任意逻辑卷的大小(前提是文件系统支持)。

举个例子:
假设卷组centos/dev/sda2(49G)和/dev/sda3(78G)组成,总容量约为 127G。

  • centos-root分配了 122G,centos-swap分配了 5G,两者总和刚好接近卷组总容量(127G),说明卷组空间已被充分利用。
  • 如果未来centos-root需要扩容,只要卷组有新增的物理卷(如再添加一个分区),就能直接从卷组中分配空间给它,无需关心新增空间来自哪个物理设备。

这种机制正是 LVM 的核心优势:打破物理设备的限制,实现存储空间的灵活管理和动态调整

移除这块硬盘

如果后续需要移除这块硬盘,可按以下步骤操作:

# 缩小逻辑卷和文件系统(需提前备份数据)
sudo lvreduce -L -50G /dev/mapper/centos-root
sudo xfs_growfs /  # 调整文件系统大小# 移除物理卷
sudo vgreduce centos /dev/sdb
sudo pvremove /dev/sdb

到此,扩容已经完毕

http://www.lryc.cn/news/591207.html

相关文章:

  • 什么是 M4A 和 WAV?这两种音频互转会导致音质发生变化吗
  • PySide笔记之信号连接信号
  • 解锁 iOS 按键精灵辅助工具自动化新可能:iOSElement.Click 让元素交互更简单
  • 初识 二叉树
  • iOS 构建配置与 AdHoc 打包说明
  • 设计模式四:装饰模式(Decorator Pattern)
  • 拿到安全工程师证后,能从事哪些岗位?
  • 十六进制与嵌入式系统及通信系统
  • 量化环节剖析
  • 暑期自学嵌入式——Day05(C语言阶段)
  • Oracle Data Pump 导入冲突解决
  • 九学王资源apk应用名称整理
  • 从平面到时空:地图故事的时空叙事与沉浸式阅读
  • 从单线程到云原生:Redis 二十年演进全景与内在机理深剖
  • Spring之【BeanDefinition】
  • 图片画廊浏览(侧重 CSS 网格布局和模态框交互)
  • 在分布式系统中,如何保证缓存与数据库的数据一致性?
  • 分别使用Cypher与python构建neo4j图谱
  • Mysql测试题
  • 网络爬虫的介绍
  • 【前沿技术动态】【AI总结】Spring Boot 4.0 预览版深度解析:云原生时代的新里程碑
  • 比特币技术简史 第三章:区块链技术 - 区块结构、链式结构与工作量证明
  • Spark 之 HashJoin
  • CDSS系统升级“可视化解释-智能反馈-临床语言“三位一体设计架构设计分析
  • (自用)补充说明2
  • 【组件库】VanillaTilt.js使用教程和配置项说明
  • C++ AVL树实现详解:平衡二叉搜索树的原理与代码实现
  • 【Python练习】046. 编写一个函数,检查一个数组是否是排序的
  • 算法学习笔记:27.堆排序(生日限定版)——从原理到实战,涵盖 LeetCode 与考研 408 例题
  • 【agent实战】基于 LangGraph 实现 Agentic RAG:原理、实战与创新全解