LVM划分磁盘及扩容缩容
lvm:logical volume monitor 逻辑卷管理器
作用: 采用lvm划分磁盘:磁盘空间不够时,方便扩展磁盘。物理卷加到卷组时被划分等大的pe,即pv是由众多pe构成.pe是卷组的最小单位.默认情况下一个pe对应一个le。一个le可以对应多个pe(相当于raid1,一般不做),但一个pe只能对应一个le。
| 1.pv: physical volume 物理卷 命令有:pvs/ pvdisplay/pvcreate/pvmove/pvremove
2.vg: volume group 卷组. 命令有:vgs/vgdisplay/vgcreate/vgextend/vgreduce/vgremove 3.lv: logical volume 逻辑卷. 命令有:lvs/lvdisplay/lvcreate/lvextend/lvreduce/lvremove 4.pe: physical extent 物理分区 5.le:logical extent 逻辑分区 |
查看物理卷(pv).
| 查看物理卷: pvs 或者 pvdisplay 无输出则表示没有物理卷. [root@lbg [root@lbg |
添加物理卷:
| 添加2个pv. 命令为: pvcreate +磁盘映射点(分区表不能为gpt) [root@lbg Physical Physical |
再次查看物理卷:
| [root@lbg test]# pvs
PV /dev/sdb /dev/sdc |
新建卷组并添加物理卷:
| 将/deb/sdb添加到名为lbgvg的新建卷组里: vgcreate vg_name pv_path [root@lbg Volume group |
查看卷组:可知其有1个pv和0个lv.
命令为:
Vgs 或者 vgdisplay
.
| [root@lbg test]# vgs
VG #PV #LV #SN lbgvg |
在卷组里创建逻辑卷(lv):
| 从组lbgvg里创建1G,名为lbglv的逻辑卷(+1G表示添加2G,而单独的1G表示总空间为1G)
[root@lbg 逻辑卷创建完后相当于分区完成. |
查看逻辑卷:lvs 或者 lvdisplay
| [root@lbg test]# lvs
LV VG lbglv [root@lbg --- LV LV VG LV LV Write LV LV # LV Current Segments Allocation Read ahead - Block [root@lbg [root@lbg lrwxrwxrwx 1 |
然后可以创建文件系统再挂载即可使用.
| [root@lbg lbgvg]# mkfs.xfs /dev/lbgvg/lbglv [root@lbg [root@lbg /]# /dev/mapper/lbgvg-lbglv |
卷组扩容:扩容卷组即是新建物理卷并将其加入到卷组中即可
| 查看卷组:发现只有1个pv,大小为2g.
[root@lbg /]# VG #PV #LV #SN lbgvg 1 |
先创建物理卷并查看:
| [root@lbg /]# pvcreate /dev/sdc
Physical [root@lbg /]# PV /dev/sdb lbgvg lvm2 /dev/sdc |
再将物理卷添加到卷组里然后查看可知卷组为3.99G(命令:vgextend lbgvg
/dev/sdc)
| [root@lbg /]# vgextend lbgvg /dev/sdc
Volume [root@lbg /]# VG #PV #LV #SN lbgvg 2 |
逻辑卷扩容:
逻辑卷的大小不能超过卷组的大小,故一般扩容是先扩容卷组,再扩容逻辑卷.扩容卷组即是新建物理卷并将其加入到卷组中即可.逻辑卷扩容可以直接在挂载情况下使用 。且逻辑卷扩容,需先扩展物理边界再扩展逻辑边界.
| 扩展物理边界命令: lvextend -L +2G /dev/lbgvg/lbglv [root@lbg /]# Size of Logical [root@lbg /]# LV VG lbglv 此时lvs查看是3G,但df -h查看却是1G,因为还需扩展逻辑边界. |
扩展逻辑边界:
| [root@lbg /]# resize2fs /dev/lbgvg/lbglv ---扩展逻辑边界 [root@lbg /]# --- LV LV VG LV LV Write LV LV # LV Current Segments Allocation Read ahead - Block 注意其中open的状态:为1说明在用,可知mount里查看.当open为0,说明没有挂载. 扩展逻辑边界后的结果是:文件系统的大小(挂载情况下df |
逻辑卷缩容:
必须先umount,再强制文件系统检查,然后缩容逻辑边界,最后缩容物理边界.
强制文件系统检查命令: e2fsck -f
/dev/lbgvg/lbglv
| [root@lbg /]# e2fsck -f /dev/lbgvg/lbglv 缩容逻辑边界,改为1G [root@lbg /]# 最后缩容物理边界,改为1G(会销毁数据.) [root@lbg /]# 再查看:lvs [root@lbg /]# LV VG lbglv |
卷组缩容:先移走数据再卷组缩容最后删除物理卷.
移走数据时要求空闲的空间大于要移走的物理卷大小.具体步骤如下:
| [root@lbg /]# pvmove /dev/sdc
[root@lbg /]# [root@lbg /]# |
LVM划分磁盘及扩容缩容的更多相关文章
- LVM常规操作记录梳理(扩容/缩容/快照等)
基本介绍Linux用户安装Linux 操作系统时遇到的一个最常见的难以决定的问题就是如何正确地给评估各分区大小,以分配合适的硬盘空间.随着 Linux的逻辑盘卷管理功能的出现,这些问题都迎刃而解, l ...
- k8s Pod 扩容和缩容
在生产环境下,在面临服务需要扩容的场景时,可以使用Deployment/RC的Scale机制来实现.Kubernetes支持对Pod的手动扩容和自动扩容. 手动扩容缩容 通过执行扩容命令,对某个dep ...
- map的自动扩容与手动缩容
map的自动扩容与手动缩容 首先还是提出问题:扩容和缩容有什么用?为什么需要扩容和缩容? 在想解答这个问题之前,首先还是需要了解一下go语言中的map go语言中的map与Java中的map实现还是有 ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(十一)——一步一步教你如何撸Dapr之自动扩/缩容
上一篇我们讲到了dapr提供的bindings,通过绑定可以让我们的程序轻装上阵,在极端情况下几乎不需要集成任何sdk,仅需要通过httpclient+text.json即可完成对外部组件的调用,这样 ...
- 怎么做 HDFS 的原地平滑缩容?
背景 当数据规模越来越大,存储成本也水涨船高.随着时间推移,数据热度分布往往呈 2⁄8 原则,即 80% 的访问集中在 20% 的数据上.对于那不经常访问的 80% 数据来说,使用多个 SSD 来存储 ...
- Mycat节点扩缩容及高可用集群方案
数据迁移与扩容实践: 工具目前从 mycat1.6,准备工作:1.mycat 所在环境安装 mysql 客户端程序. 2.mycat 的 lib 目录下添加 mysql 的 jdbc 驱动包. 3.对 ...
- Netty 如何高效接收网络数据?一文聊透 ByteBuffer 动态自适应扩缩容机制
本系列Netty源码解析文章基于 4.1.56.Final版本,公众号:bin的技术小屋 前文回顾 在前边的系列文章中,我们从内核如何收发网络数据开始以一个C10K的问题作为主线详细从内核角度阐述了网 ...
- LVM逻辑卷扩容、缩容
LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理. 后期出现问题恢复数据也比较麻烦. 概念: ①PE(P ...
- Linux LVM扩容和缩容
将原硬盘上的LVM分区/dev/mapper/RHEL-Data由原来的60G扩展到80G Step1:将LVData扩容+20G,如下图: [root@esc data]# lvextend -L ...
随机推荐
- day54 Pyhton 前端JS06
内容回顾 - ECMAScript5.0 基础语法 - var 声明变量 - 五种基本数据类型 - string - number NaN number 1 number - boolean - un ...
- github 上传与删除项目
在github上创建好仓库后,在本地创建一个仓库 1.先要初始化本地仓库 git config --global user.name 'you name' git config --global us ...
- 理解 PHP 依赖注入 和 控制反转
理解 PHP 依赖注入 和 控制反转 要想理解 PHP 依赖注入 和 控制反转 两个概念,就必须搞清楚如下的两个问题: DI -- Dependency Injection 依赖注入 IoC -- ...
- seajs模块化jQuery与jQuery插件【转】
把jQuery修改成SeaJs的模块代码非常简单,就是用下面这段语句将jQuery源代码包裹起来: define('jquery',[],function(require, exports, modu ...
- 【CF1436C】Binary Search 题解
原题链接 题意简介 要求有多少种 n 的排列,能够通过二分法正确地找到放在 pos 处的数字 x. 答案对 1e9+7 取模.n<=1000. 采用的二分法如下图: 思路分析 首先,这个排列中有 ...
- 实战四:Gateway网关作全局路由转发
Gateway网关的作用主要是两个:路由转发,请求过滤.此篇讲的是路由转发,下篇介绍请求过滤. 一,创建网关module,添加依赖 1,new -> module -> maven 或直接 ...
- shiro实现不同身份使用不同Realm进行验证
转载:https://blog.csdn.net/xiangwanpeng/article/details/54802509 假设现在有这样一种需求:存在两张表user和admin,分别记录普通用户和 ...
- short i =1; i=i+1与short i=1; i+=1的区别
很典型的一到JAVA 基础面试题,上次面试遇到的,现在记录一下. short i =1; i=i+1;short i=1;i+=1;这两有什么区别呢 ?对两个容量不一样的数据类型的变量进行算术运算时, ...
- drf 视图使用及源码分析
前言 drf视图的源码非常的绕,但是实现的功能却非常的神奇. 它能够帮你快速的解决ORM增删改查的重复代码,非常的方便好用. 下面是它源码中的一句话: class ViewSetMixin: &quo ...
- 从创建进程到进入main函数,发生了什么?
前几天,读者群里有小伙伴提问:从进程创建后,到底是怎么进入我写的main函数的? 今天这篇文章就来聊聊这个话题. 首先先划定一下这个问题的讨论范围:C/C++语言 这篇文章主要讨论的是操作系统层面上对 ...