LVM的建立

LVM,即逻辑卷管理,主要是为了让用户在无需停机的情况下对各个分区进行调整。
1.LVM建立
1.划分物理分区并把分区id修改mbr为8e(在gpt中id修改为15)

pvs|pvdisplay
vgs|vgdisplay
lvs|lvdisplay
watch -n 1 'pvs;vgs;lvs;df -h /mnt/'
fdisk /dev/vdb              ##创建一个分区并修改格式为linux lvm
pvcreate  /dev/vdb1         ##建立PV分区
vgcreate  -s 2M(必须是2的整数倍具体见man) xxx /dev/vdb1 ##在pv分区中建立vg
lvcreate  -L 100M -n xxx xxx        ##取出100M建立LVM
mkfs.xfs  /dev/xxx/xxx          ##格式化
mount /dev/xxx/lv0  /mnt/       ##挂载

这里写图片描述

2.扩大文件系统
当VG中的容量够用时:

lvextend -L 300M /dev/xxx/xxx       ##扩展到300M
xfs_growfs  /dev/xxx/xxx        ##expand an XFS filesystem

这里写图片描述
当VG中的容量不够用时:

fdisk /dev/vdb              ##再创建一个分区并修改格式为linux lvm
pvcreate  /dev/vdb2         ##建立PV分区
vgextend  xxx  /dev/vdb2        ##扩展vg
lvextend -L 600M /dev/xxx/lv0   ##扩展lv
xfs_growfs  /dev/xxx/lv0        ##expand an XFS filesystem

这里写图片描述
这里写图片描述

umount /mnt/            ##取消挂载
mkfs.ext4 /dev/xxx/lv0      ##xfs文件系统可以扩大,但是不可以缩减
                        ##ext4文件系统可以扩大,也可以缩减
umount /mnt/
e2fsck -f /dev/xxx/lv0      ##check检测设备
resize2fs  /dev/xxx/lv0  550M   ##改变文件系统的大小
mount /dev/xxx/lv0 /mnt/
lvreduce -L 550M /dev/xxx/lv0   ##缩减设备

这里写图片描述
3.删除不需要的pv

pvmove  /dev/vdb1 /dev/vdb2 ##当我要删除的分区存在数据时,需要先作数据迁移
vgreduce xxx  /dev/vdb1         ##把分区从组里取出来
pvremove  /dev/vdb1     ##移除分区

这里写图片描述
这里写图片描述
4.lvm快照

touch /mnt/file
lvcreate  -L 10M -n lv0-backup -s /dev/westos/lv0
mount /dev/vg0/lv0-backup /mnt
rm -fr /mnt/*
lvremove /dev/vg0/lv0-backup
lvcreate  -L 10M -n lv0-backup -s /dev/westos/lv0
/mnt下的数据还原

这里写图片描述
5.删除lvm分区(逐级删除lv-vg-pv)

umount /mnt/
lvremove /dev/vg0/lv0
vgremove vg0
pvremove /dev/vdb2

这里写图片描述
@@@@@@@当我们误删lvm分区导致出现错误时@@@@@@@
执行下面操作

vgreduce --removemissing vg0   ##从容器中移除掉丢失的分区
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章