linux——lvm磁盘管理

一曲冷凌霜 提交于 2019-11-29 10:27:52
基本分区特点

1、分区创建好不能扩容
2、分区的空间不能跨盘

LVM:逻辑卷管理
基本概念:
PV:物理卷,使用pvcreate将物理磁盘或者物理分区创建成LVM中物理卷pv

VG:卷组,pv的集合。相当于逻辑上的大硬盘。pv加入VG后转换为配块,然后由vg同一管理

LV:逻辑卷在VG上划分的一块存储空间,对该空间制作文件系统挂载使用。

PE:物理存储块,当PV加入到到卷组时,按照事先的设定将PV空间划分成多个PE

LE:逻辑存储块,PE被LV占用后称为LE

查看文件系统的使用率
df -h

重置文件系统
resize2fs /dev/bluevg/lv1

查看所有VG信息
vgs

扩容时强制重置文件系统
lvexrend -L +1G -rf /dev/bluevg/lv1

标记lvm
命令:toggle 1 lvm #标记成lvm

===========================
LVM逻辑卷管理
逻辑卷管理-LVM
LVM( Logical Volume Manager,逻辑卷管理器)

LVM最早源于IBM的AIX系统

LVM是建立在磁盘和分区之上的一个逻辑层,用来提高磁盘分区管理的灵活性

LVM可以对磁盘分区按照组的方式进行命名、管理和分配

LVM术语:
1. Physical Volume(PV)
实际分区需要调整System ID成为LVM表示(8e),然后经过pvcreate命令将他转为LVM最低层的PV,然后才能使用磁盘。

2. Volume Group(VG)
将PV整合成为一起即为VG
3. Physical Extent(PE)
    LVM预设使用4MB的PE区块,每个LV最多允许有65534个PE,即256GB 。
    PE属于LVM最小存储区

4. Logical Volume(LV)
VG将被分割为若干LV, LV的大小受到PE的限制,且不可以随意调整大小。

LVM术语:
PV/VG/PE/LV/LE关系

LVM术语:
PV/VG/PE/LV/LE关系

LVM实现所涉及到的命令:

系统文件分区:mkfs,mount
LV阶段:lvcreate,lvdisplay
VG阶段:vgcreate,vgdisplay
PV阶段:pvcreate,pvscan
分区阶段:fdisk/parted/cfdisk
LVM实现
1.准备3块磁盘,并将FS的类型改为LVM(8e)
2.将三块磁盘转换为PV
#pvcreate /dev/sd[b-d]1

3.扫描PV
#pvscan

4.查看pv卷详细信息
#pvdisplay或#pvs ←查看当前pv信息

5.创建VG
#vgcreate -s 指定PE大小(M,G,T) VG 名称 PV名称
如#vgcreate -s 4M bluevg /dev/sd[b-c]1

6.扫描VG
#vgscan

7.查看VG详细信息
#vgdisplay

8.建立LV
#lvcreate [-L N[mgt] [-n LV 名称] VG名称

-L 指定容量,单位是MB,GB,TB
-n LV名称

#lvcreate –L 10G –n bluelv bluevg

#lvcreate -l 100%FREE -n bluelv bluevg

10.查看LV的映射
#ll /dev/bluevg/bluelv

11.扫描lv卷
#lvscan

12.查看lv信息
#lvdisplay

13.格式化lv
#mkfs.ext4 /dev/bluevg/bluelv

14.挂载

15.测试

16.增加LV空间
1)将/dev/sdd1增加到VG为snow的卷组
#vgextend bluevg /dev/sdd1
#vgdisplay

2)在10G的基础上增加9G空间至lisalv
#lvextend -L +9G -f -r /dev/bluevg/bluelv

3) 对lisalv增加至19G空间
#lvextend -L 19G -f -r /dev/bluevg/bluelv

17.减少LV空间
1)在19G的基础上减少9G空间至lisalv
#lvreduce -L -9G -f -r /dev/bluevg/bluelv

2)对lisalv减少至10G空间
#lvreduce -L 10G -f -r /dev/bluevg/bluelv

XFS:
如果是XFS的文件系统格式,需要安装xfsgrops软件包,通过xfs_grows来完成分区的扩展动作
#xfs_grows 挂载点

#xfs_grows /mnt/hd
命令说明:
lvextend:只允许在现有基础上增加空间
lvreduce:只允许再现有基础上减少空间
参数:
-f:强制
-r:resizefs,在扩展/缩减空间之后,空间表面上增加,但实际上仍然需要处理block总数,以达到块与空间容量是对应的。因此无论是扩展/缩减空间都需要对块重新resize。



LVM删除
1.卸载所使用的lv
2.先删除lv
#lvremove /dev/bluevg/bluelv

3.移除vg中的pv
#vgreduce bluevg /dev/sdd1
#vgreduce bluevg /dev/sdc1

4.从pv中删除指定设备
#pvremove /dev/sdd1
#pvremove /dev/sdc1

5.删除vg
#vgremove snow


创建条带型LV
1.创建PV
#pvcreate /dev/sd[a-b]1

2.创建VG
#vgcreate  blue_striped  /dev/sd[a-b]1

3.创建条带LV
#lvcreate -l 100%FREE -i 2 -I 64 -n blue_stripedlv  blue_striped

-l : 使用所有的自由的LE(小写L)
-i : 设定制作条带的磁盘数量
-I : 指定多少K字节做一个条带区块

4.查看条带LV信息
#lvdisplay

#lvs -a -o vg_name,name,devices,size

带有镜像能力的LV
1.创建一个VG
#vgcreate vg_mirror /dev/sd[c-d]1

2.创建镜像LV
#lvcreate -L 4G -m1 -n lv_mirror  vg_mirror

3.查看镜像同步信息
#lvs

4.查看镜像LV
#lvdisplay

5.测试

对现有VG增加带有镜像能力的LV
1.创建一个普通LV
#pvcreate /dev/sda1
#vgcreate -s 4M bluevg /dev/sda1
#lvcreate -L 4G -n bluelv bluevg
#mkfs.ext4 /dev/bluevg/bluelv
#lvdisplay

2.将新的PV加入至现有VG组中
#vgextend bluevg /dev/sdb1

3.
#lvconvert -m1 /dev/bluevg/bluelv /dev/sdb1

对Mirror-LV的修复
1.对Mirror-LV进行写操作
2.确认LV当前状态
#lvs -a -o +devices
#lvs

3.对某个PV进行破坏
#dd if=/dev/zero of=/dev/sdb1 count=10

4.对某个PV进行破坏
#dd if=/dev/zero of=/dev/sdb1 count=10

5.查看破坏后的状态(sdb1消失)
#lvs -a -o +devices
#lvs

6.验证Mirror-LV的数据可用性
#umount 挂载点
#mount /dev/bluevg/bluelv /mnt/niliu

7.将损坏的设备移除掉
#vgreduce --removemissing  --force bluevg

8.解除LV的镜像
#lvconvert -m0 /dev/bluevg/bluelv

9.确认LV的Mirrored Volumes已解除
#lvdisplay

10.进行数据恢复
#pvcreate /dev/sdc1
#vgextend bluevg /dev/sdc1
#lvconvert -m1 /dev/bluevg/bluelv /dev/sdd1

11.确认Mirrored Volumes存在且数据开始同步
#lvdisplay
#lvs
PV/VG/PE/LV/LE关系
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!