Linux之redhat中lvm分区教程

一、什么是Lvm

1.lvm Logical Volume Manager(逻辑卷管理)的简写,它

Linux环境下对磁盘分区进行管理的一种机制LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。

2.lvm中常用的几个术语

1)pv 物理卷,是物理的磁盘分区

2)vg 逻辑卷组,LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库或者是几个大的硬盘。

3)pe 物理扩展,也就是从VG中划分的逻辑分区

二、lvm创建

1.划分物理分区

Linux之redhat中lvm分区教程

更改分区格式为lvm,通过l查询id为8e:

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

格式化分区:

Linux之redhat中lvm分区教程

2.监控lvm卷的建立过程,监控命令:

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

3.创建lvm卷

1)创建物理卷:pvcreate  /dev/vdb1 

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

2)创建物理卷组:vgcreate  vg0  /dev/vdb1

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

3)创建逻辑卷:lvcreate  -L  100M  -n  lv0  vg0 

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

4)格式化设备:mkfs.xfs  /dev/vg0/lv0 

Linux之redhat中lvm分区教程

5)设备挂载使用:mount /dev/vg0/lv0  /westos 

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

三、lvm的拉伸

1.xfs文件系统下,vg充足时。

步骤:

1)lvextend  -L  200M  /dev/vg0/lv0

Linux之redhat中lvm分区教程Linux之redhat中lvm分区教程

2)xfs_growfs /dev/vg0/lv0

Linux之redhat中lvm分区教程Linux之redhat中lvm分区教程

2.vg剩余不足

1)新建分区

Linux之redhat中lvm分区教程

格式化新分区:

Linux之redhat中lvm分区教程

2)创建物理卷:pvcreate  /dev/vdb2

Linux之redhat中lvm分区教程

3)创建物理卷组:vgextend  vg0  /dev/vdb2

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

4)创建逻辑卷:lvextend   -L  800M   /dev/vg0/lv0

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

5)更新设备:xfs_growfs  /dev/vg0/lv0

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

三、分区缩减

Xfs不能进行缩减,在ext文件系统中可以进行缩减操作。

实验前的准备:

1)卸载:umount  /westos

Linux之redhat中lvm分区教程

2)格式化:mkfs.ext4  /dev/vg0/lv0

Linux之redhat中lvm分区教程

3)挂载:

Linux之redhat中lvm分区教程

1.分区拉神

1)扩容为400M :lvextend -L 400M /dev/vg0/lv0

Linux之redhat中lvm分区教程

Linux之redhat中lvm分区教程

2)系统文件扩展:resize2fs  /dev/vg0/lv0 

Linux之redhat中lvm分区教程Linux之redhat中lvm分区教程

2.分区缩减

1)卸载:umount /westos

Linux之redhat中lvm分区教程

2)扫描文件系统大小:e2fsck  -f  /dev/vg0/lv0

Linux之redhat中lvm分区教程

3)文件系统缩减:resize2fs  /dev/vg0/lv0  200M 

Linux之redhat中lvm分区教程

4)挂载:mount /dev/vg0/lv0 /westos/

5)设备缩减:lvreduce -L 200M /dev/vg0/lv0  

Linux之redhat中lvm分区教程Linux之redhat中lvm分区教程

3.对卷组数据的移动及移除

1)vdb1中的数据移动到pv(物理卷组):pvmove /dev/vdb1 /dev/vdb2 

Linux之redhat中lvm分区教程

2)vdb1卸下来:vgreduce vg0 /dev/vdb1

3)移除vdb1:pvremove /dev/vdb1  

Linux之redhat中lvm分区教程Linux之redhat中lvm分区教程

4.lvm的快照

1)创建快照:

lvcreate  -L  100M  -n  lv0backup  -s  /dev/vg0/lv0 

Linux之redhat中lvm分区教程

2)挂载:mount /dev/vg0/lv0backup /westos 

Linux之redhat中lvm分区教程

3)卸载:umount /westos 

Linux之redhat中lvm分区教程

4)移除快照:lvremove /dev/vg0/lv0backup 

Linux之redhat中lvm分区教程

5.lvm的删除

1)卸载:umount

Linux之redhat中lvm分区教程

2)删除逻辑卷:lvremove 

Linux之redhat中lvm分区教程

3)删除物理卷组:vgremove

Linux之redhat中lvm分区教程

4)删除物理卷:pvremove

Linux之redhat中lvm分区教程

6.错误删除,直接删除设备/dev/vdb1,会报错。解决方法:

使用命令:vgreduce  /dev/vdb2  --removemissing