操作步骤

1. 磁盘资源申请

首先需要在云服务器或者虚拟机上申请一定大小的磁盘空间

2. 安装扩容工具包

安装 cloud-utils-growpart,centos 执行:

yum install -y cloud-utils-growpart

3. 扩容磁盘分区

执行 fdisk -l 查看需要扩容的磁盘在什么分区,例如在 /dev/vda2 分区的话,需执行:

growpart /dev/vda 2

如果是新增磁盘分区,则需要执行:

fdisk /dev/vda

需要交互式输入一些参数来建立新分区,和在原分区扩容原理相同,这里不展开讲述

4. 扩容 VG(卷组)

执行下面的命令可分别查看当前 PV(物理卷)和 VG(卷组)信息:

pvdisplay
vgdisplay

此时 PV 信息是还没有刷新的,需执行下面的命令来刷新:

pvresize /dev/vda2

5. 分配 PE(物理区域)

刷新完 PV,我们需要分配下 PE,如增加 10G 空间则执行:

lvextend -L +10G /dev/cl/root

注意,这里的 /dev/cl/root 是 LV 路径,可通过执行 lvdisplay 来查看

接下来刷新一下文件系统,即可完成扩容,不同文件类型刷新命令有所不同,文件系统类型可通过执行 df -Th 来查看:

# xfs 类型
xfs_growfs /dev/mapper/cl-root
# ext2/ext3/ext4 类型
resize2fs /dev/mapper/cl-root

若执行 xfs_growfs 时报下面的错误,则需执行:

# 报错
xfs_growfs: /dev/mapper/cl-root is not a mounted XFS filesystem
# 执行
xfs_growfs /

这是 xfs_growfs 命令版本较低,不支持传入文件系统,只支持传入挂载点(这里的例子挂载点是根目录 /

如需要将申请的磁盘空间全部扩容到当前路径,则执行:

lvextend -l +100%FREE /dev/cl/root
xfs_growfs /dev/mapper/cl-root

概念理解

Linux 磁盘扩容是基于 LVM(Logical Volume Manager)来实现的,通过 LVM 可以动态地调配 Linux 磁盘空间。LVM 中主要涉及下面四个概念:

物理卷 PV(Physical Volume):Unix 块设备节点,可用于 LVM 存储。例如硬盘就属于物理卷。

卷组:VG(Volume Group):用作 LV 容器的 PV 组。可以理解为 VG 就是由多个 LV 来组成的。

逻辑卷:LV(Logical Volume):驻留在 VG 中并由 PE 组成的“虚拟/逻辑分区”。我们扩容其实就是扩 LV。

物理区域 PE(Physical Extent):PV 中可以分配给 LV 的最小连续范围(默认 4MiB)。多个 PE 组成了 PV,且 PE 可以分配给任何 LV。

他们之间的关系可通过下面的图来理解:

简单概括就是,我们增加的硬盘就是 PV,PV 由多个 PE 组成,PE 可以分配给任何 LV,多个 LV 组成了 VG。

LVM 解决了什么问题

如果没有 LVM,我们磁盘资源耗尽后,新增的磁盘和旧磁盘是独立的,需建立不同的分区来访问数据,于是就会出现同一应用的数据要存储在不同路径的情况,这会对数据访问带来无限的麻烦。有了 LVM,我们就可以在应用数据位置“不变”的前提下来进行扩容,数据的存储和访问交给 LVM 来处理,使用者不需要去关注数据读写细节。而且,在资源允许的情况下,可以持续扩容。

参考

https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)

https://wiki.archlinux.org/title/LVM#Background

Linux 磁盘满了如何扩容相关推荐

  1. Linux磁盘空间进行扩容--增大卷组空间

    Linux磁盘空间进行扩容 参考博客 http://blog.csdn.net/dingchenxixi/article/details/50986472 http://blog.sina.com.c ...

  2. linux 磁盘满了 预警,Linux磁盘空间满了的排查与解决思路

    block正常满 (磁盘实际不足) inode 满 大量的小文件 block 满 文件没有被彻底删除(硬链接数0 进程调用数不为0) 解放方法: 1 查看df -h 磁盘使用量根据占用量大小逐步逐步排 ...

  3. linux磁盘满了以及负载过高解决办法

    1. 磁盘满了 如果一台机器磁盘满了,首先我们需要确定其位置,命令为 df(或者df -h) //显示结果 Filesystem 512-blocks Used Available Capacity ...

  4. Linux磁盘挂载、扩容、删除

    磁盘挂载 刷盘 查看磁盘信息 执行刷盘命令 验证情况 新建磁盘 创建PV 创建VG 创建LV 磁盘格式化 不看详解,只看步骤 扩容 新建一个磁盘扩容 创建pv 扩容VG 扩容LV 磁盘扩容 不看详解, ...

  5. 模拟linux磁盘满,linux 磁盘满了简单处理一下

    我这边是测试虚拟机系统是CentOS7 删东西请多加考虑确定了在进行操作,linux一般来说不配置是没有回收站机制的!!!!!!! 1.查看磁盘信息 df -h 发现/centos-root空间已经使 ...

  6. linux磁盘管理--LVM扩容

    Logical Volume Manager 简介 制作LVM逻辑卷 LVM逻辑卷扩容 简介 概念: LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上.文件系统之下的一个逻 ...

  7. Linux磁盘满了怎么办?

    一.介绍 当生产环境中,如果没有监控服务,磁盘突然满了,也是非常让人难受的一件事,即便可以加磁盘容量,那也是后面的事,无法解决当前情况,最快的办法就是释放一些不需要的文件,达到程序.服务的正常运行. ...

  8. linux磁盘满了怎么处理

    场景: 公司开发环境为节省资源,同一台机子部署大量不同应用,导致磁盘已满. 怎么办: 分析这台机子主要是用来部署web应用的,又因为是开发环境,日志为dubug级别,所以很大原因可能是存在大量日志文件 ...

  9. linux磁盘满了之后清理

    cd / df -h du -h --max-depth=1 选择较大的目录cd继续 du -h --max-depth=1 按目录大小排序 du  -h --max-depth=2 | sort - ...

  10. linux磁盘扩空间,Linux磁盘空间扩容(LVM)

    Linux磁盘空间扩容(lvm) 随着系统的运行时间增长,业务数据的增长,原有磁盘的空间会存在空间不足情况,导致系统不能正常运行,或者系统管理员磁盘没有完全划完,根据使用者的需求自行划分.那么怎么才能 ...

最新文章

  1. JavaScript(转载)
  2. SVG配电站接线系统绘制
  3. 艾伟_转载:C# Design Patterns (3) - Decorator
  4. Win7旗舰版系统右键菜单响应速度很慢会延迟一段时间
  5. 数据库大型应用解决方案总结(转)
  6. 用Python实现一个大数据搜索引擎
  7. 7-35 蒙特卡罗方法求圆周率 (30 分)
  8. 保留数据给硬盘增加分区
  9. [正则表达式] 可以解析HTML/XHTML页面的所有元素和结构的Regular Expression![ZT]
  10. 提高应用程序稳定的小内容
  11. linux+arm+移除X11,关于ARM GTK/X11的问题,懂的指点一下
  12. 灰度重采样的方法分为_遥感导论-期末试卷及答案
  13. 49个Python学习资源:从初学者到高级玩家都有了
  14. 在VS2019 C++ 中实现Socket通信,添加ws2_32.lib静态库
  15. c++实验题:设计两个酒店管理员客房管理的类:一个是Person类,要求储存房号、客户姓名和身份证号的信息;另一个类是Client类,要求新增客户的订房、退房和消费金额等信息,并给出相关测试算法。
  16. 计算机主机重装主机过程,电脑怎么重装系统步骤 超简单的电脑重装系统教程...
  17. 计算机在化学中论文3000字,化学论文范文3000字_化学论文发表
  18. 【Java】面向对象(二)继承
  19. 高分一号WFV影像云检测工具(免费)
  20. FreeBSD 虚拟化(jail) 初体验

热门文章

  1. Reflection(反射)
  2. Python-玩转数据-Scrapy中Spiders
  3. 对Airtest报告的步骤标题做内容定制?实用速学
  4. esxi 环境 西数硬盘测试软件,手把手教你测试固态硬盘!硬盘测试软件大汇总
  5. DVD驱动器打开拒绝访问
  6. 2014-04-12腾讯实习生笔试题目及解析
  7. 晚上的笔记:p2p vod
  8. Android Gson to Json类型转换异常解决方法
  9. 2016红帽年度创新大奖榜单揭晓
  10. android usb 读写权限,Android默认给予USB读写权限,去掉受权对话框