LVM相关使用

前言:

LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现,Linux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间。普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。而遇到出现某个分区空间耗尽时,解决的方法通常是使用符号链接,或者使用调整分区大小的工具,但这只是暂时解决办法,没有从根本上解决问题。随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小。

实验一:逻辑卷的实现

准备工作,准备磁盘,指定类型 (8e)
1. pvcreate /dev/sda{2,3,4}
2. vgcreate vg0  /dev/sda{2,3,4}
3. lvcreate -n lv0 -L 50%vg  vg0  (vg代替整个卷组   vg0代表的是从哪个卷组名字)
4. mkfs.ext4 /dev/vg0/lv0   (对逻辑卷创建文件系统,不是对整个磁盘)
5. 开机自动挂载,配置/etc/fstab文件
6. mount -a

实验二:逻辑卷的扩展

准备工作,准备磁盘,指定类型 (8e)
1. pvcreate /dev/sda5
2. vgextend vg0  /dev/sda5  (先后顺序: 先vg  再增加的设备)
      -s  指定PE的大小
3. lvextend -L +2G  /dev/vg0/lv0  (增加之后并不会立即增加容量,要做下面工作)
4. xfs_growfs /mnt/lvo   (同步文件系统,后面跟的是挂载点,xfs系统只能增加不减少)
    resize2fs /dev/vg0/lv0  10G  (10跟增加后的容量要一样, 原来的容量+增加的容量   并且同步ext4文件系统)
   注:如果指定超过容量系统无法识别
       格式必须为:resize2fs  逻辑卷  容量大小 
       如果第3步增加的是2G,但在第4步只指定增加了1G,会成功,增加了1G,
           但还有剩下的1G再去重新指定,就无法指定了(在指定容量一定要注意,实际到底多少容量)
       注:或者3,4合并为一步
          lvextend -r -L +500M /dev/vg0/lv1   — > 自动同步文件系统
       注:前提–>在使用-r的时候,该设备lv1必须有文件系统和挂载上电脑上.否则无法执行
          -r 是自动同步文件系统

实验三:缩减逻辑卷

注:缩减必须先取消挂载,也有风险,里面存有数据(一定要先备份)
1. umount /mnt/lv1
2. resize2fs /dev/vg0/lv1  2G  (缩减到2G的容量)
   注:在缩减的时候系统会提醒你 检查文件系统 –> 必须要检查的 e2fsck -f 
     再执行上面的命令即可 (用lvs查看的时候,容量并没有减少。)
3. e2fsck -f /dev/vg0/lv1
4. lvreduce -L 2G /dev/vg0/lv1  (这才是真正的减少)
    注:该操作具有危险性,可能对已有的数据产生破坏,会让用户确认
5. 重新挂载

实验四:迁移逻辑卷

  1. umount /mnt/lv0
  2. vgrename vg0  newvg0
  3. lvrename /dev/newvg0/lv0  newlv0
       注:上面2,3是为了防止在其它设备上出现相同名字的设备,所以进行改名操作
  4. vgchange -an newvg0 
       注:把newvg0设置为禁用状态  a:all   n:no
  5. vgexport newvg0
       注:导出 newvg0 (卷组)
  6. 拆除硬盘,  关机   关机
       插入目标主机中
  7.  pvscan
       扫描
  8.  vgimport newvg0 
       导入
  9.  vgchange -ay newvg0 
       启用
  10. mkdir /mnt/newlv0
       创建挂载点
  11. mount /dev/newvg0/newlv0  /mnt/newlv0
       挂载

实验五:从逻辑卷中删除正在使用的物理分区

删除逻辑卷   lvremove /dev/VG_NAME/LV_NAME
1. vgdisplay  pvdisplay
2. pvmove  /dev/sda1 (想要拔掉卷组中的某个设备)
   注:移动所占用的空间到相同卷组中的设备上去
      移动的是空间,并不是当中的数据
   注:如果里面是空的,并没有分配空间,是空的,可以直接删除
3. vgreduce  vg0  /dev/sda5 
      从vg0组中移除
   注:vgreduce  移除单个
     vgreduce  vg0  /dev/sda5 –>单单移除vg0中的/dev/sda5
     vgremove  移除相关组的全部
     vgreduce  vg0  /dev/sda5 –>在相同vg0组的全部移除
4. pvremove /dev/sda5  
   移除物理卷

实验六:为逻辑卷创建快照

为现有逻辑卷创建快照 
   lvcreate -L  512M  -s  -n snap-data -p r  /dev/vg0/data (对哪个设备做快照)
      -s  快照
      -p r  设备只读属性
      -L  指定其大小
      -n  名字
挂载快照 
   mkdir -p  /mnt/snap 
   mount -o ro /dev/vg0/snap-data  /mnt/snap  (无法进行修改,上面的已经确定了快照的状态)
   注:挂载快照,工作同步 –> 写时复制
恢复快照 
   umount /dev/vg0/snap-data 
   umount /dev/vg0/data 
   lvconvert  –merge  /dev/vg0/snap-data 
      –merge 合并
      注:恢复快照之后快照的文件自动删除(一次性的,恢复之后快照自动删除)
      恢复的时候,必须全都在非挂载的状态下,恢复
删除快照 
    umount /mnt/databackup 
    lvremove /dev/vg0/databackup
   快照 — lv — vg — pv 从上往下删除

原创文章,作者:_xddggg,如若转载,请注明出处:http://www.178linux.com/84670

(0)
_xddggg_xddggg
上一篇 2017-08-13 21:37
下一篇 2017-08-13 21:57

相关推荐

  • 计算机简介

    计算机的简介 电子计算机(英语:computer),亦称电脑,是一种利用「电子学」原理,根据一系列指令对数据进行处理的工具计算机种类繁多,但实际来看,计算机总体上是处理信息的工具。计算机在组成上形式不一,早期计算机的体积足有一间房屋的大小,而今天某些嵌入式计算机可能比一副「扑克牌」还小。当然,即使在今天依然有大量体积庞大的巨型计算机为特别的[科学]计算或面向…

    Linux干货 2016-10-28
  • crm命令行命令详解

    crm -status 显示当前集群状态 -configure 配置集群 a.show xml 显示当前集群配置信息(xml格式) b.property 显示集群可用的全局属性(键入之后按两下Tab) -verifiy 校验 -commit 提交 -node a.online 设置当前节点上线 b.show 显示当前节点状态 c.standby 将当前节点设…

    Linux干货 2017-11-04
  • 描述LVS的工作原理

    一、LVS结构   LVS由前端的负载均衡器(Load Balancer,LB)和后端的真实服务器(Real Server,RS)群组成。RS间可通过局域网或广域网连接。LVS的这种结构对用户是透明的,用户只能看见一台作为LB的虚拟服务器(Virtual Server),而看不到提供服务的RS群。当用户的请求发往虚拟服务器,LB根据设定的包转发策略和负载均衡…

    Linux干货 2016-08-29
  • Nginx代理MogileFS并实现负载均衡和高可用

    Nginx代理MogileFS并实现负载均衡和高可用 MogileFS nginx 负载均衡 前言 实验拓扑 实验环境 实验步骤 配置MogileFS 配置Nginx 总结 前言 上篇文章我们了解分布式系统和MogileFS的基本使用, 但是那样的架构是有问题的, 本篇文章我们来了解一下如何使用nginx-mogilefs-module-…

    大数据运维 2016-05-05
  • N25第一周作业-Linux初步认识

    一.描述计算机的组成及其功能。     计算机组成有两部份,一为硬件,二为软件OS         硬件:CPU,负责运算操作。          &…

    Linux干货 2016-12-06
  • Linux基础知识总结

    Linux基础知识 计算机系统 计算机硬件组成 1.控制器:计算机系统的控制中心,协调各部分工作,保证计算机按照预先规定的目标和步骤进行操作及处理。 2.运算器:对数据进行算数运算,逻辑判断以及数据的比较、移位等操作。 3.存储器:存取程序和各种数据信息。  4.输入设备:把信息,如数字、文字、图像等转换为数字形式的“编码”的设备(键盘,扫描仪) …

    2017-05-18