一. LVM作用
LVM作用主要是在实现一个可以弹性调整容量的文件系统上,而不是在新建一个性能为主的磁盘上
二. 实现流程
三.LVM的实现
1.PV的创建阶段
pvcreate: 将物理分区创建成为pv
pvscan: 查询目前系统里面任何具有PV的磁盘
pvdisplay: 显示目前系统上面的PV状态
pvremove: 将PV属性删除,让该分区不具备PV属性
创建步骤:
(1)先准备块设备,利用fdisk调整分区id为8e
(2)然后创建pv:pvcreate [-f] /dev/sd{d,f,g,h}
(3)查看pv信息:pvdisplay /dev/sda{d,f,g,h}
2.VG的创建阶段
vgcreate: 新建VG
vgcreate [-s N[MGT]] VG名称 PV名称
-s:后面接PE的大小,单位可以是M,G,T
vgscan: 查找系统上是否有VG存在
vgdisplay: 显示系统目前的VG状态
vgextend: 在VG内增加额外的PV
vgreduce: 在VG内删除PV
vgchange: 设置VG是否启动
vgremove: 删除一个VG
创建步骤:
(1)vgcreate -s 16M VGzhang /dev/sd{d,e,f,g}1创建一个VG名为VGzhang,PE大小为16M
(2)vgscan 搜寻系统上是否存在VG
(3)pvscan 查看具有PV的磁盘
...
(4)vgreduce VGzhang /dev/sdg1 把VGzhang中的一个PV删除
(5)vgertend VGzhang /dev/sdg1 增加VGzhang的容量
3.lv的创建阶段
lvcreate: 新建LV
lvcreate [-L N[M,G,T]] [-n LV名称] VG名称
lvcreate [-l N] [-n LV名称] VG名称
-L: 后面接容量,容量单位为M,G,T 最小单位为PE
-l: 后面跟PE的"个数",而不是数量.
-n: 后面接LV的名称
lvscan: 查询系统上的LV
lvdisplay: 显示系统上的LV状态
lvextend: 在LV上新增加容量
lvreduce: 在LV上减少容量
lvremove: 删除一个LV
lvresize: 对LV进行容量大小的调整
创建步骤:
(1)lvcreate -l 256 -n LVzhang VGzhang 创建LV PE块个数为256
(2)ll /dev/VGzhang/LVzhang查看LVzhang
(3)lvdisplay 显示系统的LV状态
注意:LV分区准备好后,是对LV的处理,VG的名称为VGzhang, LV的名称就要使用/dev/VGzhang/LVzhang
4.文件系统阶段
创建步骤:
(1)mkfs -t ext3 /dev/VGzhang/LVzhang
(2)mkdir /mnt/lvm
(3)mount /dev/VGzhang/LVzhang /mnt/lvm
四. lV的扩容和缩小
扩容步骤:
(1)用fdisk配置新的具有8e system ID的分区
(2)利用pvcreate创建PV
(3)利用vgextend将PV加入VGzhang
vgextend VGzhang /dev/sdd2
(4)利用lvresize将新加入的PV内的PE加入LVzhang中
lvresize -l +64 /dev/VGzhang/LVzhang (通过vgdisplay查看新增加的PE个数)
注意:运行上面的命令后,LV确没有相应的增加,要运行下面的命令
(5)利用resize2fs将文件系统的容量确实添加
resize2fs /dev/VGzhang/LVzhang
注意:在上面的操作中数据是不会丢失的
下面了解下resize2fs
resize2fs [-f] [device] [size]
-f: 强制进行resize的操作
[device]: 设备的文件名
[size]: 可以加也可以不加,如果加上size的话,那么必须给一个单位如M,G等,如果没有加,默认为表示整个分区的容量来处理
缩小步骤:
(1)先卸载已经挂载的lv
(2)强制进行磁盘检测
e2fsck -f /dev/VGzhang/LVzhang
(3)处理要缩小的容量
resize2fs /dev/VGzhang/LVzhang 1G
(4)减小要缩小的容量
lvreduce -L 1G /dev/VGzhang/LVzhang
(5)重新挂载
mount /dev/VGzhang/LVzhang /mnt/lvm/
(6)确定/dev/sdd2中的PE是否都删除了,若有没有删除的要把PE转移到其他分区
pvremove /dev/sdd2 /dev/sdd1
(7)把/dev/sdd2移出组卷
vgreduce VGzhang /dev/sdd2
(8)把pv删除
pvremove /dev/sdd2
五. 创建快照
(1)lvcreate -L 1G -s -n ss123 /dev/VGzhanf/LVzhang 创建快照
(2)vldisplay 显示信息
(3)mkdir /mnt/snapshot 创建快照目录
(4)mount /dev/VGzhang/LV123 /mnt/snapshot 挂载
六. 利用快照恢复数据
(1)快照挂载 mount /dev/VGzhang/ss123 /mnt/snapshot
注意:快照挂载后才能查看里面的数据
(2)压缩快照的数据至文件夹backup
tar -jcvf /root/backup/lvm.tar.bz2 /mnt/snapshot/*
(3)卸载/mnt/lvm
umount /mnt/lvm
(4)格式化逻辑卷
mkfs.ext3 /dev/VGzhang/LVzhang
(5)挂载逻辑卷
mount /dev/VGzhang/LVzhang /mnt/lvm
(6)把backup的压缩备份恢复到逻辑卷中3
tar -jxvf /root/backuo/lv.tar.bz2 -C /mnt/lvm