逻辑卷LVM(logical Volume Manager)
lvm概念:LVM是linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。#使用LVM主要是增加了系统的扩展性。可跨分区,多个硬盘组合。
LVM的特点:
1.文件系统建立在LVM上,可以跨分区,方便使用。
2.当系统空间不足而加入新的硬盘时,不必把用户的数据从原硬盘迁移到新硬盘上,而只需要把新的分区加入卷组并扩展逻辑卷即可。(在线扩容)
lvm的制作
1.做成物理卷 pv—sdb1、sdb2打pv的标记
2.创建卷组vg 然后把物理卷sdb1、和sdb2加入同一个卷组。
3.创建逻辑卷lv,从卷组中拿出空间来做成逻辑卷,建立在vg之上制作文件系统
4.制作文件系统
5.挂载使用
一、创建LVM
准备两块磁盘,可以是已经分区了的,也可以是没有分区的,已经分区的不能制作文件系统。
1.制作pv
[root@xifeng ~]#pvcreate /dev/sdb #创建pv
Physical volume "/dev/sdb" successfully created.
[root@xifeng ~]# pvs #查看pv
##
同理可再制作多个磁盘为物理卷
2.创建一个vg
[root@xifeng ~]# vgcreate vg1 /dev/sdb #创建vg,并把sdb放入vg1
Volume group "vg1" successfully created
参数解释:
-s 16M 指的是在分区的时候指定vg的大小。
[root@xifeng ~]# vgs #查看vg
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.00g 0
vg1 1 0 0 wz--n- <10.00g <10.00g
3.创建lv
[root@xifeng ~]# lvcreate -L 150M -n lv1 vg1 #创建lv
Rounding up size to full physical extent 152.00 MiB
Logical volume "lv1" created.
[root@xifeng ~]# lvcreate -l 20 -n lv2 vg1 #采用 PE方式在创建一个lv
Logical volume "lv2" created.
[root@xifeng ~]#lvs #查看lv
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <17.00g
swap centos -wi-ao---- 2.00g
lv1 vg1 -wi-a----- 152.00m
lv2 vg1 -wi-a----- 80.00m
参数解释:
-L 指定lv的大小
-n 给创建的lv起一个名字
-l 20 指定PE 一个PE的大小是4M
4.制作文件系统
[root@xifeng ~]# mkfs.xfs /dev/vg1/lv1
[root@xifeng ~]# mkfs.ext4 /dev/vg1/lv2
5.挂载
[root@xifeng ~]# mkdir /mnt/lv{1..2}
[root@xifeng ~]# mount /dev/vg1/lv1 /mnt/lv1
[root@xifeng ~]#mount /dev/vg1/lv2 /mnt/lv2
[root@xifeng ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vg1-lv1 xfs 149M 7.8M 141M 6% /mnt/lv1
/dev/mapper/vg1-lv2 ext4 74M 1.6M 67M 3% /mnt/lv2
LVM逻辑卷扩容
1.如果lv所在是vg有空间,则只需要直接对lv进行扩容即可。
2.如果vg空间不足,则需要先给vg扩容,然后再给lv扩容,且不用取消挂载。
对卷组vg1进行扩容
[root@xifeng ~]#vgextend vg1 /dev/sdb #将物理卷sdb加入到vg1中
[root@xifeng ~]# vgs #查看vg
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.00g 0
vg1 1 2 0 wz--n- <19.99g <9.77g
[root@xifeng ~]# lvextend -L 850M /dev/vg1/lv1 #扩展到850M
[root@xifeng ~]# lvextend -L +850M /dev/vg1/lv1 #在原有基础上加850M
[root@xifeng ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <17.00g
swap centos -wi-ao---- 2.00g
lv1 vg1 -wi-ao---- 1.66g
lv2 vg1 -wi-ao---- 80.00m
对文件系统进行扩容
[root@xifeng ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vg1-lv1 xfs 149M 7.8M 141M 6% /mnt/lv1
/dev/mapper/vg1-lv2 ext4 74M 1.6M 67M 3% /mnt/lv2
[root@xifeng ~]# xfs_growfs /dev/vg1/lv1 #xfs扩容
[root@xifeng ~]# resize2fs /dev/vg1/lv2 #ext4扩容
[root@xifeng ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vg1-lv1 xfs 1.7G 9.1M 1.7G 1% /mnt/lv1
/dev/mapper/vg1-lv2 ext4 74M 1.6M 67M 3% /mnt/lv2