**逻辑分区管理(LVM)**是每一个主流 Linux 发行版都含有的磁盘管理选项。无论是你需要设置存储池,还是只想动态创建分区,那么LVM就是你正在寻找的。
## 什么是 LVM?
LVM是 **LogicalVolumeManager **的简写,LVM将一个或者多个硬盘的分区在逻辑上集合,相当于一个大的硬盘来使用,当硬盘空间不足时,可以继续将其他的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区具有很大的灵活性。
在传统的磁盘管理中,你的操作系统寻找有哪些磁盘可用(/dev/sda、/dev/sdb等等),并且这些磁盘有哪些可用的分区(如/dev/sda1、/dev/sda2等等)。
在 LVM 下,磁盘和分区可以**抽象成一个含有多个磁盘和分区的设备**。你的操作系统将不会知道这些区别,因为LVM只会给操作系统展示你设置的卷组(磁盘)和逻辑卷(分区)
因为卷组和逻辑卷并不物理地对应到影片,因此可以很容易地动态调整和创建新的磁盘和分区。除此之外,LVM带来了你的文件系统所不具备的功能。比如,ext3不支持实时快照,但是如果你正在使用LVM你可以不卸载磁盘的情况下做一个逻辑卷的快照。
## 基本术语
* **物理存储介质(The physical media)**:这里指系统的存储设备存储:硬盘,如 `/dev/sda`、`/dev/sdb`、`/dev/hda`等等。
* **物理卷(physical volumn,简称pv)**:物理卷就是指硬盘分区,如 `/dev/sda1`,`/dev/sda2`,`/dev/hda1`或者从逻辑上与磁盘分区具有相同功能的设备(如**RAID**),是 LVM 的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘)比较,却包含了LVM相关的管理参数。
* **卷组(Volumn Group)**:LVM 卷组类似于非LVM系统中的物理硬盘,其由一个或者多个物理卷组成。可以在卷组上创建一个或者多个LVM分区(逻辑卷)。
* **逻辑卷(logical volumn)**: LVM 的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷上可以建立文件系统,并挂载到目录上。
* **PE(physical extent)**:每一个物理卷被划分为名称是PE的基本单元,具有唯一编号的 PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。
* **LE(logical extent)**:逻辑卷也被划分为名称是LE的可被寻址的基本单元,在同一个卷组中,LE 的大小和 PE 是相同的,并且一一对应。
~~~
PV:物理磁盘分区
VG:LVM中的物理磁盘分区,也就是说,PV必须加入VG,而VG可以理解为一个大的硬盘。
LV:从VG中划分出来的逻辑分区。
~~~
## 使用场景
如果你使用的是一台只有一块磁盘的 Ubuntu 笔记本电脑,并且你不需要像实时快照这样的扩展功能,那么你或许不需要LVM。如果你想要**轻松地扩展**或者想要将**多块磁盘组成一个存储池**,那么LVM或许正是你所寻找的。
- PHP
- PHP 核心架构
- PHP 生命周期
- PHP-FPM 详解
- PHP-FPM 配置优化
- PHP 命名空间和自动加载
- PHP 运行模式
- PHP 的 Buffer(缓冲区)
- php.ini 配置文件参数优化
- 常见面试题
- 常用函数
- 几种排序算法
- PHP - 框架
- Laravel
- Laravel 生命周期
- ThinkPHP
- MySQL
- 常见问题
- MySQL 索引
- 事务
- 锁机制
- Explain 使用分析
- MySQL 高性能优化规范
- UNION 与 UNION ALL
- MySQL报错:sql_mode=only_full_group_by
- MySQL 默认的 sql_mode 详解
- 正则表达式
- Redis
- Redis 知识
- 持久化
- 主从复制、哨兵、集群
- Redis 缓存击穿、穿透、雪崩
- Redis 分布式锁
- RedisBloom
- 网络
- 计算机网络模型
- TCP
- UDP
- HTTP
- HTTPS
- WebSocket
- 常见几种网络攻击方式
- Nginx
- 状态码
- 配置文件
- Nginx 代理+负载均衡
- Nginx 缓存
- Nginx 优化
- Nginx 配置 SSL 证书
- Linux
- 常用命令
- Vim 常用操作命令
- Supervisor 进程管理
- CentOS与Ubuntu系统区别
- Java
- 消息队列
- 运维
- RAID 磁盘阵列
- 逻辑分区管理 LVM
- 业务
- 标准通信接口设计
- 业务逻辑开发套路的三板斧
- 微信小程序登录流程
- 7种Web实时消息推送方案
- 用户签到
- 用户注册-短信验证码
- SQLServer 删除同一天用户重复签到
- 软件研发完整流程
- 前端
- Redux
- 其他
- 百度云盘大文件下载
- 日常报错记录
- GIT
- SSL certificate problem: unable to get local issuer certificate
- NPM
- reason: connect ECONNREFUSED 127.0.0.1:31181
- SVN
- SVN客户端无法连接SVN服务器,主机积极拒绝
- Python
- 基础
- pyecharts图表
- 对象
- 数据库
- PySpark
- 多线程
- 正则
- Hadoop
- 概述
- HDFS