Linux LVM逻辑卷

LVM逻辑卷

特点:可以弹性的调整文件系统的容量
LVM:PV、PE、VG、LV

LVM: 逻辑卷管理器

PV:物理卷
实际分区实际上调整系统标识符(system ID),8e(LVM的标识符),
pvcreate命令将它转换为最底层的物理卷(pv)

VG: 卷用户组
将许多PV整合成一个VG
每个VG最多只能包含65534个PE
默认情况下,VG最大容量256G

PE:物理扩展块
相当于block,默认4M

LV:逻辑卷
VG切割成LV,这个LV就是可以被格式化挂载的类似分区

LVM相关命令:
任务 PV阶段 VG阶段 LV阶段
查找(scan) pvscan vgscan lvscan
新建(create) pvcreate vgcreate lvcreate
显示(display) pvdisplay vgdisplay lvdisplay
增加(extend) vgextend lvextend(lvresize)
减少(reduce) vgreduce lvreduce(lvresize)
删除(remove) pvremove vgremove lvremove
属性(attribute) pvchange vgchange lvchange

1.先分4个分区,每个分区1.5G,
# fdisk -l
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 3147775 1572864 83 Linux
/dev/sdb2 3147776 6293503 1572864 83 Linux
/dev/sdb3 6293504 9439231 1572864 83 Linux
/dev/sdb4 9439232 41943039 16251904 5 Extended
/dev/sdb5 9441280 12587007 1572864 83 Linux

2.全部分区整合成一个VG,VG的名称为sunvg,PE的大小设置为16M

  • PV阶段:
    1.检查有无PV在系统上,然后将/dev/sdb{1,2,3,5}
    新建成PV格式

    pvscan

    pvcreate /dev/sdb{1,2,3,5}

    Physical volume “/dev/sdb1” successfully created
    Physical volume “/dev/sdb2” successfully created
    Physical volume “/dev/sdb3” successfully created
    Physical volume “/dev/sdb5” successfully created

    pvscan

    PV /dev/sdb1 lvm2 [1.50 GiB]
    PV /dev/sdb5 lvm2 [1.50 GiB]
    PV /dev/sdb3 lvm2 [1.50 GiB]
    PV /dev/sdb2 lvm2 [1.50 GiB]

    pvdisplay

VG阶段:
# vgcreate [-s N[m g t] ] vg名称 pv名称

# vgcreate  -s  16M   sunvg   /dev/sdb{1,2,3,5}

# vgscan 
# pvscan 
# vgdisplay

增加VG的大小:
# fdisk  /dev/sdb  --> /dev/sdb6
# pvcreate  /dev/sdb6
# vgextend  sunvg   /dev/sdb6 

LV阶段:
# lvcreate [-L N[mgt]] -n LV名称 vg名称
-l PE的数量
# lvcreate -l 475 -n sunlv sunvg
逻辑卷设备位置:
/dev/sunvg/sunlv

# lvdisplay

格式化并挂载使用:
# mkfs.ext4 /dev/sunvg/sunlv
# mkdir /mnt/lvm
# mount /dev/sunvg/sunlv /mnt/lvm
# df
/dev/mapper/sunvg-sunlv 7529096 34188 7089404 1% /mnt/lvm

###############################################
放大LV容量:
1.创建一个分区
2.利用pvcreate构建一个物理卷
3.利用vgextend将物理卷加入到sunvg
4.利用lvresize将新加入的pv中的PE加入到sunlv
5.通过resize2fs将文件系统的容量确实增加!

1.处理出来一个3G新的分区,应该/dev/sdb7
#fdisk /dev/sdb
/dev/sdb7 – > 3G大小
2.新建新的物理卷:
# pvcreate /dev/sdb7
3.加入VG中:
# vgextend sunvg /dev/sdb7

用命令vgdisplay查看有多少空闲的PE:
# vgdisplay 

4.放大LV:
# lvresize -l +191 /dev/sunvg/sunlv
# lvdisplay
# df -h
//容量确实增加了,但是文件系统没有变化
5.完整的将lv的容量扩充到整个文件系统中:
# resize2fs /dev/sunvg/sunlv
# df -h //确认文件系统是否扩充成功

减少LV容量:/dev/sdb6
1.直接降低文件系统的容量:
# resize2fs /dev/sunvg/sunlv 9G
//放大可以在线进行,减少不行,需要先卸载
# umount /mnt/lvm
//先卸载lv
# resize2fs /dev/sunvg/sunlv 9G
resize2fs 1.42.9 (28-Dec-2013)
请先运行 ‘e2fsck -f /dev/sunvg/sunlv’.
# e2fsck -f /dev/sunvg/sunlv
# resize2fs /dev/sunvg/sunlv 9G
//按照提示执行完之后,再执行一遍
# mount /dev/sunvg/sunlv /mnt/lvm
//先挂载上,再查看
# df -h
//查看文件系统是否减少
2.将lv的容量减少:
# pvdisplay
//找到/dev/sdb6 的PE数量
# lvresize -l -95 /dev/sunvg/sunlv
//会有警告信息,直接按y

3.从卷组中减少/dev/sdb6
# pvdisplay
//确定哪一个物理卷是使用的或者空闲的
# pvmove /dev/sdb6 /dev/sdb7
//将/dev/sdb6中的PE全部移动到/dev/sdb7中
# vgreduce sunvg /dev/sdb6
# pvscan
//查看/dev/sdb6 是否还在sunvg中
4.直接从物理卷中删除/dev/sdb6
# pvremove /dev/sdb6

######################################
还原环境:
# lvremove sunlv
# vgremove sunvg
# pvremove /dev/sdb{1,2,3,5,7}
# lsblk

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尹汇川

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值