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 ...
随机推荐
- 机器分配----线性dp难题(对于我来说)
题目: 总公司拥有高效设备M台, 准备分给下属的N个分公司.各分公司若获得这些设备,可以为国家提供一定的盈利.问:如何分配这M台设备才能使国家得到的盈利最大?求出最大盈利值.其中M <= 15, ...
- go 下载图片
package main import ( "net/http" "fmt" "io/ioutil" "strings" ...
- ansible用authorized_key模块批量推送密钥到受控主机(免密登录)(ansible2.9.5)
一,ansible的authorized_key模块的用途 用来配置密钥实现免密登录: ansible所在的主控机生成密钥后,如何把公钥上传到受控端? 当然可以用ssh-copy-id命令逐台手动处理 ...
- 纯CSS+HTML自定义checkbox效果[转]
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis出现 java.net.SocketTimeoutException: Read timed out 异常
问题描述 在使用Azure Redis时,遇见Read Timed out异常, Redis的客户端使用的时jedis.问题发生时,执行redis部分指令出错,大部分get指令,set指令能正常执行. ...
- jq ajax封装
//ajax公共方法,zs 2017-06-14 $.extend({ //比jq的ajax多了的参数: //salert是否在请求成功后弹出后台的SuressStr字段值 //ealertStr:请 ...
- ServletRequest使用介绍
ServletRequest: 定义将客户端请求信息提供给某个 servlet 的对象:servlet 容器创建 ServletRequest 对象,并将该对象作为参数传递给该servlet的serv ...
- 子父类存在同名成员时super的使用条件
1.子父类存在同名成员时,子类中默认访问子类的成员,可通过super指定访问父类的成员,格式:super.xx (注:xx是成员名): 2.创建子类对象时,默认会调用父类的无参构造方法,可通过sup ...
- 常用手册或官网的url
1.mysql--> https://www.mysql.com/ 2.菜鸟教程--> http://www.runoob.com 3.maven官网--> https://mave ...
- Mybatis---05Mybatis配置文件浅析(三)
1.objectFactory:(对象工厂)MyBatis 每次创建结果对象的新实例时,它都会使用一个对象工厂(ObjectFactory)实例来完成. 默认的对象工厂需要做的仅仅是实例化目标类,要么 ...