DM :逻辑设备(模块)--->LVM
优点:
快照: 1、保留数据到你照快照的那一刻,并作为文件的访问通道,快照是访问同一个数据的另一个路径。
2、当一个数据被修改时,源文件会在快照中不做任何变动。我们通过原来的通道访问文件时,访问的是被修改的文件,而通过快照访问,是原来快照那一刻的结果!
3、没有改变的数据你可以通过快照进到磁盘访问到,而已经改变的数据,在改变之前会先放到快照中,所以当你访问数据时,若访问的数据发生改变了,会让你访问快照中的数据,而访问未修改的数据,可直接去磁盘访问。
4、主要作用是用来数据备份!RAID是在硬件方面进行备份,而快照是在软件方面备份,两方面都需要备份。
多路径:能够通过多条通道传输数据,可是实现备份。
动态增减:有多块物理磁盘,它能实现将这几块物理磁盘组织成一个逻辑设备,还可以再继续增加物理硬盘,也可以减少,但是它本身的逻辑空间相当于扩展分区,不能实现文件系统,最多只是一个底层的真正意义上的物理存储空间的融合器,并且能够向上提供一个统一界面。若想真正向里面存储数据的话,还得重新创建类似于逻辑分区,而这个分区才是真正意义上的扩大和缩减!
物理卷(PV):最底层次设备--->磁盘。创建物理卷时,可以创建成类似于镜像。
卷组(VG):把多个物理卷组成一个组。可以包含多个物理卷进来,进行扩展,卷组的边界有多大取决于物理卷的总和!
逻辑卷(LV): 可以划分出多个逻辑卷,多个逻辑卷之和加起来不能超过卷组容量。可以真正实现创建文件系统,存储数据。
逻辑卷本身有两种边界
物理边界:
逻辑边界:文件系统边界。每一个逻辑卷相当于一个独立的分区一样来使用。对卷创建快照实际上就是对逻辑卷创建快照,而快照卷必须与他的逻辑卷在同一个卷组当中,创建逻辑卷时,必须预留空间给快照卷使用。
PE:物理盘区,逻辑存储单位,加入卷组中才成为PE,卷组是由PE组成的。
LE: 逻辑盘区,到了逻辑卷PE就改名叫LE。逻辑卷是由LE组成的。
新增容量:就是将卷组中的PE移动几个给逻辑卷。
LVM命令
管理物理卷(PV):
pvcreate --->创建
pvremove --->移除
pvscan--->扫描
pvdisplay--->查看,简写“pvs”
pvmove --->移动,若想移除一个磁盘,先把磁盘上的数据移动到另一个磁盘上去。再移除,才能保证数据不丢失。pvmove +要移走的盘区!
管理卷组(VG):
vgcraete--->建立
vgremove--->移除
vgscan--->扫描
vgdisplay--->查看,简写“vgs”
vgextend--->扩展
vgreduce--->缩减,缩减vg的过程相当于把一个pv拿掉的过程,确保没有数据。若有数据,使用pvmove移走数据。
管理逻辑卷(LV):
lvcreate--->创建
lvremove--->移除
lvscan--->扫描
lvdisplay--->查看,简写“lvs”
lvextend--->扩展
lvreduce--->缩减
实验:
一、
1.1、创建一个10G的PV,预留5G。(/dev/sdb)
使用fdisk创建新添加磁盘的主分区,再用t改变分区类型为8e(Lvm),想删除分区用d。
L为查看全部的分区类型!(fdisk命令最多支持15个分区)
2.1、partprobe /dev/sdb : 使用partprobe可以不用重启系统即可配合fdisk工具创建新的分区
2.2、cat /proc/partitions :确保内核能识别分区
3.1、创建PV,pvcreate /dev/sdb{1,2}
3.2、使用pvs查看创建好的物理卷,查看更详细使用pvdisplay,pvscan查看当前系统一共有多少个PV,pv创建完成!
4.1、创建VG,vgcreate sun /dev/sdb{1,2}
4.2、使用vgs查看创建好的物理卷,查看更详细使用vgdisplay(可以看到PE为4MB), 使用pvdisplay可以查看其中一个分区的PE。
可以使用vgcreate -s 指定PE大小,默认4MB,指定是可以使用(K,M,G,T)单位。
4.3、移除VG,vgremove sun 建议创建逻辑卷后不要删除VG,移除后可以用vgs查看。
4.4、修改PE,要求PE为8M。vgcreate -s 8M sun /dev/sdb{1,2} 然后使用vgdisplay查看
4.5、缩减VG,vgreduce sun /dev/sdb2 ,缩减一个PV。然后可以用pvremove /dev/sdb2删除一个物理卷!
4.6、扩展VG 5g,先把原来创建的5G空间创建成PV,pvcreate /dev/sd3 , 扩展VG:vgextend sun /dev/sdb3。在使用vgs查看一下。
5.1、创建LV,lvcreate -n sun-box -L 1G sun
lvcreate -n 指定逻辑卷名称 -L 指定空间大小(M/G) 指定在哪个VG中创建
5.2、查看LV,lvdisplay /dev/sun/sun-box
要加路径:lvdisplay /dev/VG名/LV名。
5.3、格式化逻辑卷,mke2fs -j /dev/sun/sun-box 或者mkfs.ext4 /dev/卷组名/LV名
mke2fs -j /dev/vg名/lv名
5.4、挂载,mount /dev/sun/sun-box /mnt
5.5、移除LV,移除物理卷之前先卸载物理卷,umount /mnt
卸载之后可以使用命令移除,lvremove /dev/sun/sun-box
二、
扩展逻辑卷:扩展逻辑卷时,先要扩展物理边界,再扩展逻辑边界。
扩展逻辑卷的物理边界的命令:lvcreate -L +3G 增加3G空间 /PATH/TO/LV
lvcreate -L 5G 扩展为5G /PATH/TO/LV
扩展逻辑卷的逻辑边界的命令:resize2fs /dev/TO/LV 5G
指定要扩展的设备 扩展到多大
resize2fs -p /dev/TO/LV --->有多大扩展到多大
1.1、创建一个逻辑卷 lvcreate -n sun-box -L 2G sun
1.2、格式化:mke2fs -j /dev/sun/sun-box
1.3、挂载:mount /dev/sun/sun-box /mnt 自动挂载:/etc/fstab.
1.4、df -lh 查看分区使用情况
2.1、扩展物理边界:lvextend -L +3G /dev/sun/sun-box
2.2、扩展逻辑边界:resize2fs -p /dev/sun/sun-box
注意!若内核不支持在线扩展,可先用umount /sun2 卸载
然后用e2fsck -f /dev/sun/sun-box 检测区块大小
最后可以用resize2fs -p /dev/sun/sun-box 去扩展了!
三、
缩减逻辑卷:缩减逻辑卷时,先要缩减逻辑边界,再去缩减物理边界。
注意! 1、不能在线缩减,得先卸载
2、确保缩减后的空间依然能存储原有的所有数据
3、在缩减之前应该先强行检查文件系统,以确保文件系统一致性状态
缩减逻辑卷的逻辑边界的命令:resize2fs /dev/sun/sun-box 3G :缩减到3G!
缩减逻辑卷的物理边界的命令:lvreduce -L -3G 缩减3G空间 /dev/sun/sun-box
lvreduce -L 3G 缩减到3G空间/dev/sun/sun-box
1.1、先用df -lh 看一下已经使用了多少空间,确保缩减后的空间不会小于已使用的空间。
1.2、卸载:umount /sun2 ,再用mount 查看一下,确保操作无误!
1.3、强行检测文件系统: e2fsck -f /dev/sun/sun-box
1.4、缩减逻辑边界:resize2fs /dev/sun/sun-box 9G :缩减到9G空间
1.5、缩减物理边界:lvreduce -L -3G /dev/sun/sun-box :缩减3G
1.6、使用df -lh 查看一下空间使用情况。
四、
快照卷--->可以在线创建,不用卸载LV卷
注意!
1、快照卷生命周期为整个数据访问时段,在这段时长内,数据的增长不能超出快照卷的大小!最好快照卷与原卷一样大!!!
2、快照卷应该是只读的
3、跟原卷在同一个卷组内
lvcreate -s :创建快照卷
-p :指定权限(r|w)
-L :卷容量,
-n :名称
lvcreate -L 5G -n 名称 -p r 逻辑卷路径(/dev/sun/sun-box)
1.1、创建快照卷:lvcreate -L 2G -n sun-box-k -s -p r /dev/sun/sun-box
1.2、使用lvs 查看一下快照卷
1.3、挂载快照卷:mount /dev/sun/sun-box-k /dev/sun-k
1.4、改变一下原卷中的文件,再看一下快照卷中的文件。
1.5、卸载快照卷:umount /sun-box-k
1.6、删除快照卷:lvremove /dev/sun/sun-box-k
如果此文章有帮助到您,还请麻烦动动您的小手点个赞,谢谢~
【免费】最新版Linux运维技术入门视频教程请移步:https://edu.csdn.net/course/detail/29944
Linux运维技术交流群:962822359