Linux系统中的逻辑卷管理

一、lvm组件简介

1、lvm的定义

pv(物理卷):被lv命令处理过的物理分区;处于lvm最底层,可以是物理硬盘或者分区

vg(物理卷组):被组装到一起的物理卷

pe(物理扩展):lvm设备的最小存储单元,lvm是pe的整数倍

lvm(逻辑卷):直接使用的设备,可以增大缩减并保持原有数据不变

2、逻辑卷的好处

3、lvm查看命令

pvdisplay    ##显示物理卷信息

vgdisplay    ##显示卷组信息

lvdisplay     ##显示逻辑卷信息

pvs             ##显示所有物理卷

vgs             ##显示所有卷组

lvs              ##显示所有逻辑卷

二、建立LVM分区

1.建立LVM分区
fdisk  /dev/vdb
n----->t---->l----->15---->p----->wq
2.物理硬盘
partprobe       ###同步分区表
3.PV(被安装软件的物理硬盘)
pvcreate  /dev/vdb2                         ###创建物理卷/dev/vdb2
4.VG
vgcreate  vg0 /dev/vdb2                  ###创建物理卷组文件名
5.LVM
lvcreate -L 50M -n lv0 vg0                ###-L 大小;-n 在vg0里创建名为lv0的逻辑卷
mkfs.xfs /dev/vg0/lv0                        ###格式化
mount /dev/vg0/lv0 /mnt/                  ###挂载(linux系统下的文件系统需要挂载了才能使用)

操作:

三、拉伸磁盘大小
监控:watch -n 1 'pvs;echo ===;vgs;echo ===;lvs;echo ===;df -h /mnt'
                     文件系统1M=1024G ;LVM 1M=1000G
情况1:VG够用
lvextend -L 100M /dev/vg0/lv0  ###lvm拉伸到了100M,df -h /mnt 未改变
xfs_growfs /dev/vg0/lv0     ###拉伸xfs文件系统
情况2:VG不够用
fdisk /dev/vdb      ##建立新磁盘
n---->3---->t---->l---->15--->wq
partprobe          ###同步分区表
pvcreate /dev/vdb3
vgextend  vg0 /dev/vdb3      ###拉伸VG
lvextend -L 1400M /dev/vg0/lv0

xfs_growfs /dev/vg0/lv0     ###拉伸xfs文件系统

操作:

情况1:vg够用

情况2:vg不够用

三、压缩磁盘大小
1.xfs文件系统不可压缩
  ext文件系统可压缩
  xfs文件系统转换为ext文件系统:
umount /dev/mapper/vg0-lv0       ###卸载
mkfs.ext4 /dev/mapper/vg0-lv0    ###格式化
blkid                                                ###查看
--> /dev/mapper/vg0-lv0: UUID="e89daf99-e186-4a7a-9721-0f8f6d84d25a" TYPE="ext4"
mount /dev/mapper/vg0-lv0 /mnt                ###挂载
2.ext文件系统拉伸
lvextend -L 1500M /dev/vg0/lv0         ###LVM拉伸;L后数据为拉伸后大小
resize2fs /dev/vg0/lv0                        ###文件系统的拉伸

操作:


3.压缩
   监控:watch -n 1 'pvs;echo ===;vgs;echo ===;lvs;echo ===;df -h /mnt'
umount /mnt/               ###卸载
e2fsck -f /dev/vg0/lv0    ###扫描检测,必操作,防止压缩太小,已有文件放不下
resize2fs /dev/vg0/lv0 1000M    ###先文件系统压缩;若先压缩设备,文件系统损坏
mount /dev/vg0/lv0  /mnt/    ###挂载,监控中可见压缩后文件系统大小
lvreduce -L 1000M /dev/vg0/lv0    ###LVM设备压缩

操作:


4.缩减VG
vgreduce vg0 /dev/vdb3        ###在VG设备组里去掉vdb3
vgextend vg0 /dev/vdb3        ###在VG设备组里增加vdb3
若想去掉已用设备2:
pvmove /dev/vdb2 /dev/vdb3    ###把设备2中文件迁移到设备3
vgreduce vg0 /dev/vdb2        ###此时,设备2为空;去掉设备2

操作:


四、磁盘快照(读的是原文件,更改的是快照文件)
touch     /mnt/file                        ###新建file(在原文件/dev/vg0/lv0挂载/mnt状态下)
lvcreate -L 50M -n   lv0backup   -s    /dev/vg0/lv0 ##产生50M的快照文件;-n名字;-s快照
umount     /dev/vg0/lv0                     ###卸载原文件
mount    /dev/vg0/lv0backup     /mnt/        ###挂载快照文件
rm -fr       /mnt/file                   ###删除file(实际动作在快照上)
umount     /dev/mapper/vg0-lv0backup    ###卸载快照
lvremove     /dev/vg0/lv0backup          ###删除快照
lvcreate    -L 50M -n   lv0backup   -s    /dev/vg0/lv0    ###重新快照
mount   /dev/vg0/lv0backup     /mnt/          ###挂载新快照
ls     /mnt/                                ###file文件存在

操作:


五、删除LVM可扩展磁盘分区
vim /etc/fstab
取消之前编辑最后一行
umount /mnt/
lvremove /dev/vg0/lv0backup
lvremove /dev/vg0/lv0
vgremove vg0
pvremove /dev/vdb{2,3}
df -H
fdisk /dev/vdb
d--->2--->d--->3--->wq
partprobe
cat /proc/partitions

操作:

猜你喜欢

转载自blog.csdn.net/msm05138240/article/details/83448080