wiki/运维/Linux/笔记/21.LVM.md
2026-04-08 19:40:00 +08:00

179 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 1、LVM 概览
LVMLogical Volume Manager逻辑卷管理用于在 Linux 中更灵活地管理磁盘空间。
相比传统分区LVM 的优势在于:
- 可以把多块磁盘组合成一个逻辑空间
- 可以更灵活地扩容和缩容
- 更适合做在线扩容、统一存储管理
不过LVM 也会增加一定的复杂度,实际生产中要根据业务场景使用。
## 2、LVM 核心概念
### 2.1 PV物理卷
Physical Volume物理卷。
可以理解为:把磁盘分区或整块磁盘初始化成 LVM 可识别的底层存储单元。
### 2.2 VG卷组
Volume Group卷组。
把一个或多个 PV 组合起来,形成一个大的存储池。
### 2.3 LV逻辑卷
Logical Volume逻辑卷。
从卷组里切分出来给文件系统使用的逻辑设备。
### 2.4 PE物理扩展单元
Physical Extent物理扩展单元。
是 LVM 中分配空间时的最小单位,通常是若干 MB。
## 3、LVM 的基本关系
可以把它理解成:
- **磁盘/分区** 先做成 **PV**
- 多个 **PV** 组成 **VG**
-**VG** 中划分出 **LV**
- 再把 **LV** 格式化并挂载给系统使用
## 4、物理卷管理
### 4.1 创建物理卷
```shell
pvcreate /dev/sdb1
```
### 4.2 查看物理卷
```shell
pvscan
pvdisplay /dev/sdb1
```
### 4.3 删除物理卷
```shell
pvremove /dev/sdb1
```
## 5、卷组管理
### 5.1 创建卷组
```shell
vgcreate myvg /dev/sdb1 /dev/sdc1
```
### 5.2 查看卷组
```shell
vgscan
vgdisplay myvg
```
### 5.3 从卷组中移除物理卷
```shell
vgreduce myvg /dev/sdb1
```
### 5.4 删除卷组
```shell
vgremove myvg
```
### 5.5 重命名卷组
```shell
vgrename myvg newvg
```
## 6、逻辑卷管理
### 6.1 创建逻辑卷
```shell
lvcreate -L 10G -n mylv myvg
```
### 6.2 查看逻辑卷
```shell
lvscan
lvdisplay /dev/myvg/mylv
```
### 6.3 扩容逻辑卷
```shell
lvextend -L +5G /dev/myvg/mylv
```
扩容后,通常还需要继续扩展文件系统。
### 6.4 缩容逻辑卷
```shell
lvreduce -L -5G /dev/myvg/mylv
```
**缩容风险较高**,必须先确认文件系统支持、先备份数据,并严格按步骤操作。
### 6.5 删除逻辑卷
```shell
lvremove /dev/myvg/mylv
```
删除前如果已经挂载,通常要先卸载。
## 7、典型使用流程
### 7.1 新建 LVM 存储
常见步骤:
1. 分区或准备磁盘
2. `pvcreate`
3. `vgcreate`
4. `lvcreate`
5. `mkfs`
6. `mount`
7. 写入 `/etc/fstab`
### 7.2 逻辑卷扩容
常见步骤:
1. 确认 VG 还有剩余空间
2. `lvextend`
3. 扩展文件系统,例如 `resize2fs``xfs_growfs`
4. 再次检查容量是否生效
## 8、常见运维注意点
- 扩容通常比缩容安全得多
- 缩容前一定要备份数据
- 删除 PV、VG、LV 前要先确认是否还在使用
- 记清楚设备关系,避免误删底层磁盘
- 云服务器场景中,如果 LVM 跨多块盘,删除任意一块底层盘都可能导致卷组异常
## 9、小结
- LVM 让磁盘管理更灵活
- 核心对象是 `PV``VG``LV`
- `pvcreate``vgcreate``lvcreate` 是三步基础命令
- 扩容逻辑卷后通常还要扩展文件系统
- 缩容和删除操作都要格外谨慎