天天看点

2.LVM逻辑卷管理

LVM概述

注意:逻辑分区和逻辑卷不是一个概念

许多llinux操作系统的使用者在安装操作系统时都会遇到这样的的困境;如何精确评

估和分配分配各个硬件分区的容量。如果当初估计不准确,一旦系统分区不够用就可能不得不备份,删除相关数据,甚至被迫重新规划分区并重装操作系统,以满足应用系统的需要。

LVM是linux操作系统中对磁盘的分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,因此能够在保持现有数据不变的情况下动态调整磁盘容量,从而增强磁盘管理的灵活性。

在安装Centos操作系统的过程中选择自动分区时,就会默认采用LVM分区方案,而不需要在进行手动配置。需要注意的是LVM逻辑卷的建立依靠于内核,因此/boot分区不能基于LVM创建,必须独立出来。

LVM基本概念

PV(Physical Volume)物理卷

物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘,

创建物理卷时,会在分区或硬盘头部创建一个保留区,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(Physical Exent,PE),而构成物理卷。物理卷一般直接使用设备文件名称。

2.LVM逻辑卷管理

分区建立将ID转换成8e,若是整个硬盘将所有空间划分成一个主分区。

VG(Volume Group)卷组

由一个或多个物理卷组成一个整体,即成为卷组,在卷组中可以动态添加或移

除物理卷,多个物理卷可以分成不同的卷组,卷组的名称用户自己定义。

2.LVM逻辑卷管理

LV(Logical Volume)逻辑卷

逻辑卷建立在卷组之上,与物理卷没有直接关系,对于逻辑卷来说,每个卷组

就是一个整体,从这个整体中分割出一个空间,作为用户创建文件系统的基础,这一小块空间就称之为逻辑卷。逻辑卷经过格式化创建了文件系统后,就可以挂载使用了。

2.LVM逻辑卷管理

逻辑卷创建步骤:准备分区–>创建物理卷–>创建卷组–>创建逻辑卷–>格式化(形成文件系统)–>挂载使用

LVM管理命令

2.LVM逻辑卷管理

fdisk分完区后,分区类型改成8e

然后partx /dev/sdd 让系统识别一下你的分区

物理卷管理

1,pvscan命令

pvscan命令用于扫描系统中所有的物理卷,并输出相关信息

2,pvcreate命令

格式:pvcreate 设备1 [设备2…]

pvcreate命令用于 将整个硬盘或分区转换成物理卷,主要是添加LVM属性信息并划分PE存储单位,该命令需要使用硬盘或分区作为参数

3,pvdisplay命令

格式:pvdisplay /dev/sdb3

pvdisplay命令用于显示物理卷的详细信息,需要使用指定的物理卷作为命令参数,默认时将显示所有物理卷的信息。

4,pvremove命令

格式:pvremove /dev/sdb3

pvremove命令用于将物理卷还原成普通的分区或磁盘,不在同于LVM体系,被移除的物理卷将无法被pvscan识别。

卷组管理

1, vgscan命令或vgs

vgscan命令用于扫描系统中已建立的LVM卷组及相关信息。

2, vgcreate命令

格式:vgcreate 卷组名 物理卷名1 物理卷名2… [选项-s 指定PE大小(单位M)]

vgcreate myvg /dev/sdb1 /dev/sdb2

vgcreate命令用于将一个或多个物理卷创建为一个卷组,第一个命令参数用于设置卷组名称,其后依次指定需要加入卷组的物理卷作为参数。

3, vgdisplay命令

格式:vgdisplay vgdata

vgdisplay命令用于显示系统中各类卷组的详细信息,需要使用指定卷组名为参数,未指定卷组默认将显示所有卷组的信息。

4, vgremove命令

格式:vgremove vgdata

vgremove命令用于删除指定的卷组,将指定的卷组名称作为参数即可。删除时应确保该卷组中没有使用的逻辑卷

5, vgextend命令

格式:vgextend vgdata /dev/sdb4

vgextend命令用于扩展卷组的磁盘空间,当创建了新的物理卷,需要将其加入到已有的卷组中,就可以使用vgextend命令。该命令的第一个参数为需要扩展容量的卷组名称,其后为需要添加到该卷组中的各物理卷。

6, vgreduce命令

格式:vgreduce vgdata /dev/sdb4

vgreduce命令用于减少卷组的磁盘空间。该命令的第一个参数为需要减少容量的卷组名称,其后为需要减少到该卷组中的各物理卷。

逻辑卷管理

1, lvscan命令 或lvs

lvscan命令用扫描系统中已建立的逻辑卷及相关信息。

2, lvcreate命令

lvcreate命令用于从指定的卷组中分割空间,以创建新的逻辑卷。需要指定逻辑卷大小,名称及所在的卷组名作为参数

格式:lvcreate -L 容量大小 (-I 指定PE个数) -n 逻辑卷名 卷组名

lvcreat -n lvdata -L 8G data

3, lvdisplay命令

格式:lvdisplay /dev/vgdata/lvdata

lvdisplay命令用于像是逻辑卷的详细信息,可以指定逻辑卷的设备文件作为参数,也可以使用卷组名为参数,以显示该卷组的所有逻辑卷的信息。

4,lvextend命令

格式:lvextend -L +1G /dev/vgdata/lvdata

lvextend命令用于动态扩展逻辑卷的空间,当目前使用的逻辑卷空间不足时,可以从所在卷组中分割额外的空间进行扩展。只要指定需要增加的容量大小及逻辑卷设备文件位置即可。前提是该卷组中还有尚未分配的磁盘空间,否则需要先扩展卷组容量。

执行xfs_growfs /dev/卷组名/逻辑卷名 命令以便重新识别文件系统的大小。

5,lvreduce命令用于动态减少逻辑卷的空间。(重新识别文件系统的大小无效) ext4可以用

格式:lvreduce -L -2G /dev/卷组名/逻辑卷名

6, lvremove命令

格式:lvremove /dev/卷组名/逻辑卷名

lvremove命令用于删除指定的逻辑卷,直接使用逻辑卷的设备文件作为参数即可。

创建物理卷

格式:pvcreate /dev/sdb1 /dev/sdb2

创建卷组

格式:vgcreat data /dev/sdb1 /dev/sdb2
              卷组名
           

删除卷组

格式:vgremove data

扩展卷组:

格式:vgextend vgdata /dev/sdb3

减少卷组:

格式:vgreduce vgdata /dev/sdb3

创建逻辑卷:

格式:lvcreat -n lvdata -L 8G data 
                逻辑卷名     卷组名
           

格式化逻辑卷:

mkfs -t xfs /dev/卷组名/逻辑卷名

扩展逻辑卷:

lvextend -L +2G /dev/卷组名/逻辑卷名

-L:指定容量大小

减少逻辑卷:

lvreduce -L -2G /dev/卷组名/逻辑卷名

删除逻辑卷:

lvremove /dev/卷组名/逻辑卷名

刷新:xfs_growfs /dev/卷组名/逻辑卷名 //重新扩展 逻辑卷后,重新识别文件系统的大小

刷新:ext4文件系统用 resize2fs /dev/vgdata/lvdata

xfs_repair /dev/vgdata/lvdata //不能读超级块,磁盘修复

注意:xfs文件系统只支持增大分区的情况,不支持减少的情况

继续阅读