Linux 之LVM

一 LVM 简介:

    LVM是 Logical Volume Manager(逻辑卷管理)的简写,LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来将一个或多个底层块设备组成一个逻辑的工具。

201611.jpg

备注:上图引用互联网

二 LVM的组成和常用管理命令

1. Physical Volume(PV),物理卷:物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

2. Volume Group(VG),卷组:就是将一个或多个PV组合为一个卷组,一般由多个pv组成

3. Physical Extent(PE),物理区域:是在pv加入vg后vg把所有pv划分成的很多的小块,是LVM最小的分区单位,同一卷组的PE大小需一致。新的PV加入卷组后,PE的大小会自动更改为原卷组PE的大小

4. Logical Volume(LV),逻辑卷:就是从VG中划分的逻辑分区,建立在卷组的基础上,卷组中空闲的PE可分配给LV使用,创建LV后可通过增加或减少PE来动态扩展和缩小空间大小。

PV 常用管理命令

            pvcreate   #创建一个物理卷

            pvchange   #修改物理卷的属性

            pvresize   #调整一个PV的大小

            pvremove   #删除一个PV

            pvdisplay  #显示PV的属性信息

            pvmove     #移动PE到指定物理卷

            pvscan     #搜索所有磁盘上的物理卷

            pvs        #显示PV的简要信息

VG 常用管理命令

        vgcreate    #创建卷组

            -l:设置可容纳的LV最大数,默认为255

            -p:设置包含PV的最大数,默认为255

            -s:设置PE大小,默认为4M

        vgextend    #扩展VG大小

        vgdisplay   #显示VG属性信息

        vgchange    #修改VG属性信息

        vgreduce    #缩减VG大小

        vgremove    #删除VG

        vgscan      #搜索所有磁盘上的卷组

        vgs         #显示VG简要信息

        vgck        #检查VG元数据

LV 常用管理命令

        lvcreate    #创建LV

            -l:设置LV大小,以PE为单位

            -L:设置LV大小,以字节为单位

            -n:设置LV名称

            -p:设置LV权限读写权限,默认为可读可写

            -s:设置一个快照卷,对一个已存在的LV做快照

        lvextend    #扩展LV大小

        lvreduce    #缩减LV大小

        lvchange    #修改LV属性信息

            -ay:标记LV为可用状态

            -an:标记LV为不可用状态

        lvremove    #删除LV

        lvdisplay   #显示LV属性信息

        lvscan      #搜索所有磁盘上的逻辑卷

        lvs         #显示LV简要信息


三 示例

1. 先创建2个新的分区

blob.png

blob.png

partx -a /dev/sda

2.然后将2个分区转化成物理卷

pvcreate /dev/sda5 /dev/sda6

pvs

blob.png

3.创建卷组,把2个物理卷加入到卷组。

vgcreate vgtest /dev/sda5 /dev/sda6

blob.png

4.创建一个LV要求大小为5G,名称为lvtest

lvcreate -L 5G -n lvtest vgtest

blob.png


5.扩展lvtest的大小

 lvextend -L +3G /dev/vgtest/lvtest 

blob.png

6.缩减lvtest 的大小,减少3G

lvreduce -L -3G /dev/vgtest/lvtest 

blob.png

7.对lvtest做个快照。设置只读权限。

lvcreate -L 3G -n lvtest_snap -p r -s /dev/vgtest/lvtest

blob.png

8.删除lvtest ,必须先标记为不可用,然后在删除,这个会快照一起移除的。

lvchange -an /dev/vgtest/lvtest

lvremove /dev/vgtest/lvtest

blob.png

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

(0)
liangkailiangkai
上一篇 2016-03-01 00:03
下一篇 2016-03-03 09:38

相关推荐

  • Linux中/etc/passwd、/etc/shadow文件字段的含义以及用处

        今天本人学习到了两个个Linux中非常重要的文件,它们承载着Linux用户的相关信息,如果在账号方面出现一些密码相关的问题,就可以来找这两个文件查看和分析一番。     他们分别是/etc/passwd和/etc/shadow两个文件,他们都存放于/etc目录中,都可以使用cat命令来查看其内容。  …

    Linux干货 2016-01-14
  • sed文本编辑工具

    用法:sed[option]… ‘script’ inputfile…常用选项:-n:不输出模式空间内容到屏幕,即不自动打印-e: 多点编辑-f:/PATH/SCRIPT_FILE: 从指定文件中读取编辑脚本-r: 支持使用扩展正则表达式-i.bak: 备份文件并原处编辑script:‘地址命令…

    Linux干货 2017-05-02
  • Docker之~集群配置

    一、前言 Kubernetes 是Google开源的容器集群管理系统,基于Docker构建一个容器的调度服务,提供资源调度、均衡容灾、服务注册、动态扩缩容等功能套件,目前最新版本为0.6.2。 本文介绍如何基于Centos7.0构建Kubernetes平台,在正式介绍之前,大家有必要先理解Kubernetes几个核心概念及其承担的功能。以下为Kubernet…

    2015-03-23
  • 基础指令的使用篇3 Linux版

    / /boot /bin /sbin /lib.modules /lib64 /etc/redhat-release /etc/centos-release /home/zczx /mnt /media /misc /proc/meminfo /proc/cpuinfo /proc/partition /sya /opt /tmp /usr/local/ /…

    Linux干货 2016-08-04
  • N25 – week 3 blog

    本周的blog开始使用了代码语言格式,我原本以为自然的才是最好的,orginal的才是最美的,但是我错了。。。我发现同学们都在各种markdown,各种排版。我说过我早已过了care这些的年纪,但是我不能脱离群体单独存在,所以我底下了傲娇的头。 本周开始blog标题改为英文,逼格满满,麦满分~ 下面开始第$wk_num周的作业 [root@dhcp-10-1…

    Linux干货 2016-12-19
  • haproxy负载均衡两个后端httpd和mysql

    前端主机:172.16.71.1,后端主机:172.16.71.4和172.16.71.5 前端主机安装haproxy yum install haproxyvim /etc/haproxy/haproxy.cfgglobal    log         127.0.0.1 local2 &nbs…

    Linux干货 2017-02-12