lvm的基本使用

lvm的创建、扩展、迁移以及逻辑卷快照的使用

逻辑卷管理(LVM)

通过整个磁盘和多个分区作为物理卷(pv),将其组成一个物理卷组(vg),通过卷组来弹性分配大小的磁盘就是逻辑卷(lv)。下图就是逻辑卷的创建过程,所以逻辑卷的创建主要分为三部分。

逻辑卷

一、物理卷的选择

物理卷可以是整个磁盘也可是磁盘的一个分区,通过”pvcreate”来创建,如果是分区的话,在创建分区时要指定分区类型为’Linux LVM’。可以通过’pvs’来粗略查看pv。

pv

图中是我创建的两个物理卷,其中sdb1是一个分区而sdc是一整个磁盘,创建完成后通过’pvs’来查看。

二、卷组的创建

我们将创建好的pv组成一个卷组以便以后逻辑卷使用,通过”vgcreate”来创建,创建时我们要跟上’-s size’来指定PE size的大小。

vg

通过”vgdispaly”我们看到了pe的大小就是我们设置的8M,还可以看到vg的UUID、总容量等等信息。

三、逻辑卷的建立

在vg0的基础上我们通过”lvcreate”来创立逻辑卷,逻辑卷的总大小不可超过vg的大小。

lv

“lvcreate”命令中’-l’是指定创建lv大小的单位为”pe size”  ‘-L’是自己指定单位。

创建好逻辑卷后即可创建需要的文件系统。然后挂载到目录下就可以使用了。

扩展、缩小逻辑卷

在对逻辑卷进行设置前要先取消挂载。增加逻辑卷的大小通过”lvextend -L “来指定大小,缩减逻辑卷的大小则是通过”lvreduce -L”,-L后跟的大小不是增加或缩小的大小而是总容量。以扩展逻辑卷为例

首先通过”lvdisplay”来查看lv1的大小为20G

lv1

然后通过”lvextend -L 30G  /dev/vg0/lv1″扩展lv1的大小

lvextend

然后查看

后

我们发现lv1的大小从20G扩展到了30G而不是增加了30G。

 

删除物理卷

移除

再删除底层PV前我们先要确保vg中的可用空间要大于我们要删除的pv大小。通过”pvmove /dev/sdb1″来搬出sdb1的容量,在”vgreduce vg0 /dev/sdb1″来减出vg中sdb1的空间,最后”pvremove  /dev/sdb1″来删除pv。

此时我们查看vg的大小也少去了sdb1的大小。移除后

 

 

逻辑卷迁移

如果我们要将逻辑卷迁移到其他主机,首先要取消与当前主机的挂载关系,然后为了避免与新主机的冲突,要将lv与vg都改名为目标主机中不存在的名字。通过”lvrename””vgrename”来进行改名。

改名

这是我们把原来的vg0和lv1改成了vg000he lv111。接着我们要禁用设备并导出。

禁用

导出

接着将设备在旧主机上拔出,接入新主机。查看新主机中没有同名设备后,导入vg000(“vgimport vg000”),启用设备后(“vgchange -ay /dev/vg000/lv111”),挂在到新主机的目录下即可使用。

逻辑卷快照的原理及使用

逻辑卷快照的原理是通过命令对逻辑卷中的内容创建一个逻辑卷快照,此时无论我们修改或删除逻辑卷的内容,快照里面都是被修改内容刚刚创建的状态。当我们通过快照还原逻辑卷时,逻辑卷就会还原到快照创建时的样子,还原后快照也会被删除。

通过”lvcreate -n lv0-snapshot -p r -L 1G -s /dev/vg000/lv0″来创建关于逻辑卷’lv0’的快照,将其挂载到目录后我们可以看到创建快照时’lv0’中的内容,若要还原逻辑卷,首先要将逻辑卷和逻辑卷快照取消挂载,然后通过”lvconvert — merge /dev/vg000/lv0-snapshot”即可还原数据。

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89683

(3)
上一篇 2017-12-08 21:53
下一篇 2017-12-09 10:33

相关推荐

  • N26-肉肉-第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 常用文件管理命令有cp,mv,rm  cp :copy        -i:交互式复制,覆盖之前提醒用户确认;         &n…

    Linux干货 2017-01-03
  • 正则表达式应用

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。    cp -a /etc/skel /home/tuser1    chmod g-x /home/tuser1…

    Linux干货 2016-12-24
  • Linux用户及用户组管理

    马哥网络教育22期第三周练习 Linux用户及用户组管理 Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也能帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的…

    Linux干货 2016-09-19
  • httpd的介绍以及常用配置

    继上一篇写了LAMP的编译安装之后没有介绍如何配置使用,接下来的几篇会依次介绍,编译安装的过程为http://www.178linux.com/64006 一.httpd介绍 1.httpd是http协议的一个经典实现,也是apache组织中的一个顶级项目,其官方站点为httpd.apache.org。 2.httpd的运行机制 高度模块化(Core+Mod…

    Linux干货 2016-12-22
  • 实时获取MySQL的TPS、QPS(输出到屏幕)

    这个脚本挺好用的,例如我们在主库执行了一个大事务,结果导致从库的show slave status\G 一直卡在 system lock状态,我们用下面这个脚本就能知道到底是hang住了,还是只是执行缓慢(反应在脚本执行结果里面就是qps\tps是不停变动的)。 当然,从库一直处于system lock 状态,一般是因为我们从库也设置双1导致,只要…

    Linux干货 2017-05-07
  • Docker 简介

    Docker在现有云计算虚拟化中是非常火的一个项目,那么他和虚拟化有什么不同呢 从上图来看,好像和我们之前说到的虚拟化并没有什么不同,但这里需要说明的是在各guest主机上,是没有操作系统的,他们共用Host主机上的内核空间,只对用户空间进行了隔离。 因此在这种环境下我们不把他称为虚拟化而称作容器。 此种方式的实现主要基于了linux内核自带的两项技术,分别…

    2017-03-19