Centos 创建逻辑卷
Posted Linux小白之路
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos 创建逻辑卷相关的知识,希望对你有一定的参考价值。
LVM —— Logical Volume Manager (逻辑卷管理)
磁盘空间的动态划分和管理
实现分区的动态拉伸和回缩
逻辑卷管理是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,用来提高磁盘分区管理的灵活性。
LV的创建过程其实是一个先整合、再划分的过程,逻辑图如下:
LVM逻辑图
一、LV的创建步骤
1)添加硬盘或者创建分区,通知内核
2)创建物理卷(pvcreate)
3)创建卷组(vgcreate)
4)创建逻辑卷(lvcreate)
5)创建文件系统(mkfs.ext4)
6)挂载使用(mkdir;mount)
1、创建分区 划分3个分区,每个3G
# fdisk /dev/sde
*需要使用t去修改系统ID类型为8e
# partx -a /dev/sde
2、创建pv
# pvcreate /dev/sde[678]
Physical volume "/dev/sde6" successfully created
Physical volume "/dev/sde7" successfully created
Physical volume "/dev/sde8" successfully created
3、创建vg
语法:vgcreate 卷组名 物理卷列表
# vgcreate vg0 /dev/sde6 /dev/sde7 /dev/sde8
4、创建LV
语法:lvcreate -L 逻辑卷的大小 -n 逻辑卷的名字 使用的卷组
# lvcreate -L 6G -n lv01 vg0
5、给lv创建文件系统
# mkfs.ext4 /dev/vg0/lv01
6、创建挂载点、挂载使用
# mkdir /lv01
# mount /dev/vg0/lv01 /lv01
二、查看信息
1、查看pv
# pvs
# pvscan
# pvdisplay
2、查看vg
# vgs
VG #PV #LV #SN Attr VSize VFree
vg0 3 1 0 wz--n- 9.02g 3.02g
# vgscan
Reading all physical volumes. This may take a while...
Found volume group "vg0" using metadata type lvm2
# vgdisplay
3、查看lv
# lvs
LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
lv01 vg0 -wi-ao--- 6.00g
# lvscan
ACTIVE '/dev/vg0/lv01' [6.00 GiB] inherit
# lvdisplay
三、管理lvm
1、给卷组增加pv —— vgextend 卷组名 物理卷的列表
# fdisk /dev/sde //sde9:5G
# partx -a /dev/sde
# pvcreate /dev/sde9
# vgextend vg0 /dev/sde9
Volume group "vg0" successfully extended
# vgs
VG #PV #LV #SN Attr VSize VFree
vg0 4 1 0 wz--n- 14.03g 8.03g
2、从卷组中移除pv —— vgreduce 卷组名 物理卷
前提:只能够移除未划分给lv的物理卷,否则会报如下错误
# vgreduce vg0 /dev/sde6
Physical volume "/dev/sde6" still in use
# pvs
PV VG Fmt Attr PSize PFree
/dev/sde6 vg0 lvm2 a-- 3.01g 0
/dev/sde7 vg0 lvm2 a-- 3.01g 16.00m
/dev/sde8 vg0 lvm2 a-- 3.01g 3.01g
/dev/sde9 vg0 lvm2 a-- 5.01g 5.01g
将/dev/sde8从卷组中移除
# vgreduce vg0 /dev/sde8
Removed "/dev/sde8" from volume group "vg0"
# vgs
VG #PV #LV #SN Attr VSize VFree
vg0 3 1 0 wz--n- 11.02g 5.02g
3、LV的拉伸(扩展) lvextend
lv好处:支持在线(不需要卸载)扩容,可以直接扩。
注意:扩展LV之前一定要有文件系统。
# vgs
VG #PV #LV #SN Attr VSize VFree
vg0 3 1 0 wz--n- 11.02g 5.02g
# lvextend -L +1G /dev/vg0/lv01 //将原有的lv01扩大1G
Extending logical volume lv01 to 7.00 GiB
Logical volume lv01 successfully resized
# resize2fs /dev/vg0/lv01 //调整文件系统的大小
至此,LV拉伸就成功了。
4、LV的回缩
回缩和拉伸是相反的过程
拉伸:先扩lv的大小,在扩文件系统 —— 先扩地,再盖房
回缩:先缩小文件系统,再缩小lv —— 先拆房,再收地
注意:回缩时候,一定是离线的,所谓离线就是先要卸载lv
1)卸载逻辑卷
# df -h | grep lv
/dev/mapper/vg0-lv01 6.9G 142M 6.5G 3% /lv01
# umount /lv01/
2)缩小文件系统
# e2fsck -f /dev/vg0/lv01
# resize2fs /dev/vg0/lv01 5G
3)缩小lv的空间
# lvreduce -L 5G /dev/vg0/lv01
WARNING: Reducing active logical volume to 5.00 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv01? [y/n]: y
Reducing logical volume lv01 to 5.00 GiB
Logical volume lv01 successfully resized
---------------------------------------------------------------------
(1)lv拉伸的步骤
a、确定你要拉伸的空间的大小
b、查看lv所属的卷组剩余空间的大小 vgs
c、如果卷组空间充足,直接可以扩lv
如果卷组空间不足,添加硬盘或者创建分区,创建pv,将pv加入到vg,然后再扩lv
d、扩展文件系统的大小
e、验证
lvs
df -h (在线扩容的)
(2)lv的回缩步骤 一般做的少
a、如果lv是挂载的,那么先卸载掉
b、回缩文件系统的大小
c、缩小lv的空间大小
d、挂载使用,验证
---------------------------------------------------------------------
5、整体拆除lv的步骤
1)若挂载,请卸载它
# df -h | grep lv
# umount /lv01
2)移除lv
# lvremove /dev/vg0/lv01
Do you really want to remove active logical volume lv01? [y/n]: y
3)移除vg
# vgremove vg0
Volume group "vg0" successfully removed
4)移除pv
# pvremove /dev/sde[6789]
5)删除分区
# fdisk /dev/sde
# partx -a /dev/sde
6)最好重启系统
6.快照卷
1.生命周期:整个数据时长,数据增长量不能超过快照卷的大小
2.快照卷一般都设定为只读
3.要和原卷在同一个卷组当中
4.创建:
#lvcreate -s -p r|w
#lvcreare -L # -n snap_name -s -p r /path/to/lvm_name
以上是关于Centos 创建逻辑卷的主要内容,如果未能解决你的问题,请参考以下文章