LVM技术出现由来
说白了,就是文件系统容量怎么实现无感伸缩。
定义:LVM(Logical volume Manager)逻辑卷管理通过将底层物理硬盘抽象封装起来,以逻辑卷的形式表现给上层系统,逻辑卷的大小可以动态调整,而且不会丢失现有数据。新加入的硬盘也不会改变现有上层的逻
辑卷。
LVM基本的四个概念
PE (physical Extend)物理扩展 --->逻辑卷空间管理最小单位,默认4M大小
PV (physical volume)物理卷
VG (volume group) 卷组 --->空间池用来装PE
LV (logical volume)逻辑卷 ---> 操作系统所使用的逻辑卷,取代原本的分区
/dev/vgname/lvname
1.物理磁盘被格式化为pv,空间被分为一个个PE
2.不同的PV加入同一个VG,不同PV的PE全部进入VG的池内
3.LV基于PE创建,大小为PE的整数倍,组成LV的PE可能来自不同物理磁盘
4.LV现在就直接可以格式化后挂载使用了
5.LV的扩充缩减实际上就是增加或减少组成该LV的PE的数量。其过程不丢失原始数据。
创建LVM
1.将物理磁盘设备初始化为物理卷 pvcreate /dev/sdb /dev/sdc
2.创建卷组,并将PV加入卷组中 vgcreate linuxcast /dev/sdb /dev/sdc
3. 基于卷组创建逻辑卷 lvcreate -n mylv -L 3G linuxcast
4.为创建好的逻辑卷创建文件系统 mkfs.ext4 /dev/linuxcast/mylv
5.将格式化好的逻辑卷挂载使用 mount /dev/linuxcast/mylv /mnt
查看LVM
可以通过一下命令查看LVM相关信息:
查看物理卷信息:
pvdisplay(详细)
pvs
查看卷组信息:
vgdisplay(详细)
vgs
查看逻辑卷信息
lvdisplay(详细)
lvs
删除LVM
1.删除LV lvremove /dev/linuxcast/mylv
2.删除VG vgremove linuxcast
3.删除物理卷 pvremove /dev/sdb
--------------------------
拉伸一个逻辑卷
逻辑卷的拉伸操作可以在线执行,不需要卸载逻辑卷
1.保证VG中有足够的空闲空间 vgdisplay --引申VG拉伸
2.扩充逻辑卷 lvextend -L +1G /dev/vgname/lvname
3.查看扩充后LV大小 lvdisplay
4.更新文件系统 resize2fs /dev/vgname/lvname
5.查看更新后文件系统 df -h
拉伸一个卷组VG
1.将要添加到VG的硬盘格式化为PV pvcreate /dev/sdd
2.将新的PV添加到指定卷组中 vgextend linuxcast /dev/sdd
3.查看扩充后VG大小 vgdisplay
---------------------
缩小一个逻辑卷(逻辑卷的缩小操作必须离线执行umount要卸载逻辑卷,否则数据丢失
1.卸载已经挂载的逻辑卷 umount /dev/vgname/lvname
2.缩小文件系统(会提示需要运行fsck检查文件系统)resize2fs /dev/vgname/lvname 1G
3.缩小LV lvreduce -L -1G /dev/vgname/lvname
4.查看缩小后的LV lvdisplay
5.挂载 mount /dev/vgname/lvname /mnt
缩小一个卷组VG(从系统中抽走一块硬盘)
1.将一个PV从制定卷组中移除 vgreducelinuxcast /dev/sdd
2.查看缩小后的卷组大小 vgdisplay