Linux之LVM逻辑卷管理
2018-01-25 11:42
267 查看
一、什么是Lvm
背景:就像是微信保存所有人的朋友圈,每个人一进去就可以看见,这需要存储空间,而且你不可能预知它有多大,不能直接给他固定的空间,所以我们需要LVM这种可以当空间不够使用的时候,可以继续将其它的硬盘的分区加入其中直接投入使用的方式。
1、lvm:是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。(把下面比喻成橘子榨汁)
2、pv:是物理卷(physical volume)的简写,就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。(相当于是橘子)
3、vg:是卷组(Volume
Group)的简写。LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。(相当于是榨汁机)
4、pe:每一个物理卷被划分为称为PE(Physical
Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。(相当于是榨汁的果粒)
5、le:LE(logical
extent):逻辑卷也被划分为被称为LE(Logical Extents) 的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。(相当于是到手的橘子汁)
总结:LVM存在的意义就是用软件实现设备可拉伸或缩减,而设备中存在的数据不变.
二、LVM的管理
1、LVM的建立
1)执行分区命令fdisk
/dev/vdb
建立好一个分区后,改变他的类型为Linux
Lvm,如下图
2、lvm的检测
可以用
的命令来检测,如下图,我们可以给一个监控命令,监视我们下来的操作
3、lvm的建立,在建好LVM分区的前提下
前三步建立好pv(物理卷),vg(物理卷组),lv(逻辑卷),第四部格式化设备,第五步将设备挂载在目录上看是否可以被系统使用
这样我们就完成LVM的建立
4、Lvm的拉伸
第一种方式:1)当vg中容量够用时,先对逻辑卷扩展
此时设备大小还是300,再同步设备,如下
2)当vg中的 剩余容量不够所要扩充的大小时,就需要先扩展vg,然后再扩充lv先建立新的普通分区,转化为lvm类型,方式如上,然后将其创建为新的pv,如下图
这时我就可以取1500M,原来不能取
第二种方式:xfs文件不可缩减 ,所以要把其换成ext4文件,mkfs.ext4+设备使可以缩减(改变类型先卸下挂载),ext4同样可以扩展,如下图,现将xfs文件转换成ext4文件
然后我们将其扩展,此时同步设备大小命令变为resize2fs+设备
5、LVM的缩减
先卸下挂载;在进行扫描操作e2fsck -f +设备;在将设备缩小到你要的(和扩展相反,缩减要先缩减设备,要不然会损坏里面容)
最后再将逻辑卷缩减,如下图
6、物理卷组的移除
在物理卷没有数据时,可以直接移除,当物理卷有数据要移除物理卷前,需要将其中的数据移动到其他pv中,否则不能被允许。
第一步:转移数据pvmove
/dev/vdb1 /dev/vdb2
第二步:把物理卷从物理卷组中移走:vgreduce
vg0 /dev/vdb1
第三步:移除设备pvremove
/dev/vdb1
7、LVM的快照(可以完成数据的恢复)
1)我们先在/mnt/下创建一些文件再将其卸下挂载,然后建立lv0的快照:lvcreate -L
20M -n lv0-backup -s /dev/vg0/lv0,建立好后将其挂载,如下图
挂载中下是的大小是原lv0大小,但实际上可以更改的只是backup中的20M内容
2)此时我们将/mnt/下的文件进行删除操作
3)这时候我们将backup移除,再重新建立一个快照,打开会发现/mnt/下的内容又恢复。如下图
这样我们的操作实际上是在快照中进行,但操作的内容是真实的lv0中的内容,如果操作失败,只需要删除快照并重新在建立快照,这样可以做到有效的保护数据
8、LVM的删除
建立时是从大到小,删除是从小到大。先卸下挂载,在删除逻辑卷,在删除物理卷组,最后删除物理卷。如果要删除的彻底,可以fdisk
到分区,删除LVM分区,如下图
但是有时候忘记了直接删除了分区,而LVM还在工作,再想移除时产生报错,如何处理,用vgreduce
--removemissing
去处理,如下图:为正常工作
此时忘记失误删除设备分区,报错:
我们用vgreduce
--removemissing +误删除的分区处理
背景:就像是微信保存所有人的朋友圈,每个人一进去就可以看见,这需要存储空间,而且你不可能预知它有多大,不能直接给他固定的空间,所以我们需要LVM这种可以当空间不够使用的时候,可以继续将其它的硬盘的分区加入其中直接投入使用的方式。
1、lvm:是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。(把下面比喻成橘子榨汁)
2、pv:是物理卷(physical volume)的简写,就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。(相当于是橘子)
3、vg:是卷组(Volume
Group)的简写。LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。(相当于是榨汁机)
4、pe:每一个物理卷被划分为称为PE(Physical
Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。(相当于是榨汁的果粒)
5、le:LE(logical
extent):逻辑卷也被划分为被称为LE(Logical Extents) 的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。(相当于是到手的橘子汁)
总结:LVM存在的意义就是用软件实现设备可拉伸或缩减,而设备中存在的数据不变.
二、LVM的管理
1、LVM的建立
1)执行分区命令fdisk
/dev/vdb
建立好一个分区后,改变他的类型为Linux
Lvm,如下图
2、lvm的检测
可以用
的命令来检测,如下图,我们可以给一个监控命令,监视我们下来的操作
3、lvm的建立,在建好LVM分区的前提下
前三步建立好pv(物理卷),vg(物理卷组),lv(逻辑卷),第四部格式化设备,第五步将设备挂载在目录上看是否可以被系统使用
这样我们就完成LVM的建立
4、Lvm的拉伸
第一种方式:1)当vg中容量够用时,先对逻辑卷扩展
此时设备大小还是300,再同步设备,如下
2)当vg中的 剩余容量不够所要扩充的大小时,就需要先扩展vg,然后再扩充lv先建立新的普通分区,转化为lvm类型,方式如上,然后将其创建为新的pv,如下图
这时我就可以取1500M,原来不能取
第二种方式:xfs文件不可缩减 ,所以要把其换成ext4文件,mkfs.ext4+设备使可以缩减(改变类型先卸下挂载),ext4同样可以扩展,如下图,现将xfs文件转换成ext4文件
然后我们将其扩展,此时同步设备大小命令变为resize2fs+设备
5、LVM的缩减
先卸下挂载;在进行扫描操作e2fsck -f +设备;在将设备缩小到你要的(和扩展相反,缩减要先缩减设备,要不然会损坏里面容)
最后再将逻辑卷缩减,如下图
6、物理卷组的移除
在物理卷没有数据时,可以直接移除,当物理卷有数据要移除物理卷前,需要将其中的数据移动到其他pv中,否则不能被允许。
第一步:转移数据pvmove
/dev/vdb1 /dev/vdb2
第二步:把物理卷从物理卷组中移走:vgreduce
vg0 /dev/vdb1
第三步:移除设备pvremove
/dev/vdb1
7、LVM的快照(可以完成数据的恢复)
1)我们先在/mnt/下创建一些文件再将其卸下挂载,然后建立lv0的快照:lvcreate -L
20M -n lv0-backup -s /dev/vg0/lv0,建立好后将其挂载,如下图
挂载中下是的大小是原lv0大小,但实际上可以更改的只是backup中的20M内容
2)此时我们将/mnt/下的文件进行删除操作
3)这时候我们将backup移除,再重新建立一个快照,打开会发现/mnt/下的内容又恢复。如下图
这样我们的操作实际上是在快照中进行,但操作的内容是真实的lv0中的内容,如果操作失败,只需要删除快照并重新在建立快照,这样可以做到有效的保护数据
8、LVM的删除
建立时是从大到小,删除是从小到大。先卸下挂载,在删除逻辑卷,在删除物理卷组,最后删除物理卷。如果要删除的彻底,可以fdisk
到分区,删除LVM分区,如下图
但是有时候忘记了直接删除了分区,而LVM还在工作,再想移除时产生报错,如何处理,用vgreduce
--removemissing
去处理,如下图:为正常工作
此时忘记失误删除设备分区,报错:
我们用vgreduce
--removemissing +误删除的分区处理
相关文章推荐
- Linux的lvm逻辑卷管理
- 马哥2016全新Linux+Python高端运维班-Linux bash脚本练习,及软RAID,LVM逻辑卷管理
- LINUX 之LVM逻辑卷管理
- RedHat Enterprise Linux 5.0之LVM逻辑卷管理
- Linux实用逻辑卷之建立LVM
- Linux中的LVM(逻辑卷管理)
- 在Linux中扩展/缩减LVM(第二部分)
- [Linux]VMware 无重启添加scsi硬盘实现LVM动态扩容(上)
- 在Linux系统中,实现LVM逻辑卷管理及磁盘配额
- Linux的lvm讲解与磁盘故障小案例
- VMware esxi在线增加Linux LVM硬盘不需重新启动
- linux动态调整磁盘的容量<lvm>
- Linux下lvm中PV丢失找回方法
- LINUX中LVM的创建过程
- Linux系统LVM的使用
- Linux—RAID和LVM的实现
- Linux磁盘配额和LVM逻辑卷
- linux-LVM讲解
- [Linux 存储管理] LVM结构
- 逻辑卷管理(LVM) Linux 用户指南