LVM学习5_逻辑卷管理

Linux 逻辑卷管理LVM


什么是 LVM

  • LVM 逻辑卷管理是Linux环境下对磁盘分区进行管理的一种机制;LVM建立在硬盘和分区之上的一个逻辑层,用于提高磁盘分区管理的灵活性。
  • 通过LVM系统管理员可以便捷地管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组(volume group),形成一个存储池;并且在卷组的基础上创建文件系统(命名文件和放置文件的逻辑存储和恢复系统)。
  • 管理员可以方便地通过LVM调整存储卷组的大小,可以按照组的方式进行命令、管理和分配,例如按照用途“development”等进行命名,而不是使用“sda”等磁盘名。

逻辑分区的创建顺序:物理分区 > 物理卷 > 卷组 > 逻辑卷 > 挂载


分区

硬盘的分区机制主要分为两种:MBR和GPT

MBR

  • Master Boot Record,主引导记录,传统的分区机制;应用于大多数的PC设备,具有主分区、扩展分区、逻辑分区。

  • 支持32或64位系统,支持分区数量有限,只支持硬盘数量不超过2T的硬盘。该分区总共有16个字节。只有在MBR分区机制下才存在主分区、扩展分区、逻辑分区的概念。

  • 主分区

  1. 每块硬盘都只有一个主引导扇区,0号磁头的第一个扇区,大小为512字节。主引导扇区包含MBR(主引导记录,446字节),DPT(分区表,64字节),MN(结束标志,2个字节,是AA和55)。BIOS读取MBR的时候总是最后检查这两个结束标志。
  2. 硬盘为分区列表保留了64个字节的存储空间,每个分区的对象占据16个字节。主引导分区也叫主分区,能够存储4个分区的数据。
  3. 一块硬盘最多划分4个主分区。windows系统一般需要安装在这个分区中,最多有4个。
  • 扩展分区
  1. 扩展分区也是主分区的一种,不同之处在于可以划分为无数个逻辑分区,且无法格式化。
  2. 扩展分区只能有一个,然后细分为逻辑分区。在MBR硬盘中,分区号为1-4是主分区或者扩展分区,最多一个或者没有。
  • 逻辑分区
  1. 逻辑分区的编号只能从5开始。逻辑分区利用链表进行链接,如果E盘中的信息丢掉,那么操作系统将找不到F盘。
  2. 逻辑分区是由扩展分区是由连续切割出来的分区。
    MBR=446bytes程序代码+64bytes分区表+2bytes标志位,其中分区表中每16bytes识别一个分区,一共可以识别4个(主分区+扩展分区)

总结:分区方式:确保至少一个主分区,主分区最多4个,扩展分区最多1个,二者的编号只能从1-4;逻辑分区的文件名编号只能从5开始:

LVM学习5_逻辑卷管理_第1张图片
1.png

LVM学习5_逻辑卷管理_第2张图片
2.png

GPT

  • 全局唯一标识分区表(GUID Partition Table, GPT),新的分区管理机制.
  • 解决了MBR的缺点:支持超过2T的硬盘,兼容MBR,不存在扩展分区和逻辑分区,只有主分区,支持分区数目最多可有128个。
  • GPT分区区域就是用户使用的分区,也是用户进行数据存储的区域。分区区域的起始地址和结束地址由GPT头定义。

LVM 工作原理

  • 在传统的磁盘管理机制,上层应用直接访问文件系统,从而对底层的物理硬盘进行读取;
  • 在LVM中,通过底层硬盘的封装,当需要对物理硬盘进行操作时,不再对分区直接进行操作,而是通过LVM对底层的磁盘进行操作。
  • LVM将存储虚拟化,使用逻辑卷,不受限于物理磁盘的大小。

LVM 优点

  1. 灵活的容量:当使用逻辑卷,文件系统能够扩展到多个磁盘上,能够将多个磁盘或者磁盘分区成单一的逻辑卷;
  2. 存储池的伸缩性强:通过命令的形式来扩大或缩小逻辑卷大小,不必重新格式化分区或者磁盘设备;
  3. 设备命令方便:用户能够根据适合自身的方式进行设备命名;
  4. 数据再分配:数据能够在磁盘在线的情况下进行移动和分配;
  5. 卷快照:使用逻辑卷获得设备快照,用来一致性备份或者测试数据更新效果而不影响真实数据。
  6. 逻辑卷的大小可以动态管理,不会丢失现有数据,提高磁盘管理的灵活性。
  7. ......

LVM术语

  • 物理存储介质(PM:The Physical Media)

系统的存储设备,存储系统最低的存储单元,如:/dev/sda,/dev/hda1

  • 物理卷 (PV:Physical Volume)

磁盘分区或从逻辑上和磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,包含有和LVM相关的管理参数。

  • 卷组(VG: Volume Group)

LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。能在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。

  • 逻辑卷(LV, Logical Volume)

LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上能建立文件系统(比如/home或/usr等)。

  • 线性逻辑卷 (Linear Volumes)

一个线性逻辑卷聚合多个物理卷成为一个逻辑卷。比如,如果你有两个60GB硬盘,你能生成120GB的逻辑卷.

  • 物理单元 PE(physical extent)

每一个物理卷被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是能被LVM寻址的最小单元。PE的大小是可设置的,默认为4MB。

  • 逻辑单元 LE(logical extent)

逻辑卷也被划分为被称为LE(Logical Extents) 的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。

关系图如下:


LVM学习5_逻辑卷管理_第3张图片
image.png

安装LVM 管理工具

  1. 检查系统中是否安装了LVM管理工具
rpm -qa|grep lvm
  1. 如果没有安装,使用yum方式安装
yum install lvm*
  1. 再次检查,如下显示则正确安装
rpm -qa|grep lvm

lvm2-libs-2.02.180-10.el7_6.3.x86_64
llvm-private-6.0.1-2.el7.x86_64
lvm2-2.02.180-10.el7_6.3.x86_64
mesa-private-llvm-3.9.1-3.el7.x86_64

LVM实现过程

  • 通过fdisk工具将磁盘转换成Linux分区;
  • 通过pvcreate命令将Linux分区转换成物理卷(PV);
  • 通过vgcreate命令将建好的物理卷处理成卷组(VG);
  • 通过lvcreate命令将卷组分成逻辑卷(LV);


    LVM学习5_逻辑卷管理_第4张图片
    4.png

Linux分区及逻辑卷操作

创建磁盘阵列分区

使用分区工具(如:fdisk等)创建LVM分区,方法和创建其他一般分区的方式是相同的,差别仅仅是LVM的分区类型为8e

1、使用root账户登录

# su - root

2、检查磁盘阵列的分区信息,通过 fdisk -l 查看

# fdisk -l            # 查看磁盘阵列的分区信息

3、磁盘分区

fdisk /dev/sdc              # 选中未分区的磁盘,添加新的分区
Command (m for help): m     # m查看分区命令帮助
Command action
   a   toggle a bootable flag
   ......(省略)
   x   extra functionality (experts only)
   
Command (m for help): n    # 创建新的分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p      # 选择p(primary)创建主分区 
Partition number (1-4, default 1): 1    # 分区编号,主分区从1开始
First sector (2048-35643391, default 2048):   # 柱面起止位置,直接默认值
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-35643391, default 35643391): 
Using default value 35643391
Partition 1 of type Linux and of size 17 GiB is set

Command (m for help): t    # 设置分区的系统id号
Selected partition 1
Hex code (type L to list all codes): 8e   # 主分区id为8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help):w     # 将分区信息写入分区表,保存并退出fdisk命令
The partition table has been altered!
......(省略)
Syncing disks.

4、 重启系统显示磁盘阵列分区信息

fdisk -l   # 查看分区信息

Device Boot      Start         End      Blocks   Id  System
/dev/sdc1        2048     35643391    17820672   8e  Linux LVM

5、分区步骤


LVM学习5_逻辑卷管理_第5张图片
图片发自App

创建物理卷

5、创建及查看物理卷PV

利用pvcrea命令将添加到卷组的所有分区或磁盘创建为物理卷。

pvcreate /dev/sdc1    # 创建物理卷
pvcreate /dev/sdc2
pvcreate /dev/sdc3

pvdisplay             # 查看物理卷
pvs/pvscan            # 查看简略信息
pvremove /etc/sdc1    # 删除物理卷(不执行命令)

创建卷组及扩容

6、把分区创建成一个卷组VG

  • 将使用pvcreate建立的物理卷创建为一个完整卷组。
  • vgcreate在创建卷组时,设置使用大小为4 MB的PE(默认为4MB),表示卷组上创建的所有逻辑卷以4MB为增量单位,来进行扩充或缩减。


    LVM学习5_逻辑卷管理_第6张图片
    image.png
vgcreate vg1 /dev/sdc1 /dev/sdc2 /dev/sdc3  # vg1 是创建的卷组名设备称
vgdisplay vg1            # 查看卷组
vgs/vgs                  # 查看简略信息 
vgchange -a y vg1        # 激活逻辑卷
vgremove  vg1            # 删除卷组
vgextend vg1 /dev/sdc1   # 通过物理磁盘sdc1扩容
pvresize /dev/md         # 通过raid设备间接扩容

创建逻辑卷

7、创建逻辑卷LV

例如:从vg1中划分一个100M,名字是lv1的卷组

lvcreate -L 100M -n lv1 vg1  # 创建逻辑卷
lvextend -L +1G /dev/vg1/lv1 # LV扩容,增加1G容量
resize2fs /dev/vg1/lv1       # 文件系统扩容

umount /dev/vg1/lv           # 删除需先卸载
lvremove /dev/vg1/lv1        # 删除逻辑卷

-L :指定创建的LV大小;

-n:LV的名称;

-l:创建LV的PE数量


格式化并挂载

8、格式化并挂载

  • 格式化磁盘
    硬盘分区之后,如果没有进行格式化,系统仍然不能往上面写入数据;Linux中用于格式化的命令是mkfs
mkfs.ext4 /dev/vg1/lv1      # 格式化为ext4的文件系统
  • 挂载
mount /dev/vg1/lv1 /mnt/    # 挂载 /mnt/ 为挂载目录
df -h                       # 查看挂载状态及硬盘使用信息 
df -TH                      # 查看实际的磁盘容量

常用的LVM部署命令

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

逻辑卷结构如下图:

  • 最后再温习一遍


    LVM学习5_逻辑卷管理_第7张图片
    3.png

你可能感兴趣的:(LVM学习5_逻辑卷管理)