Linux之管理逻辑卷

目录

管理逻辑卷

认识LInux逻辑卷

LVM基本概念

部署逻辑卷

常用LVM部署命令

案例

管理与调整LVM卷

1.扩展卷组——添加/dev/nvme0n2p4物理卷到vg01中

2.在线扩展逻辑卷


管理逻辑卷

        逻辑卷管理器是Linux 系统用于对硬盘分区进行管理的一种机制, 理论性较强 ,其创建初衷是为了 解决硬盘设备在创建分区后不易修改分区大小的缺陷 。尽管对传统的硬盘分区进行 强制扩容 缩容 从理论上来讲是可行的,但是却 可能造成数据的丢失 。而LVM 技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组,可以把多块硬盘进行卷组合并。这样一来,用户 不必关心物理硬盘设备的底层架构和布局 ,就 可以实现对硬盘分区的动态调整

 

认识LInux逻辑卷

LVM基本概念

1.物理存储介质

        这里指系统的存储设备 --- 硬盘如:/dev/hda1/dev/sda等等,是存储系统最低层的存储单元

2.物理卷 --- PV(Physical Volume

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

3.组卷 ---  VGVolumne Group

         卷组建立在物理卷之上 ,一个卷组中 至少要包括一个物理卷 ,在卷组建立之后可动态添加物理卷到卷组中。 一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组 。即卷组由物理卷组成,类似于非LVM系统中的物理硬盘,可以在卷组上创建一个或多个 "LVM 分区 "( 逻辑卷 )
4.逻辑卷 --- LVLogical Volume
         逻辑卷建立在卷组之上 ,卷组中的 未分配空间可以用于建立新的逻辑卷 ,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组

逻辑卷分类:

        线性逻辑卷 (Linear Volumes) --- 一个线性逻辑卷聚合多个物理卷成为一个逻辑卷比如:如果你有两个60GB硬盘,你可以生成120GB的逻辑卷

        条块化的逻辑卷(Striped Logical Volumes) ---  当你写数据到此逻辑卷中时, 文件系统可以将数据放置到多个物理卷中 . 对于大量连接读写操作 , 它能 改善数据I/O效率
        镜像的逻辑卷(Mirrored Logical Volumes) --- 镜像在不同的设备上保存一致的数据。 数据同时被写入原设备及镜像设备。 提供设备之间的容错
         快照卷(Snapshot Volumes)---  快照卷提供在特定瞬间的一个设备虚拟映像,当快照开始时,它复制一份对当前数据区域的改变,由于 它优先执行这些改变,所以它可以 重构当前设备的状态

5. 物理区域 --- PEPhysical Extent

        物理区域是 物理卷中可用于分配的最小存储单元 ,物理区域的大小可根据实际情况在建立物理卷时指定。物理区域 大小一旦确定将不能更改 ,同一卷组中的所有物理卷的物理区域大小需要一致。 默认为4MB
6.逻辑区域 --- LELogical Extent
        卷组描述区域 存在于每个物理卷中 ,用于 描述 物理卷本身、物理卷所属卷组、卷组中的逻辑卷及逻辑卷中物理区域的分配等所有 信息 ,卷组描述区域是在使用pvcreate建立物理卷时建立的。 VGDA 包括以下内容: PV 描述符、 VG 描述符、 LV 描述符、和一些 PE 描述符
        系统启动LVM 时激活 VG ,并将 VGDA 加载至内存,来识别 LV 的实际物理存储位置。当系统进行 I/O 操作时,就会 根据VGDA建立的映射机制 访问实际的物理位置

部署逻辑卷

常用LVM部署命令

功能/命令 物理卷(PV) 卷组管理(VG) 逻辑卷管理(LV)
扫描
pvscan
vgscan
lvscan
建立
pvcreate
vgcreate
lvcreate
显示
pvdisplay
vgdisplay
lvdisplay
删除
pvremove
vgremove
lvremove
扩展
vgextend
lvextend
缩小
vgreduce
lvreduce

案例

1、创建pv

可以使用磁盘或分区,本例使用分区

[root@localhost ~]# parted /dev/nvme0n2 print

创建pv
[root@localhost ~]# pvcreate /dev/nvme0n2p2 /dev/nvme0n2p3

查看pv,详细查看使用pvdisplay
[root@localhost ~]# pvdisplay

[root@localhost ~]# pvs

更改分区类型(如果物理磁盘不需要用):
[root@localhost ~]# parted /dev/nvme0n2 set 2 lvm on

2.创建vg

[root@localhost ~]# vgcreate -s 4M RHCE /dev/nvme0n2p2

[root@localhost ~]# vgs

3.创建lv

        方法一 --- 制定LV的大小

[root@localhost ~]# lvcreate -n myvgl -L 50M RHCE

[root@localhost ~]# lvs

        方法二 --- 制定LV的PE数量

[root@localhost ~]# lvcreate -n myvg2 -l 10 RHCE

[root@localhost ~]# lvs

        lv路径

[root@localhost ~]# ll /dev/RHCE/myvgl /dev/mapper/RHCE-myvgl /dev/dm-1

管理与调整LVM卷

1.扩展卷组——添加/dev/nvme0n2p4物理卷到vg01

创建nvme0n2p4
[root@localhost ~]#  parted /dev/nvme0n2 mkpart logical xfs 1.21G 2G

[root@localhost ~]# pvcreate /dev/nvme0n2p4

[root@localhost ~]# parted /dev/nvme0n2 set 4 lvm on

        扩展vg

[root@localhost ~]# vgextend RHCE /dev/nvme0n2p4

[root@localhost ~]# vgs RHCE

2.在线扩展逻辑卷

先格式化然后再挂载
[root@localhost ~]# mkfs.xfs /dev/RHCE/myvgl

[root@localhost ~]# mkdir /mnt/data1
[root@localhost ~]# mount /dev/RHCE/myvgl /mnt/data1/

先扩展 lv
[root@localhost ~]# lvs /dev/RHCE/myvgl

[root@localhost ~]# lvextend -L +50M /dev/RHCE/myvgl 

[root@localhost ~]# lvs /dev/RHCE/myvgl

注意:
        使用 -L + 100M 增加 100M ,如果增加到 400M ,使用 -L 400M ,比如
[root@localhost ~]# lvextend -L 400M /dev/RHCE/myvgl 

[root@localhost ~]# lvs /dev/RHCE/myvgl

但是目前文件系统并没有扩容

[root@localhost ~]# df -h | grep /mnt/data1

使用 xfs_growfs 文件系统扩容
[root@localhost ~]# xfs_growfs /mnt/data1/

[root@localhost ~]# df -h | grep /mnt/data1

注意:

        如果是ext文件系统,即支持扩容(使用resize2fs文件系统扩容),也支持缩减

ext格式lvm缩减
  1. 卸载 umount /mnt/lv0
  2. fsck -f /dev/vg0/lv0 检测文件系统,resize2fs之前会提示先要检测文件系统
  3. resize2fs /dev/vg0/lv0 10G
  4. lvreduce -L 10G /dev/vg0/lv0
  5. mount -a 重新挂载

猜你喜欢

转载自blog.csdn.net/qq_57289939/article/details/132390886
今日推荐