LVM逻辑卷管理

LVM逻辑卷管理

它是Linux环境下对磁盘和分区进行管理的一种机制。
普通的磁盘分区管理方式在分区划分好之后一般无法改变其大小(有风险),当一个分区存放不下文件时,解决的方法通常是使用符号链接,或者使用调整分区大小的工具,但这只是暂时解决办法,没有从根本上解决问题。简单来说LVM就是将物理磁盘融合成一个或几个大的虚拟磁盘存储池,按照我们的需求去存储池划分空间来使用,由于是虚拟的存储池,所以划分空间时可以自由的调整大小

LVM组成:物理卷(pv)、卷组(vg)、逻辑卷(lv)

1.创建lvm格式的分区表

首先是有一块拥有分新区的磁盘,在这个磁盘分lvm格式的分区表

1.创建lvm分区表

[root@localhost ~]# gdisk /dev/sdb 
GPT fdisk (gdisk) version 0.8.10
Command (? for help): n #n是创建新的分区
Partition number (1-128, default 1): #默认即可
First sector (34-41943006, default = 2048) or {+-}size{KMGTP}: #默认即可
Last sector (2048-41943006, default = 41943006) or {+-}size{KMGTP}: +1G #输入新分区的大小
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): 8e00  #8300创建的是主分区,8200创建的是交换分区,8e00创建的是lvm格式的分区
Changed type of partition to 'Linux LVM'
Command (? for help): w  #保存退出
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y  #输入y
OK; writing new GUID partition table (GPT) to /dev/sdb.
The operation has completed successfully.

2.查询新建的分区表—fdisk -l

[root@localhost ~]# fdisk -l
Disk /dev/sdb: 5368 MB, 5368709120 bytes, 10485760 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: gpt
Disk identifier: F6AA6B62-5B8F-465D-A9A3-BC6E883AF220
#         Start          End    Size  Type            Name
 1         2048      4196351      2G  Linux LVM       Linux LVM
 2      4196352      6293503      1G  Linux LVM       #新生产的lvm格式分区

2.生成物理卷

1.创建物理卷(pv)–pvcreate

[root@localhost ~]# pvcreate /dev/sdb2  #将lvm性质的分区转化为物理卷(pv)
Physical volume "/dev/sdb2" successfully created.  #表示物理卷已经生成

2.查看生成的物理卷–pvdisplay

[root@localhost ~]# pvdisplay /dev/sdb2 #查看生成的物理卷
"/dev/sdb2" is a new physical volume of "1.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb2  #生成的物理卷名称
  VG Name               
  PV Size               1.00 GiB  #物理卷的大小
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               dyvdHE-XqwF-c3j6-qGo6-3q3n-dv0p-pldBrJ

3.查看所有的物理卷–pvs

[root@localhost ~]# pvs  #查看所有物理卷
PV         VG     Fmt  Attr PSize   PFree #剩余可用空间大小
/dev/sda2  centos lvm2 a--  <19.00g    0  
/dev/sdb1         lvm2 ---    2.00g 2.00g
/dev/sdb2         lvm2 ---    1.00g 1.00g

4.删除物理卷–pvremove

[root@localhost ~]# pvremove /dev/sdb1 #删除物理卷

3.生成卷组

格式:vgcreate 选项 卷组名 物理卷(写多个时用空格分开)

-s:大小:指定VG的PE大小,默认4M,PE卷组的最小存储单元,PE所在的位置是VG卷组,即硬盘上,那么我们可以把PE理解为硬盘上的扇区,默认是4MB,可自由配置。

1.生成卷组(vg)–vgcreate

[root@localhost ~]# vgcreate JK /dev/sdb2 #生成卷组JK
 --- Volume group ---
  VG Name               JK  #生成卷组的名称
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               1020.00 MiB 
  PE Size               4.00 MiB
  Total PE              255
  Alloc PE / Size       0 / 0   
  Free  PE / Size       255 / 1020.00 MiB
  VG UUID               QpMfMj-gOYL-xTrO-2fEw-Ecdq-Pkz8-BdRO77

2.查看生产的卷组(vg)–vgdisplay

[root@localhost ~]# vgdisplay JK #查看生成的卷组
[root@yanzixuan ~]# vgdisplay JK
  --- Volume group ---
  VG Name               JK
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               1020.00 MiB
  PE Size               4.00 MiB
  Total PE              255
  Alloc PE / Size       0 / 0   
  Free  PE / Size       255 / 1020.00 MiB
  VG UUID               QpMfMj-gOYL-xTrO-2fEw-Ecdq-Pkz8-BdRO77

3.查看所有卷组(vg)–vgs

[root@localhost ~]# vgs #查看所有的卷组
  VG     #PV #LV #SN Attr   VSize    VFree   
  JK       1   0   0 wz--n- 1020.00m 1020.00m
  centos   1   2   0 wz--n-  <19.00g       0

4.增加卷组容量–vgextend

[root@localhost ~]# vgextend JK /dev/sdb1 #增加卷组容量
 Volume group "JK" successfully extended #增加的就是物理卷/dev/sdb1的容量大小

5.删除卷组–vgremove

格式:vgremove 卷组名 物理卷名

4.生成逻辑卷

1.生成逻辑卷

格式:lvcreate 选项 -n 逻辑卷名 卷组名

-L:容量:指定创建的逻辑卷大小,单位:MB,GB,TB等

-l:(小) PE个数:按照PE个数来指定逻辑卷大小

-n:逻辑卷的名称

[root@localhost ~]# lvcreate -L +1G -n LL JK #LL是逻辑卷名称 JK是卷组名
  Logical volume "LL" created. #创建成功

2.查看生成逻辑卷–lvdisplay

[root@localhost ~]# lvdisplay /dev/JK/LL  #查看生产的逻辑卷
  --- Logical volume ---
  LV Path                /dev/JK/LL  #逻辑卷路径
  LV Name                LL  #名称
  VG Name                JK  #卷组名称
  LV UUID                er82Nq-bfac-cRmQ-aMK1-NPq4-lDnb-dCpgVD
  LV Write Access        read/write
  LV Creation host, time yanzixuan, 2020-11-24 23:08:06 -0500
  LV Status              available
  # open                 0
  LV Size                1.00 GiB  #逻辑卷大小
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2

3.查看所有的逻辑卷–lvs

[root@localhost ~]# lvs #查看所有逻辑卷
LV   VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
LL   JK     -wi-a-----   1.00g   #新生产的逻辑卷                                                 
root centos -wi-ao---- <17.00g                                                    
swap centos -wi-ao----   2.00g  

4.逻辑卷扩容–lvextend

扩容数据是无损的,扩容分两步:先增加LV的大小,更新LV文件系统

1.增加逻辑卷大小
[root@localhost ~]# lvextend -L +1G /dev/JK/LL #逻辑卷扩容
--- Logical volume ---
  LV Path                /dev/JK/LL
  LV Name                LL
  VG Name                JK
  LV UUID                er82Nq-bfac-cRmQ-aMK1-NPq4-lDnb-dCpgVD
  LV Write Access        read/write
  LV Creation host, time yanzixuan, 2020-11-24 23:08:06 -0500
  LV Status              available
  # open                 0
  LV Size                2.00 GiB #容量增加了1G
  Current LE             512
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2
2.更新LV文件系统
xfs_growfs /dev/JK/LL  #更新文件系统

2.格式化逻辑卷

[root@localhost ~]# mkfs.xfs /dev/JK/LL #格式逻辑卷,生成文件系统
meta-data=/dev/JK/LL             isize=512    agcount=4, agsize=131072 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=524288, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

6.创建逻辑卷挂载目录

[root@localhost ~]# mkdir /ss #创建目录

7.挂载

[root@localhost ~]# mount  /dev/JK/LL  /ss #挂载
[root@localhost ~]# echo '/dev/JK/LL /ss xfs defaults 0 0' >> /etc/fstab
[root@localhost ~]# mount -a #刷新挂载
[root@localhost ~]# df -h  #查看挂载
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   17G  1.7G   16G  10% /
devtmpfs                 475M     0  475M   0% /dev
tmpfs                    487M     0  487M   0% /dev/shm
tmpfs                    487M  7.7M  479M   2% /run
tmpfs                    487M     0  487M   0% /sys/fs/cgroup
/dev/sda1               1014M  133M  882M  14% /boot
tmpfs                     98M     0   98M   0% /run/user/0
/dev/mapper/JK-LL        2.0G   33M  2.0G   2% /ss  #挂载成功
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值