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

实操篇:

查看机器磁盘情况,目前查看得出结果:系统盘为50G,一块100G数据盘(dev/vdb)。

lsblk

现在我们把这块数据盘做成LVM,并且挂载分出50G空间给/data目录。

创建流程逻辑:PV物理卷→VG卷组-LV逻辑卷

创建PV物理卷:

pvcreate /dev/vdb

进行查看创建好的PV

pvs
或者
pvdisplay

创建VG组

vgcreate testvg /dev/vdb

查看VG信息:

vgs 或者 vgdisplay

创建LV逻辑卷

1.创建一个指定大小的lv,并指定名字为lv_2
lvcreate -n testlv -L 49.99G testvg 2.创建一个占全部卷组大小的lv,并指定名字为(注意前提是vg并没有创建有lv)
lvcreate -n testlv -l 50%VG testvg
以上两种方法其中一个即可,我选择第一种方式创建。

查看创建好的LVS

lvs

lvdisplay

通过查看可以得到我们刚刚创建的LVM大小为49.99G,磁盘路径为/dev/testvg/testlv

格式化并挂在/data下

格式化逻辑卷
mkfs.xfs -f /dev/testvg/testlv
挂载到/data
mount /dev/testvg/testlv /data
查看挂载情况
df -Th

扩容操作:

目前是拿着一块100G的磁盘来做的LVM,刚刚已经给/data分配了将近50G,那么如果想把未使用的50G再拿出10G扩容到/data下如下操作

查看VG组容量情况
vgdisplay

目前空闲容量是50G,那么拿出10G扩容到/data下

进行扩容操作
lvextend -L +10G /dev/testvg/testlv

刷新逻辑卷

xfs_growfs /dev/testvg/testlv

查看目前/data目录是否扩容成功到60G。

扩容逻辑组

把剩下的容量扩容到一个新的逻辑组里,并且挂载到/data1下

查看VG目前信息

vgdisplay 

目前还有多余40G容量,那么就把它全部给到/data1下,首先需要新创建个LV

lvcreate -n test-data1-lv   -l 100%VG  testvg

我这次创建LV的方式是刚刚提到的第二种创建方式,目前通过创建信息可以看出,新创建的LV名字test-data1-lv,并且容量是40G

现在就是做格式化,然后挂载。

格式化
mkfs.xfs -f /dev/testvg/test-data1-lv
挂载
mount /dev/testvg/test-data1-lv /data1
查看
df -h

Liunx-LVM创建与扩容的更多相关文章

  1. lvm创建和在线扩容

    添加磁盘后创建lvm lsblk 或是fdisk  -l  查看添加的磁盘 fdisk  -l lsblk 进入到sdb创建分区 n新建p标准分区e扩展分区1序列号 加10G或全给 p查看 要创建lv ...

  2. lvm之创建/扩容/缩容/快照及关闭的全部流程操作记录

    基本介绍Linux用户安装Linux 操作系统时遇到的一个最常见的难以决定的问题就是如何正确地给评估各分区大小,以分配合适的硬盘空间.随着 Linux的逻辑盘卷管理功能的出现,这些问题都迎刃而解, l ...

  3. centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课

    centos Linux下磁盘管理   parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...

  4. [转] LVM分区在线扩容

    [转] LVM分区在线扩容 在线扩容的这台服务器,LV分区格式为xfs,原大小1.2TB.增加了一块硬盘,大小为1.8TB. fdisk /dev/cciss/c0d1 # 创建分区,并指定分区类型为 ...

  5. LVM创建

    LVM介绍 PV(Physical Volume) - 物理卷 物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备 VG(Volume Group ...

  6. 【Linux卷管理】LVM创建与管理

    安装LVM 首先确定系统中是否安装了lvm工具: [root@jetsen ~]# rpm -qa|grep lvm system-config-lvm-1.1.5-1.0.el5 lvm2-2.02 ...

  7. 在Linux下如何创建LVM及LVM创建过程

    Linux LVM创建过程:(我用的是Centos6.8) 一.准备工作: LVM可以的创建可以在系统安装的过程中创建,也可以在安装完系统之后再创建建,都是可以的,我的是在系统安装完之后创建的,具体的 ...

  8. 2018.5.24 lvm创建pool

    在调试生产环境时遇到以下情况: 好奇心驱使下,发现是lvm的一个功能——lvm创建pool,就手动创建了相似的环境,操作截图如下: 主要命令: vgcreate -s 32M vg /dev/vdb1 ...

  9. 002.LVM创建

    一 LVM创建步骤 创建分区 创建PV 创建VG 创建LV 格式化及挂载 二 创建分区 使用分区工具(如fdisk等)创建LVM分区,却将分区标识为LVM的分区类型8e. [root@kauai ~] ...

  10. LVM 认知与扩容操作

    继上次 "Linux系统如何迁移至LVM磁盘"反响不错,近三百的访问量吧.这次想续写点东西,主要讲的是"LVM认知和扩容操作".因为网上大多数不准确,可能作者也 ...

随机推荐

  1. npm修改源地址,使用nrm管理源仓库地址

    壹 ❀ 引 事实上现在大部分的公司,都会有自己的npm三方包管理仓库,利于三方包版本管理以及项目三方依赖稳定性.但如果我们npm配置了公司的源仓库地址,以后所有的三方包来源都将以这个仓库为准,假设你现 ...

  2. Linux 中竖线“|”与双竖线“||”的意思

    linux中竖线'|',双竖线'||',&和&&的意思 对于初学者来说这几个意思可能只知道其中几个的意思,下面我们来看一下. 1.竖线'|' ,在linux中是作为管道符的,将 ...

  3. Java线程状态(生命周期)--一篇入魂

    1.线程状态(生命周期) 一个线程在给定的时间点只能处于一种状态. 线程可以有如下6 种状态: New (新创建):未启动的线程: Runnable (可运行):可运行的线程,需要等待操作系统资源: ...

  4. Js中Math对象

    Js中Math对象 Math是一个内置对象,它拥有一些数学常数属性和数学函数方法,Math用于Number类型,其不支持BigInt. 描述 Math不是一个函数对象,也就是说Math不是一个构造器, ...

  5. Shiro实战1-介绍

    什么是 Shiro 官网:http://shiro.apache.org/ shiro是一款主流的 Java 安全框架,不依赖任何容器,可以运行在 Java SE和 Java EE 项目中,它的主要作 ...

  6. The Network Adapter could not establish the connection errorCode 17002, state 08006

    问题说明 今天在centos7虚拟机中运行java程序,程序启动需要连接主机的oracle,报错: The Network Adapter could not establish the connec ...

  7. 【libGDX】ApplicationAdapter生命周期

    1 前言 ​ libGDX 中,用户自定义的渲染窗口需要继承 ApplicationAdapter 类,ApplicationAdapter 实现了 ApplicationListener 接口,但实 ...

  8. RestTemplate的一些坑和改造点

    一.RestTemplate怎么引入和使用 在pom.xml文件中加入如下dependency: <dependency> <groupId>org.springframewo ...

  9. 【八股cover#2】CPP语法 Q&A与知识点

    CPP语法 Q&A与知识点 简历cover 1.熟练使用C的指针应用及内存管理 指针与引用的区别 指针是一个存储地址的变量,可以有多级,可以为空,并且在初始化后可以改变指向: 引用是原变量的别 ...

  10. 第125篇: 期约Promise基本特性

    好家伙,本篇为<JS高级程序设计>第十章"期约与异步函数"学习笔记 1.非重入期约 1.1.可重入代码(百度百科) 先来了解一个概念 可重入代码(Reentry cod ...