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

Linux CentOS7 LVM

LVM(Logical Volume Manger)逻辑卷管理,Linux磁盘分区管理的一种机制,建立在硬盘和分区上的一个逻辑层,提高磁盘分区管理的灵活性。物理设备,是用于保留逻辑卷中所存储数据的存储设备。它们是块设备,可以是磁盘分区、整个磁盘、RAID阵列或SAN磁盘。

一般来说,对于物理磁盘,我们直接分区、格式化之后就可以使用,那为什么还需要使用逻辑卷来管理磁盘呢?

这主要有两方面的原因:

a.业务上使用大容量的磁盘。当我们需要以TB为大小的存储时,对于单个磁盘,是无法满足要求的,市场上没有那么大的单块磁盘。但如果使用逻辑卷,将多个小容量的磁盘聚合为一个大的逻辑磁盘,就能满足需求。

b.扩展和收缩磁盘。在业务初期规划磁盘时,我们并不能完全知道需要分配多少磁盘空间是合理的,如果使用物理卷,后期无法扩展和收缩;如果使用逻辑卷,可以根据后期的需求量,手动扩展或收缩。

一、基本概念

1.物理卷pv

就是实实在在的物理实体。可以是一个分区或者一个硬盘。通过系统划分为众多的存储介质,最小单位是PE(一般默认是4MB)。

实践证明,当把一块硬盘或一个分区转为物理卷,再加入一个卷组,与由一块硬盘或一个分区直接加入卷组,效果一样(这说明创建物理卷不是必要的步骤!)

另外,把一块硬盘分成一个分区与不分区,没有任何区别。且分区时设置为83类型与设置为8e类型也没有根本性区别(原理也很简单:不分区的硬盘都可以直接转化为物理卷,再分区,且设置为8e类型,也就无所谓了)。

2.卷组vg

将多个物理卷组合到一起,成为一个卷组。

创建卷组时,多少个物理卷都可以,如三块硬盘。创建后再想加上一块硬盘,这就由创建卷组变为了扩展卷组(命令不一样,原理也不一样)。由此提示我们,在创建卷组时要规划一下硬盘或分区数量!

3.逻辑卷lv

在卷组的基础上再次划分,最小单位是LE,与PE一样,并且一一对应。逻辑卷跟物理卷没有本质区别,只是站在不同的层次。

三个概念的基本关系图如下:

二、常用操作

为了讨论LVM,我们在系统中新添加了三块硬盘,并对后两块硬盘作了分区处理:

1.创建

a.物理卷

要创建物理卷,需要先有物理磁盘或者磁盘分区,然后使用物理磁盘或磁盘分区创建物理卷。

因为一块大硬盘分成多个分区,可以在构造多个卷组时有多种组合与选择,建议先对硬盘分区(本文不对硬盘分区展开讨论,感兴趣的可自行搜索相关内容)

创建物理卷是多余的步骤,我们直接跳过。

b.卷组

把一块或多块硬盘组成卷组,命令与操作简单:

        vgcreate  卷组名  构成卷组的硬盘/分区

如把sdb、sdc1、sdd1组成卷组vg01; 把sdc2、sdd2组成卷组vg02

c.逻辑卷

从现有卷组中创建逻辑卷,要指定名称,指定大小:

        lvcreate  -n  '逻辑卷名称'  –L  '逻辑卷大小'   '来自卷组名称'

如从卷组vg01中创建逻辑卷lv001、lv002;从卷组vg02中创建逻辑卷lv003、lv004

2. 查看

分简单查看与详细信息查看:

        (物理卷/卷组/逻辑卷)名称后加s或加scan  简单查看

        (物理卷/卷组/逻辑卷)名称后加display  详细信息查看

如简单查看卷组 vgs   vgscan

详细信息查看逻辑卷 lvdisplay

3.删除

从逻辑关系上要求,先删除逻辑卷,再删除卷组,最后可以删除物理卷。

        命令格式:(物理卷/卷组/逻辑卷)名称后加remove

删除物理卷时,可以批量多个(利用正则式)

三、应用案例

1.常用命令

在命令行执行lvm help

根据对帮助信息的了解,可以执行lvm命令

录入quit退出(也可以ctrl+d退出)。

查看lvm版本:

2.扩展逻辑卷

当逻辑卷容量需要加大时,可进行扩展:

3.创建文件系统

逻辑卷与硬盘分区的处理一样,可以创建文件系统:

4.挂载

与硬盘挂载、分区挂载和U盘挂载一样,逻辑卷也可以挂载:

小结

LVM是Linux操作系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上、文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,因此能够在保持现有数据不变的情况下动态调整磁盘容量,从而增强磁盘管理的灵活性。

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

相关文章:

  • ArkTS开发webview,html页面中的input和按钮等操作均无响应 【Bug已解决-鸿蒙开发】
  • 滴滴、阿里云、语雀相继宕机,损失巨大,软件的高可用失效了么?
  • 基于binlog实现一些业务(Binlog4j)
  • python实现rpc的几种方式(SimpleXMLRPCServer 自带的、第三方ZeroRPC)、连接linux远程开发分布式锁、分布式id
  • ARM麒麟V10 auditctl启动失败处理
  • day67
  • 04:2440---内存控制器
  • 【深度学习】CNN中pooling层的作用
  • 基于H1ve一分钟搭好CTF靶场
  • 网络篇---第五篇
  • Git——Git应用入门
  • 【SpringBoot】Redisson 分布式锁注解和 @Transactional 注解一起使用问题
  • Druid数据库连接池框架
  • Python项目打包
  • ASUS(华硕) B760M-AYW WIFI D4_解决wifi不能使用
  • Postgresql数据库运维统计信息
  • Python3基础
  • 【性能测试】服务器常用的性能指标总结,一文概全...
  • Vue学习笔记-Vuex基本使用
  • vue3中的customRef创建一个自定义的 ref对象
  • 动态规划学习——子序列问题
  • 使用 COPY 加速 PostgreSQL 批量插入
  • plotneuralnet和netron结合绘制模型架构图
  • MYSQL 中如何导出数据?
  • GPT-4惨遭削弱,偷懒摸鱼绝不多写一行代码,OpenAI已介入调查
  • CSS特效020:涌动的弹簧效果
  • 系列五、Spring整合MyBatis不忽略mapper接口同目录的xxxMapper.xml
  • 第454题.四数相加II
  • RabbitMQ消息队列
  • ModBus电表与RS485电表有哪些区别?