LVM (Logical volume Manager)逻辑卷管理通过将底层物理硬盘抽象封装起来,以逻辑卷的形式表现给上层系统,逻辑卷的大小可以动态调整,而且不会丢失现有数据。新加入的硬盘也不会改变现有上层的逻辑卷。
作为一种动态磁盘管理机制,逻辑卷技术大大提高了硬盘管理的灵活性
一、LVM逻辑卷基本概念
传统磁盘管理的问题
当分区大小不够用时无法扩展其大小,只能通过添加硬盘、创建新的分区来扩充空间,但是新添加进来的硬盘是作为独立文件系统存在的,原有的文件系统并未得到扩充,上层应用很多时候只能访问一个文件系统。只能让现有磁盘下线,换上新的磁盘之后,再将原始数据导入。
PE (physical Extend、物理拓展) PV (physical volume、物理卷) VG (volume group、卷组) LV (logical volume、逻辑卷)
/dev/vgname/lvname
(1)物理磁盘被格式化为PV,空间被分为一个个PE
(2)不同的PV加入同一个VG,不同PV的PE全部进入VG的PE池内
(3)LV基于PE创建,大小为PE的整数倍,组成LV的PE可能来自不同的物理磁盘
(4)LV现在就直接可以格式化后挂载使用了
(5)LV的扩充缩减实际上就是增加或减少组成该LV的PE的数量。其过程不丢失原始数据
二、LVM逻辑卷的基本管理操作
1、将物理磁盘设别初始化为物理卷
pvcreate /dev/sdb /dev/sdc
2、创建卷组,并将PV加入卷组中
vgcreate test /dev/sdb /dev/sdc
3、基于卷组创建逻辑卷
lvcreate -n mylv -L 2G test
4、为创建好的逻辑卷创建文件系统
mkfs.ext4 /dev/test/mylv
5、将格式化好的逻辑卷挂载使用
mount /dev/test/mylv /mnt
查看LVM
可以通过以下命令查看LVM相关信息:
1.查看物理卷信息
pvdisplay (详细) pvs
2.查看卷组信息
vgdisplay (详细) vgs
查看逻辑卷信息
lvdisplay lvs
删除LVM
1.删除LV
lvremove /dev/test/mylv
2.删除VG
vgremove test
3.删除物理卷
pvremove /dev/sdb
LVM逻辑卷的拉伸与缩小
拉伸一个逻辑卷
逻辑卷的拉伸操作可以在线执行,不需要卸载逻辑卷
1.保证VG中有足够的空闲空间
vgdisplay
2.扩充逻辑卷
lvextend -L +1G /dev/test/mylv
3.查看扩充后LV大小
lvdisplay
4.更新文件系统
resize2fs /dev/test/mylv
5.查看更新后文件系统
df -h
拉伸一个卷组
1.将要添加到VG的硬盘格式化为PV
pvcreate /dev/sdd
2.将新的PV添加到指定卷组中
vgextend test /dev/sdd
3.查看扩充后VG大小
vgdisplay
缩小一个逻辑卷
逻辑卷的缩小操作必须离线执行,要卸载逻辑卷
1.卸载已经挂载的逻辑卷
umount /dev/test/mylv
2.缩小文件系统
(会提示需要运行fidsk检查文件系统)
resize2fs /dev/test/mylv 1G
3.缩小LV
lvreduce -L -1G /dev/test/mylv
4.查看缩小后的LV
lvdisplay
缩小一个卷组
1.将一个PV从制定卷组中移除
vgreduce test /dev/sdd
2.查看缩小后的卷组大小
vgdisplay
5.挂载
mount /dev/test/mylv /mnt
当磁盘或分区损坏时如何转移数据?
pvmove
转移空间数据 --> vgreduce
命令将即将坏的磁盘或者分区从卷组vgdata
里面移除除去 --> pvremove
命令将即将坏的磁盘或者分区从系统中删除掉 --> 拆除或修复磁盘
pvmove /dev/sdb1 /dev/sdb2 vgreduce vgdata /dev/sdb1 pvremove /dev/sdb1