系统环境:CentOS Linux release 7.3.1611 (Core)  3.10.0-514.el7.x86_64

CentOS6与7配置方法大同小异。通常是在系统安装的时候创建lvm,然后在后期进行动态扩展分区容量。

新建lvm

安装lvm2

# yum install lvm2

创建初始化物理卷,物理卷可以是一个分区,也可以是一整块硬盘

# pvcreate /dev/sda2

查看物理卷

[root@centos7 etc]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 cl lvm2 a-- .00g 4.00m
[root@centos7 etc]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name cl
PV Size 29.00 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE
Free PE
Allocated PE
PV UUID TN6Hvw-4C4D-pceR-Beqx-CTUm-7L7b-8oFozr

创建卷组,可指定多个硬盘

# vgcreate VGNAME /dev/sda2

查看卷组

[root@centos7 etc]# vgs
VG #PV #LV #SN Attr VSize VFree
cl wz--n- .00g 4.00m
[root@centos7 etc]# vgdisplay
--- Volume group ---
VG Name cl
System ID
Format lvm2
Metadata Areas
Metadata Sequence No
VG Access read/write
VG Status resizable
MAX LV
Cur LV
Open LV
Max PV
Cur PV
Act PV
VG Size 29.00 GiB
PE Size 4.00 MiB
Total PE
Alloc PE / Size / 28.99 GiB
Free PE / Size / 4.00 MiB
VG UUID 3Wspeg-DuBe-V4yu-QuIk-90eS-D0TC-FLwOaU

创建逻辑卷

# lvcreate -n LVNAME -L 20G VGNAME

查看逻辑卷

[root@centos7 etc]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root cl -wi-ao---- .99g
swap cl -wi-ao---- .00g
[root@centos7 etc]# lvdisplay
--- Logical volume ---
LV Path /dev/cl/swap
LV Name swap
VG Name cl
LV UUID 2TMxpT-Ed6t-OJNr-rKbJ-Fep6-3kQO-A30ntK
LV Write Access read/write
LV Creation host, time localhost.localdomain, -- :: +
LV Status available
# open
LV Size 2.00 GiB
Current LE
Segments
Allocation inherit
Read ahead sectors auto
- currently set to
Block device : --- Logical volume ---
LV Path /dev/cl/root
LV Name root
VG Name cl
LV UUID UfjHjv-bWzI-FMKs-ze0A-7GoI-Z3ho-oguZ61
LV Write Access read/write
LV Creation host, time localhost.localdomain, -- :: +
LV Status available
# open
LV Size 26.99 GiB
Current LE
Segments
Allocation inherit
Read ahead sectors auto
- currently set to
Block device :

格式化逻辑卷并挂载使用

# mkfs.ext4 /dev/VGNAME/LVNAME
# mount /dev/VGNAME/LVNAME /mnt

删除lvm,先后顺序lv->vg->pv

# lvremove /dev/VGNAME/LVNAME
# vgremove VGNAME
# pvremove /dev/sdb

动态扩展lvm

新增物理卷

# pvcreate /dev/sdd

新增物理卷到卷组

# vgextend VGNAME /dev/sdd

增加逻辑卷容量,增加逻辑卷容量的操作是热操作,无需停用任何设备或分区

# lvextend -L +10G /dev/VGNAME/LVNAME  #增加10G到LVNAME卷中
# lvextend -l +%FREE /dev/VGNAME/LVNAME  #增加剩余所有容量到卷中

更新文件系统之后,新增容量才能生效

# resize2fs /dev/VGNAME/LVNAME  #适用于ext2、、4文件系统
# xfs_growfs /dev/VGNAME/LVNAME  #适用于xfs文件系统

缩小lv、vg,删除pv

卸载逻辑卷。要执行逻辑卷缩小操作,必须先取消挂载,且操作顺序必须是umount>resize2fs>lvreduce

# umount /dev/VGNAME/LVNAME

重新指定逻辑卷大小

# resize2fs /dev/VGNAME/LVNAME 10G

把逻辑卷减少9G容量,为防数据丢失,减少的容量尽量少于实际计算的减少容量

# lvreduce -L -9G /dev/VGNAME/LVNAME 

把逻辑卷减少到9G,缩小后的容量必须大于已经使用的空间

# lvreduce -L 9G /dev/VGNAME/LVNAME

重新挂载逻辑卷

# mount /dev/VGNAME/LVNAME /mnt

缩小卷组容量,退出物理卷(物理硬盘)。缩小前确认vg空闲空间大于/dev/sdd,否则可能造成数据丢失

# vgreduce VGNAME /dev/sdd
# pvremove /dev/sdd

逻辑卷lvm创建、扩展、缩小的更多相关文章

  1. GNU/Linux下LVM配置管理以及快照卷、物理卷、卷组、逻辑卷的创建和删除

    LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上.文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性.最大的优点是在不损伤数据的前提下调整存储空间的大小. 本篇主要讲述L ...

  2. LVM逻辑卷的创建及使用

    在上一篇随笔里面 LVM逻辑卷基本概念及LVM的工作原理,详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工作原理,包括LVM中最重要的四个基本点(PE.PV.VG以及LV),这 ...

  3. Linux磁盘管理:LVM逻辑卷的创建及使用

    一.创建LVM逻辑卷 事先添加了三块虚拟物理磁盘/dev/sdb 1G, /dev/sdc 2G, /dev/sdd 3G 使用fdisk –l命令查看: [root@localhost ~]# fd ...

  4. 创建逻辑卷LVM以及swap分区

    #!/bin/bash ##创建逻辑卷LVM /dev/mapper/lvm_data-data### ###default 大小为500G,但是LV一般会比500略小################ ...

  5. Linux学习之CentOS(二十六)--Linux磁盘管理:LVM逻辑卷的创建及使用

    在上一篇随笔里面 Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理,详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工作原理, ...

  6. linux运维基础知识-系统分区及LVM逻辑卷的创建

    系统分区及LVM逻辑卷的创建 分区 创建逻辑卷 LVM简介:逻辑卷管理器(LogicalVolumeManager)本质上是一个虚拟设备驱动,是在内核中块设备和物理设备之间添加的一个新的抽象层次,如图 ...

  7. LVM逻辑卷:创建LVM分区实例

    一.概述 LVM(Logical Volume Manager)是基于内核的一种逻辑卷管理器,LVM适合于管理大存储设备,并允许用户动态调整文件系统的大小.此外LVM快照功能可以帮助我们快速备份数据. ...

  8. Linux逻辑卷的拉伸和缩小

    相对于普通磁盘优势是逻辑卷可以在线动态的拉伸(不用先unmount操作),只要vg中有足够的空间即可 1:首先查看vg是否有足够的空间 [root@gechong mapper]# vgdisplay ...

  9. 逻辑卷LVM

    1.理解LVM http://www.cnblogs.com/gaojun/archive/2012/08/22/2650229.html 2.创建LVM 根据“理解LVM”提供的原理思路搞 a)建立 ...

随机推荐

  1. 终极解决方案 at org.apache.jsp.index_jsp._jspInit(index_jsp.java:22) 报空指针

    java.lang.NullPointerException  at org.apache.jsp.index_jsp._jspInit(index_jsp.java:22) 出现这种问题,可能有多方 ...

  2. EF 6.0

    最近又开始研究EF框架了 哎 搞的东西太杂了 网上的参考了一篇博客 但是他是基于EF 4.0之前做的 所以自己基于他的博客来构造EF 6.0的使用基础 命名空间不同: 旧版本:using System ...

  3. python之路第五篇之装饰器:(进阶篇)

    装饰器: 学前必备知识: def f1(): print "f1" f1() #表示函数执行 f1 #表示函数,指向内存地址 f1 = lambda x: x + 1 f1() # ...

  4. php Socket通信

    <?php error_reporting(0); $host = "0.0.0.0"; $port = 1082; $maxUser = 10; set_time_limi ...

  5. fiddler 监听HttpClient发送的请求

    用HttpClient模拟浏览器发送请求,设置一下代理httpClient.getHostConfiguration().setProxy("127.0.0.1", 8888);

  6. python检查IP地址正确性

    一.自动动手,丰衣足食 #encoding=utf-8 import os,sys def check_ip(ipaddr): addr = ipaddr.strip().split('.') #切割 ...

  7. hibernate中各个jar包的含义和关系

    最基本的Hibernate3.3.2之 JAR包(必要): 包名 位置 用途 hibernate3.jar /hibernate 核心JAR包 antlr.jar /hibernate/lib/req ...

  8. java自动化测试-http请求get

    首先我10.1过来自己玩通了讨鬼转极,看了电视剧白夜追凶,换了工作小组,这段时间确实比较少的更新博客,确实有点不勤奋,我先自我检讨 我就不赘述java的安装了,这个是比较简单的,有必要的话以后在讲 对 ...

  9. 第三章 MySQL高级查询(一)

    第三章 MySQL高级查询(一) 一.SQL语言的四个分类 1.       DML(Data Manipulation Language)(数据操作语言):用来插入,修改和删除表中的数据,如INSE ...

  10. VS2015智能提示由英文改为中文

    使用 VS2015 时,在 4.0 下智能提示显示中文,在 4.5 下显示英文,对于我这种爱(ying)国(yu)人(tai)士(lan)来说,用起来太不方便了,于 是在 知乎 上找到个好方法如下: ...