逻辑卷LVM

  • lvm创建流程:

作用:

1、很容易实现分区的扩容和缩容

2、磁盘可以是分区也可以是整个硬盘,空间大小也可以不一样

  • lvm实现过程

第一步:将分区或者硬盘指定为物理卷(pvcreate)

命令:

创建pv

pvcreate /dev/DEVICE

pvcreate /dev/sd{b1,c}

显示pv信息

pvs

[root@rocky8 ~]#pvs
  PV         VG Fmt  Attr PSize    PFree
  /dev/sda2  rl lvm2 a--  <199.00g 4.00m

pvdisplay

[root@rocky8 ~]#pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               rl
  PV Size               <199.00 GiB / not usable 3.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              50943
  Free PE               1
  Allocated PE          50942
  PV UUID               hcfn68-KH11-jUDI-UcXV-dpQc-Npb0-YSwZq1

第二步:指定物理卷加入卷组

vgcreate 卷组名  设备名(可以是多个)

vgcreate  testvg0  /dev/sdb1 /dev/sdc

指定卷组提供的PE大小是多少

-s  PE大小   

作用:创建卷组会提供一个单位PE,功能:分配空间或容量扩容的最小单位

vgs

vgdisplay  显示详细信息

[root@rocky8 ~]#vgs
  VG #PV #LV #SN Attr   VSize    VFree
  rl   1   3   0 wz--n- <199.00g 4.00m
[root@rocky8 ~]#vgdisplay
  --- Volume group ---
  VG Name               rl
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               3
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <199.00 GiB
  PE Size               4.00 MiB
  Total PE              50943
  Alloc PE / Size       50942 / 198.99 GiB
  Free  PE / Size       1 / 4.00 MiB
  VG UUID               ssenEz-BqES-PZC6-dxCT-8UYz-z3YR-EJxRES

第三步:创建逻辑卷

lvcreate -L 逻辑卷大小 -n NAME -lv 卷组名

lvcreate -L 6G -n lv-mysql  testvg0

注意:逻辑卷大小不能超过卷组容量

查看创建成功的逻辑卷:

lvs    lvdisplay

[root@rocky8 ~]#lvs
  LV   VG Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home rl -wi-ao---- 126.99g
  root rl -wi-ao----  70.00g
  swap rl -wi-ao----   2.00g
[root@rocky8 ~]#lvdisplay
  --- Logical volume ---
  LV Path                /dev/rl/swap
  LV Name                swap
  VG Name                rl
  LV UUID                GbGaAl-OuHg-oYdy-LvRm-EqfC-Idup-9tJGMW
  LV Write Access        read/write
  LV Creation host, time rocky8.magedu.org, 2022-08-08 07:10:44 +0800
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1

  --- Logical volume ---
  LV Path                /dev/rl/root
  LV Name                root
  VG Name                rl
  LV UUID                dsCazD-ktAB-GJLe-7FLo-cVS1-ktnU-c5UtAB
  LV Write Access        read/write
  LV Creation host, time rocky8.magedu.org, 2022-08-08 07:10:45 +0800
  LV Status              available
  # open                 1
  LV Size                70.00 GiB
  Current LE             17920
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

  --- Logical volume ---
  LV Path                /dev/rl/home
  LV Name                home
  VG Name                rl
  LV UUID                gOAPMB-GWqz-XGJc-mCzr-iZwY-rjHm-BWERVV
  LV Write Access        read/write
  LV Creation host, time rocky8.magedu.org, 2022-08-08 07:10:45 +0800
  LV Status              available
  # open                 1
  LV Size                126.99 GiB
  Current LE             32510
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2

 第四步:创建逻辑卷的文件系统

mkfs.FS_NAME   /dev/vg_name/lv_name

第五步:挂载

持久挂载:vim /etc/fstab

生效:mount -a

  • 逻辑卷扩容

lvextend

  -L  [+]#[mMgGtT]  /dev/vg_name/lv_name

+100%free  把剩余空间去全部扩容

-r   实现文件系统扩容

注意:某逻辑卷空间不足,需要逻辑卷扩容,如果卷组有空间,则直接可以扩容,但如果卷组没有空间,其他磁盘还有空间,则可以分出一部分空间(创建分区),物理卷,加入到此逻辑卷的卷组中,即卷组扩容,再进行逻辑卷扩容

卷组扩容

vgextend  vg_name  DEVICE

  • 逻辑卷缩容

注意:缩减前先备份

1、取消挂载:unmount 设备名|挂载点

2、缩容:lvreduce  -L  #[mMgGtT]  -r  /dev/vg_name/lv_name

3、重新挂载,mount /dev/vg_name/lv_name   挂载点

 

xfs不支持缩容,只支持扩容;ext4既支持扩容也支持缩容

扩展:拆除硬盘前,硬盘内的数据怎么挪走?

1、vgdisplay 查看剩余多少空间

2、空间不足,增加新硬盘/dev/sdd,扫描磁盘scandisk

3、创建物理卷(pvcreate)

4、扩展卷组(vgextend vg_name  设备名);vgdisplay

5、pvmove 原设备名

6、pvs :PFree  和PSize相同

7、vgreduce vg_name  原设备名     移走卷组中的设备

8、pvremove 原设备名     删除原设备

 

  • 删除逻辑卷

1、取消挂载

2、删除逻辑卷:lvremove /dev/vg_name/lv_name

lvs,查看,检查

3、删除逻辑卷所在的卷组:vgremove vg_name

vgs,查看,检查

4、删除创建卷组的物理卷:pvremove pv_name

pvs,查看,检查

 

  • 逻辑卷快照

主要功能:

当逻辑卷中的文件发生更改,旧的数据文件保存至快照

当逻辑卷中的文件删除,被删除的文件保存到快照中,逻辑卷无文件

当逻辑卷中的文件不发生任何改变的文件,则此文件不会保存到快照

创建快照逻辑卷

命令:

lvcreate  -n  NAME  -s  -p  r  -L   1G   /dev/vg_name/lv_name

-p  指定权限。r  实现只读权限

-s 创建快照

-L    指定快照大小

lvdisplay   查看快照是否创建成功

 

挂载 mount 

查看挂载文件

此时显示的只是逻辑卷中的文件

注意:增、删、改逻辑卷中的内容,内容会发生改变,但是逻辑卷的快照不发生改变,还是原始数据。

 

恢复快照

1、取消挂载:unmount

2、lvconvert --merge /dev/vg_name/lv_name_snapshot

3、重新挂载

 

posted on 2023-01-10 08:05  smile^^  阅读(160)  评论(0)    收藏  举报