Linux逻辑卷管理(LVM)
一、逻辑卷(LV)、卷组(VG)、物理卷(PV)关系
逻辑卷(LV)是卷组(VG)的一部分,可以在卷组大小内动态增加,每个卷组可分为多个逻辑卷。
卷组由多个物理卷(PV)组成。每个物理卷是一个块设备(磁盘分区等)。
二、LVM存储
1.准备物理设备
可以是磁盘分区,也可以是整个磁盘、RAID阵列或SAN磁盘。
2.创建PV
sudo pvcreate /dev/设备名1 /dev/设备名2
3.创建VG
sudo vgcreate vg名 /dev/设备名1 /dev/设备名2
设备必须已被创建为PV。
4.创建LV
sudo lvcreate -n lv名 -L 大小 vg名
这一步的选项有:
-L后接以K、M、G为单位的大小
-l后接整数,整数值代表物理区块(PE)的个数,PE为物理卷的最小存储的整块数据,LV中的逻辑区块(LE)对应PE,默认情况一个LE映射到一个PE,备份情况下一个LE对应两个PE。
5.添加文件系统
sudo mkfs -t 文件系统类型 /dev/卷组名/逻辑卷名
6.永久挂载到文件系统
fstab文件中第一个字段指定设备,填写/dev/卷组名/逻辑卷名 。
三、删除逻辑卷
删除前可发出以下命令查看LV、VG、PV信息
sudo pvdisplay # 可带参数指定具体设备名
sudo vgdisplay # 可带参数指定具体卷组名
sudo lvdisplay # 可带参数指定具体逻辑卷名
1.取消LV的挂载
删除/etc/fstab中相应条目并手动取消挂载:
sudo umount 挂载点
2.删除LV
sudo lvremove /dev/卷组名/逻辑卷名(或/dev/mapper/卷组名-逻辑卷名)
3.删除VG
sudo vgremove 卷组名
4.删除PV
sudo pvremove /dev/设备名
四、扩展和缩减卷组
1.扩展卷组
首先创建一个物理卷,之后发出以下命令:
sudo vgextend vg名 /dev/已被创建为物理卷的设备名
2.缩减卷组
首先将要缩减的物理卷中的内容转移到同vg的空闲PE中,转移前最好备份:
sudo pvmove /dev/设备名
之后从VG中删除PV:
sudo vgreduce vg名 /dev/设备名
五、扩展逻辑卷
1.使用vgdisplay查看vg中的剩余空间。
2.sudo lvextend -r -L +xxxG /dev/卷组名/LV名
选项如下:
-L后加以K、M、G为单位的大小,有+时代表扩大xxx大小,没+时代表扩大为xxx大小。
-l后加PE个数,有+时代表扩大xxx大小,没+时代表扩大为xxx大小。也可写+xx%free代表把vg中当前剩余空间的xx%添加到LV中。
-r代表扩展当前文件系统类型到新加的空间。
以上的/dev/卷组名/逻辑卷名在有些机器上为/dev/mapper/VG名-LV名。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)