LVM分为
1.pv物理卷
2.vg物理卷组
3.lvm逻辑卷
4.pe物理拓展(最小存储单元)
watch -n 1 'pvs;vgs;lvs;df -h' /mnt 监控命令
mkfs(只能拉伸不能缩减)
fdisk /dev/vdb 创建3个分区 用t将ip改为8e
创建修改完后,可以输入p查看
显示为上图表示修改完成 wq退出保存即可
接下来我们要做5步
1.pvcreate /dev/vdb1 创建一个pv物理卷
2.vgcreate vg0 /dev/vdb1 创建一个物理卷组
观察监控命令,可以看到创建是成功了的
3.lvcreate -L 300M -n lv0 vg0 创建一个lvm并从vg取用300M
上图笔者有一步命令输入错误,报错后也修改了,大家就当没看到好了-。-
4.mkfs.xfs /dev/vg0/lv0 格式化/dev/vg0/lv0 (因为是新创建的逻辑卷,所以需要格式化后才能使用)
5.mount /dev/vg0/lv0 /mnt/ 挂载
然后这个LVM就可以使用了
#####################################################################
当创建的LVM容量不足时,我们就需要将它增大
LVM增大的方法
lvextend -L 500M /dev/vg0/lv0 将lvm增大到500M(需要增大到多少就输入多少,需要注意的是,
文中的500M是指增大到,而不是增加)
因为增大部分的lv0空间(lvm命名,可以随意)并没有格式化,所以那部分空间不能够使用
而为了保证之前所存文件的完整性,我们需要通过热拉伸将没有格式化部分格式化
xfs_growfs /dev/vg0/lv0 热拉伸命令
当vg的大小不够用时,可以通过增加 pv(物理卷)的方式增加vg的大小
pvcreate /dev/vdb2
vgextend vg0 /dev/vdb2
vg增大后,可以通过(与之前相同,不赘述了)
lvextend -L 1500M /dev/vg0/lv0
xfs_growfs /dev/vg0/lv0
然后增加部分就可以使用了
接下来我们介绍LVM的另一个模式 ext4(可以拉伸和缩减)
umount /mnt/ 首先,我们需要先卸载掉之前挂载的lvm
从监控窗口可以看到挂载变成了vda1 说明下载成功了
接着输入 mkfs.ext4 /dev/vg0/lv0 将lv0格式化并转换格式
然后mount /dev/vg0/lv0 /mnt/ 挂载
mount 查看挂载格式
最后一行可以看到,ext4 说明已经转换成ext4
lvextend -L 1800M /dev/vg0/lv0 将lvm增大到1800M
resize2fs /dev/vg0/lv0 通过热拉伸 将没有格式化部分格式化(注意:ext4与mkfs的热拉伸命令不同)
ok,至此我们已经将lv0增大到了1800M 结下来,我们将要进行缩减操作
首先,我们需要
umount /mnt/ 卸载挂载
e2fsck -f /dev/vg0/lv0 扫描设备中的文件大小(这一步看似没有什么作用,可是如果因为不扫描文件大小,
缩小大小不足以容纳文件,会造成文件损坏丢失)
最后一行有显示卷中文件大小
resize2fs /dev/vg0/lv0 1000M 接着缩减文件系统大小
mount /dev/vg0/lv0 /mnt/ 挂载文件 (此时可以看到缩减的文件系统)
lvreduce -L 1000M /dev/vg0/lv0 缩减设备
当需要移除有数据的设备时,需要将数据移到其他设备上
pvmove /dev/vdb1 /dev/vdb1 /dev/vdb2 将vdb1设备上的数据移动到vdb2(这里假设的是要移除vdb1命令根据实际情况更改)
vgreduce vg0 /dev/vdb1 将vdb1从vg0物理卷组移出
pvremove /dev/vdb1 将vdb1移除
接下来介绍一下ext4的快照功能
首先我们先得把移除的vdb1先装回来,不然空间可能不够储存快照哦
在已经挂载的/mnt/ 下创建文件
lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0 接下来我们创建快照大小为50M的/dev/vg0/lv0镜像文件
mount /dev/vg0/lv0backup /mnt/ 挂载快照文件
接下来我们试验一下,删除/mnt/里的文件
统统删掉了
接下来我们
umount /mnt/ 卸载快照文件
lvremove /dev/vg0/lv0backup 删除快照文件
lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0 重新创建
mount /dev/vg0/lv0backup /mnt/ 重新挂载
这里有个小细节,笔者一开在/mnt/目录下进行卸载,引起了报错,专门截下来,用作排错的一点点小参考
ok,我们现在再进入/mnt/目录下,看看删除的文件是否恢复了呢
因为删除的是快照的缘故,文件又恢复回来了
ok,我们进行了LVM的许多操作,已经会安装LVM设备了,会装还得会删,接下来说一下LVM设备的删除
删除设备
umount /mnt/ 卸载挂载在/mnt/下的设备(如果快照还在挂载,记得卸载两次哦)
lvremove /dev/vg0/lv0backup 删除快照文件
lvremove /dev/vg0/lv0 删除lvm设备
vgremove vg0 删除vg在已经挂载的/mnt/ 下创建文件
pvremove /dev/vdb{1..2} 删除pv
一步一步执行就好了,删除的部分就不截图了