lvm逻辑卷
Linux LVM是linux逻辑卷管理(Logical Volume Manager)的缩写。他的功能是将固定的物理盘的功能能提供给用户一个动态的功能。意思就是说以前我们用盘的话,比如这个盘只有300G,那么建立在这个300G上面的文件系统最多只能用到300G,但是有了LVM这个功能后,我们建立文件系统的盘就不是建立在物理盘上,而是建立在一个叫LV逻辑卷上面,这个卷是一个逻辑概念不是物理盘,空间可能大于一个物理盘,也可能小于一个物理盘。而且这个LV逻辑卷的空间可以扩展和缩小,这样就给上层的文件系统提供了更好的支持。
lvm的主要功能
从硬盘驱动器中创建物理卷(physical volumes-PV)。
从物理卷中创建卷组(volume groups-VG)。
从卷组中创建逻辑卷(logical volumes-LV),并分派逻辑卷挂载点
其中只有逻辑卷才可以写数据
pv 处理后的物理分区,为物理卷,处于lvm最底层,可以是物理硬盘或者分区 ;
vg 物理卷组,建立在pv之上,可以含有一个到多个pv ;
pE 是vg的最小单位 。
一、逻辑卷的建立
步骤:
首先建立mkdir /weixindate
fdisk /dev/vdb 创建分区 并且修改分区 /dev/vdb5 为LVM
partprobe 同步分区列表
重新启动一个shell,监控命令监控
watch -n 1 'pvs;echo +++;vgs;echo ++++;lvs;echo +++++;df -h /weixindate'
在另外一个shell中测试:
pvcreate /dev/vdb5 创建物理卷
vgcreate weixingroup /dev/vdb5 创建物理卷组
lvcreate -L 50M -n weixindate weixingroup 新建逻辑卷并指定逻辑卷大小
mkfs.xfs /dev/weixingroup/weixindate 逻辑卷同步文件系统
mount /dev/weixingroup/weixindate /weixindate/挂载
创建完成后监控下的显示:
二、逻辑卷的拉伸
lvextend -L 80M /dev/weixingroup/weixindate 拉伸设备
xfs_growfs /dev/weixingroup/weixindate拉伸文件系统
2.当物理卷不够时,建立分区并且修改分区id fdisk /dev/vdb增加新的lvm类型设备
partprobe同步分区表
pvcreate /dev/vdb6 添加物理卷
vgextend weixingroup /dev/vdb6添加物理卷组
lvextend -L 150M /dev/weixingroup/weixindate拉伸设备
xfs_growfs /dev/weixingroup/weixindate同步拉伸文件系统
三、逻辑卷的缩减及分区的移出
首先df 查看是否挂载
umount /weixindate/卸载
mkfs.ext4 /dev/weixingroup/weixindate修改为ext4格式(因为xfs文件不支持缩减)
ext4格式下添加逻辑卷大小
mount /dev/weixingroup/weixindate /weixindate/ 挂载
lvextend -L 180M /dev/weixingroup/weixindate增加逻辑卷大小为180M
resize2fs /dev/weixingroup/weixindate 同步文件系统
减小逻辑卷大小
umount /weixindate/卸载
e2fsck -f /dev/weixingroup/weixindate 扫描
resize2fs /dev/weixingroup/weixindate 50M 缩减文件系统为50M
mount /dev/weixingroup/weixindate /weixindate/ 挂载上进行查看
lvreduce -L 50M /dev/weixingroup/weixindate 缩减设备
分区的移出
当要移出/dev/vdb5,需要把/dev/vdb5里的文件迁移到/dev/vdb6
pvmove /dev/vdb5 /dev/vdb6 将/dev/vdb5里的文件迁移到/dev/vdb6
vgreduce weixingroup /dev/vdb5 将/dev/vdb5移出 weixingroup 组
pvremove /dev/vdb5将/dev/vdb5设备移出
四、lvm逻辑卷的快照(设备快照reset)
touch /weixindate/weixindate{1..6}首先在母本建立文件
ls /weixindate/查看
建立快照 名字weixindate_backup 大小20M 在/dev/weixingroup/weixindate里拍快照
lvcreate -L 20M -n weixindate_backup -s /dev/weixingroup/weixindate
mount /dev/weixingroup/weixindate_backup /weixindate/卸载掉之前的挂载,直接挂载目前快照
cd /weixindate/ 进入该目录查看
当不小心删除/weixindate/目录下的文件
umount /weixindate/卸载快照
lvremove /dev/weixingroup/weixindate_backup删除掉快照
lvcreate -L 20M -n weixindate_backup -s /dev/weixingroup/weixindate 重新建立快照
mount /dev/weixingroup/weixindate_backup /weixindate/挂载
ls /weixindate/查看内容恢复
五、lvm的两个错误
第一个错误:
pvs 查看
pvcreate /dev/vdb5 创建物理卷
vgextend weixingroup /dev/vdb5 创建物理卷组
删除正在使用的分区
执行fdisk /dev/vdb
partprobe
解决办法:vgreduce --removemissing weixingroup
vgs
第二个错误:开机直接挂载
编辑vim /etc/fstab
写入/dev/weixindate/weixindate /weixindate ext4 defaults 0 0写错了
reboot无法正常启动
输入密码 redhat
编辑vim /etc/fstab
编辑文件修改为/dev/weixingroup/weixindate /weixindate ext4 defaults 0 0
exit 退出 关闭虚拟机重新开启并显示
六、lvm逻辑卷的删除
lvs查看
lvremove /dev/weixingroup/weixindate_backup 删除快照
umount /weixindate/卸载
lvremove /dev/weixingroup/weixindate 删除逻辑卷
vgremove weixingroup 删除物理卷组
pvremove /dev/vdb5删除物理卷
fdisk /dev/vdb进入删除分区表内lvm设备
partprobe 同步分区表
七、设置PE
新建lvm分区
partprobe 同步分区表
pvcreate /dev/vdb5 -ff
pvs查看
vgcreate vg0 /dev/vdb5 默认PE4M
vgdisplay 查看
vgremove vg0删除
vgcreate -s 16m vg0 /dev/vdb5 设置PE 16M
vgremove vg0 删除
八、设置GPT分区方式
清除msdos分区所有内容
partprobe 同步分区列表
编辑: parted /dev/vdb 写入mklabel
fdisk -l 查看
Disk label type: gpt gpt设置成功