您的位置:首页 > 运维架构 > Linux

Linux lvm逻辑卷的使用

2015-08-25 09:21 381 查看
解释:
LVM正是因为传统的磁盘管理不能对我们的磁盘空间进行动态的管理,因此就诞生出了LVM这个技术,那么LVM到底是什么呢?它又是怎么对磁盘进行管理的呢?LVM(Logicalvolume Manager)是逻辑卷管理的简称。它是Linux环境下对磁盘分区进行管理的一种机制。现在不仅仅是Linux系统上可以使用LVM这种磁盘管理机制,对于其它的类UNIX操作系统,以及windows操作系统都有类似与LVM这种磁盘管理软件。LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用。在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。比如说我增加一个物理硬盘,这个时候上层的服务是感觉不到的,因为呈现给上次服务的是以逻辑卷的方式。LVM最大的特点就是可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。我们如果新增加了硬盘,其也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性!!!三、LVM的原理要想理解好LVM的原理,我们必须首先要掌握4个基本的逻辑卷概念。PE(PhysicalExtend)  物理拓展PV(PhysicalVolume)  物理卷VG(VolumeGroup)  卷组LV(LogicalVolume)  逻辑卷

lvm创建使用命令步骤如下:
(1)pvcreate /dev/sdc --硬盘格式化成PV
(2)pvdisplay(显示详细信息)、pvs命令来查看当前pv的信息
(3)vgcreatezzxtbl /dev/sdc -----创建卷组(VG),并将PV加入到卷组中  通过 vgcreate 命令基于卷组(VG)创建逻辑卷(LV)  通过 lvcreate 命令
(4)lvcreate -n myzx -L 50M zzxtbl ----通过lvcreate命令基于VG创建好我们的逻辑卷,名字为myzx,大小为2G,同样我们可以使用 lvdisplay 或者 lvs 命令来查看创建好的逻辑卷的信息
(5)mkfs.ext4 /dev/zzxtbl/myzx ---格式化创建好的pv、vg、lv
(6)mount /dev/zzxtbl/myzx /mnt ---挂载当前的pv,到mnt

lvm删除操作命令步骤如下:
(1)首先将正在使用的逻辑卷卸载掉umount /mnt/
(2)将逻辑卷先删除lvremove /dev/zzxtbl/myzx
(3)删除卷组vgremovezzxtbl
(4)删除物理卷pvremove /dev/sdc

lvm扩充逻辑卷命令步骤如下:
(1)lvextend -L +1G /dev/zzxtbl/myzx -- 当前的逻辑卷扩展1G空间(可以支持在线扩展)
(2)resize2fs /dev/zzxtbl/myzx–更新当前的逻辑卷系统文件

lvm拉伸一个卷组命令步骤:
(1) 首先添加一块新的硬盘到主机上
(2) 将要添加到VG的硬盘格式化成PV  通过 pvcreate 命令
Pvcreate /dev/sdb(3) 将新的PV添加到指定的VG当中 通过 vgextend 命令
Vgextend /dev/sdb (4) vls (查看当前的文件系统)

lvm缩小一个逻辑卷命令的步骤:
(1) 为了保证数据的完整性我们要用umount卸载当前的卷
umount /dev/zzxtbl/myzx /mnt(2) 小文件系统(会提示需要运行fsck来检查文件系统)  通过 resize2fs 命令
Resize2fs /dev/zzxtbl/myzx 1G –---将逻辑卷缩小1GB缩小LV  通过 lvreduce 命令
Resize2fs –f /dev/zzxtbl/myzx 1G----f检查当前的文件是否正确
Lvreduce -L 10G /dev/zzxtbl/myzx ----逻辑卷减少10G空间

走起:

1.添加一块硬盘



2.将硬盘格式成pvpvcreate/dev/sdc



3.创建完PV以后,我们可以使用pvdisplay(显示详细信息)、pvs命令来查看当前pv的信息



4.创建卷组(vg),并加入到pv卷组中通过vgcreate命令



5.基于卷组(VG)创建逻辑卷(LV)  通过 lvcreate 命令



通过lvcreate命令基于VG创建好我们的逻辑卷,名字为mylv,大小为2G,同样我们可以使用 lvdisplay 或者 lvs 命令来查看创建好的逻辑卷的信息

6.格式化并使用我们的逻辑卷




7.挂载lvm逻辑卷






二、删除逻辑卷
我们在创建好逻辑卷后可以通过创建文件系统,挂载逻辑卷来使用它,如果说我们不想用了也可以将其删除掉。注意:对于创建物理卷、创建卷组以及创建逻辑卷我们是有严格顺序的,同样,对于删除逻辑卷、删除卷组以及删除物理卷也是有严格顺序要求的1.首先将正在使用的逻辑卷卸载掉  通过umount命令




2.将逻辑卷先删除  通过lvremove命令




3.删除卷组  通过vgremove命令




4.最后再来删除我们的物理卷  通过pvremove命令




此时我们的刚创建的逻辑卷myzx,卷组zzxtbl以及物理卷 /dev/sdc已经从我们当前操作系统上删除掉了,通过lvs、vgs、pvs命令可以查看一下




三、扩充逻辑卷
在我们的VG中还有足够的空闲空间时,我们就可以动态的对逻辑卷进行拉伸操作了扩充逻辑卷  通过 lvextend 命令 (1)比如我这里要对myzx逻辑卷扩充1G的大小,此时我们就可以使用 lvextend -L +1G/dev/zzxtbl/myzx 命令来执行操作






(2)我们在对逻辑卷进行拉伸以后,我们通过 df -h 命令可以查看一下当前的文件系统信息(这时还没有什么变化)

3)更新文件系统  通过 resize2fs 命令




resize2fs /dev/zzxtbl/myzx




四、拉伸一个卷组

这里我们首先模拟一下将VG中的剩余空间全部拉伸到我们的逻辑卷当中,然后我们通过增加一块物理硬盘,来对我们的卷组进行拉伸操作




1)将要添加到VG的硬盘格式化成PV  通过 pvcreate 命令



2)将新的PV添加到指定的VG当中  通过 vgextend 命令



3)查看当前VG的信息  通过 vgdisplay 或者 vgs 命令




五、缩小一个逻辑卷
注意:逻辑卷的缩小操作必须离线执行,要先卸载掉逻辑卷才可以
2)卸载已经挂载的逻辑卷  通过 umount 命令




3)缩小文件系统(会提示需要运行fsck来检查文件系统)  通过 resize2fs 命令




这个时候我们的逻辑卷的文件系统已经被缩小为52M了,接下来我们就可以缩小我们的逻辑卷的大小了

缩小LV  通过 lvreduce 命令
(1)卸载当前的逻辑卷








(2)Lvreduce–L 4G /dev/zzxtbl/myzx --缩小4G大小的逻辑卷


缩小逻辑卷的操作是个危险的操作,稍不注意就可能损坏我们的逻辑卷,造成文件的丢失或损害,所以我们一般不要对逻辑卷进行缩减操作!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: