Loading...
墨滴

金立

2021/11/02  阅读:34  主题:极客黑

linux-lvm

LVM管理

首发:https://zhuanlan.zhihu.com/p/427726596

写在前面

服务器硬盘不够了,但是发现挂载似乎必须要挂载到新的文件系统上,发现了这么一个技术,试了一试。说白了,就是通过逻辑的方式来管理硬盘,可以动态的给逻辑区域增加和减少空间,更加方便。

LVM 是 Logical Volume Manager (逻辑卷管理),是一种动态磁盘管理机制。LVM 是建立在磁盘分区和文件系统之间的一个逻辑层。相当于把底层的封装起来,用逻辑卷来管理硬盘。管理员可以利用 LVM 在不重新对磁盘分区的情况下动态的调整分区的大小。如果系统新增了一块硬盘,通过 LVM 就可以将新增的硬盘空间直接扩展到原来的磁盘分区上。

image-20211031100202828
image-20211031100202828

几个概念

  • 物理块(Physical Extent,PE)

PE是物理卷PV的基本划分单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。所以物理卷(PV)由大小等同的基本单元PE组成。

  • 物理卷(Physical Volume,PV)

指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

  • 卷组(Volume Group,VG)

类似于非LVM系统中的物理磁盘,其由一个或多个物理卷PV组成。可以在卷组上创建一个或多个LV(逻辑卷)。

  • 逻辑卷(Logical Volume,LV)

类似于非LVM系统中的磁盘分区,逻辑卷建立在卷组VG之上。在逻辑卷LV之上可以建立文件系统(比如/home或者/usr等)。

所有操作的目的都是为了创建逻辑卷出来

image-20211031100730768
image-20211031100637952
image-20211031100637952

步骤

1.先将已有的物理硬盘(比如sda)进行条带化成物理卷PV(相当于把物理硬盘划分成了一个一个PE,PE默认是4M大小)

2.创建一个卷组VG,相当于是一个空间池,可以将多个PV加入到VG之中。

3.基于VG中的PE创建最终要使用的逻辑卷LV

4.LV可以直接格式化挂载使用

5.LV的扩充和缩减实际上就是增加和减少组成改LV的PE的数量,过程中不会丢失原始数据

最后出现的逻辑卷的设备名字:/dev/vgname/lvname,最后是对这个东西进行格式化挂载。

  • 对于一个逻辑卷LV中可以来自不同的物理设备的。

  • VG不够用的时候,就往VG卷组里加硬盘就行

LVM创建并使用

1.将物理磁盘设备初始化为物理卷

pvcreate /dev/sda /dev/sdb

2.创建卷组,并将PV将入卷组vg1中

vgcreate vg1 /dev/sda /dev/sdb

3.基于卷组创建逻辑卷

lvcreate -n lv1 -L 2G vg1 从vg1这个卷组中,抽出2G来建立lv1这个逻辑卷

4.为创建好的逻辑卷创建文件系统

mkfs.ext4 /dev/vg1/lv1

5.将格式化好的逻辑卷挂载使用

mount /dev/vg1/lv1 /mnt

image-20211031102917392

信息查看

  • 查看物理卷信息:pvdisplay / pvs

  • 查看卷组信息:vgdisplay / vgs

  • 查看逻辑卷信息:lvdisplay / lvs

删除

  • 删除LV lvremove /dev/vg1/lv1

  • 删除VG vgremove vg1

  • 删除物理卷 pvremove /dev/sda

LVM扩大缩小

拉伸逻辑卷(可以在线执行)

1.查看VG中还有空间 vgdisplay

2.扩充逻辑卷 lvextend -L +1G /dev/vg1/lv1

3.查看扩充后LV大小 lvdisplay

4.更新文件系统 resize2fs /dev/vg1/lv1

5.查看更新后的文件系统 df -h

拉伸卷组(可以在线执行)

1.将要添加进来的硬盘格式化为PV pvcreate /dev/sdc

2.将新的PV添加到卷组中 vgextend vg1 /dev/sdc

3.查看扩充后VG的大小 vgdisplay

缩小逻辑卷(需要离线执行)

1.卸载已经挂载的逻辑卷 umount /dev/vg1/lv1

2.缩小文件系统 resize2fs /dev/vg1/lv1 1G

3.缩小LV lvreduce -L -1G /dev/vg1/lv1

4.查看缩小后的LV lvdisplay

5.挂载 mount /dev/vg1/lv1 /mnt

金立

2021/11/02  阅读:34  主题:极客黑

作者介绍

金立