LVM逻辑卷
一.逻辑卷简介
LVM 是 Logical Volume Manager 的简称,译为中文就是逻辑卷管理。它是 Linux 下对硬盘分区的一种管理机制。LVM 适合于管理大存储设备,并允许用户动态调整文件系统的大小。此外,LVM 的快照功能可以帮助我们快速备份数据。LVM 为我们提供了逻辑概念上的磁盘,使得文件系统不再关心底层物理磁盘的概念。
分区缺点:1.没有备份功能 2.无法功能 3.性能取决于硬盘本身
逻辑卷解决了分区无法扩容的问题
二.物理卷,卷组,逻辑卷,物理扩展的简要说明
物理卷(Physical Volume,PV):就是真正的 物理硬盘 或 分区
卷组(Volume Group,VG):将多个物理卷合起来就组成了卷组。组成同一个卷组的物理卷可以是同一块硬盘的不同分区,也可以是不同硬盘上的不同分区。我们可以把卷组想象为一块逻辑硬盘。
逻辑卷(Logical Volume,LV):卷组是一块逻辑硬盘,硬盘必须分区之后才能使用,我们把这个分区称作逻辑卷。逻辑卷可以被格式化和写入数据。我们可以把逻辑卷想象为分区。
物理扩展(Physical Extend,PE):PE 是用来保存数据的最小单元,我们的数据实际上都是写入 PE 当中的。PE 的大小是可以配置的,默认是 4MB。
三.创建逻辑卷思路
(1)先确定可以使用的磁盘或分区
(2)再将硬盘拆分成一个个小的块(块大小默认为4M)
(3)然后将这些块组成一个集合
(4)从这些集合取块(取空间)
通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备 中的PE加到LV中以加大容量
四.实验
(1)将磁盘分区sdb1(8e)和磁盘sdc创建为物理卷
使用 pvcreate 命令创建物理卷
(2)建立卷组
使用 vgcreate 命令建立卷组
(3)建立逻辑卷
使用lvcreate 命令建立逻辑卷
-L 容量:指定逻辑卷大小,单位为 MB、GB、TB 等;
-n 逻辑卷名:指定逻辑卷名;
mysql :逻辑卷名
建立好的逻辑卷有两种叫法
/dev/mapper/zxy1-mysql
/dev/zxy1/mysql
(4)格式化
对建立好的逻辑卷进行格式化处理
(5)临时挂载(mount)
将格式化过的逻辑卷挂载到 /mnt
(6)永久挂载
用 blkid 命令查找到/dev/zxy1/mysql的uuid
进入 /vim/etc/fstab 加入uuid和挂载点文件系统类型和权限等
(7)当逻辑卷内存不够需要扩容时
1.卷组中的空间足够扩容
xfs系统
lvextend 扩容逻辑卷 加10G
lvextend -L +10G 逻辑卷名字
ext4 系统
resize2fs 逻辑卷名字
2.卷组中空间不足够扩容时
我们需要先对卷组进行扩容
使用vgextend命令扩容卷组,/dev/sdd为空磁盘
vgextend 卷组名 设备名
再对逻辑卷进行扩容
选项: -r 同步系统
(8)当需要扩容根分区时
五.删除逻辑卷和缩减大小
1.删除逻辑卷和卷组
使用lvremove 命令删除逻辑卷
lvremove 逻辑名
使用vgremove 命令删除卷组
vgremove 卷名
2.缩减大小
ext4可以xfs无法缩减,缩减会影响业务。
步骤:
1.解挂载
2.检查文件系统完整性
3.缩减文件系统
4.缩减逻辑卷上下一致
5.再挂载回去
[root@localhost ~]# resize2fs /dev/vg01/mysql 2G
resize2fs 1.42.9 (28-Dec-2013)
请先运行 'e2fsck -f /dev/vg01/mysql'.
[root@localhost ~]# e2fsck -f /dev/vg01/mysql
[root@localhost ~]# resize2fs /dev/vg01/mysql 2G
[root@localhost ~]# lvreduce -L 2G /dev/vg01/mysql
[root@localhost ~]# mount -a
示例:
六.总结
功能 | pv(物理卷) | vg(卷组) | lv(逻辑卷) |
---|---|---|---|
scan(扫描) | pvscan | vgscan | lvscan |
create(创建) | pvcreate | vgcreate | lvcreate |
display(显示) | pvdisplay | vgdisplay | lvdisplay |
extend(扩容) | vgextend | lvextend | |
remove(删除) | vgremove | lvremove |
lvextend
选项:
-L 容量:指定逻辑卷大小,单位为 MB、GB、TB 等;
-l 个数:按照 PE 个数指定逻辑卷大小,这个参数需要换算容量,太麻烦;
-n 逻辑卷名:指定逻辑卷名;
-r 立即刷新