物理卷 -- Physical Volume -- PV

卷组  -- Volume Group  -- VG

逻辑卷 -- Logical Volume -- LV

  1、硬盘设备管理技术虽然能够有效的提高硬盘设备的读写速度以及数据的安全性,但是在硬盘分好区或者部署为 RAID 的磁盘阵列之后,再想修改硬盘分区大小就不容易了。当用户想要随着实际需求的变化调整硬盘分区的大小时,会受到硬盘“灵活性”的限制,这是需要用到另一一项非常普及的硬盘设备资源管理技术——LVM(逻辑卷管理器),LVM 可以允许用户对硬盘资源进行动态调整。

  2、逻辑卷管理器是Linux系统用于对硬盘分区进行管理的一种机制,其创建的初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷。尽管对系统的硬盘分区进行强制扩容或缩容从理论上讲师可行的,但是却可能造成数据的丢失。而LVM技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组,可以把多块硬盘进行卷组合并,由此用户不必关心物理硬盘设备的底层架构和布局就可以实现对硬盘分区的动态调整。

  

  3、常用LVM部署命令

功能/命令    物理卷管理    卷组管理    逻辑卷管理

扫描       pvscan         vgscan       lvscan

建立       pvcreate         vgcreate     lvcreate

显示       pvdisplay     vgdisplay       lvdisplay

删除       pvremove       vgremove      lvremove

扩展                 vgextend       lvextend

缩小                 vgreduce          lvreduce

  4、环境准备。添加两块新硬盘。

  对这两块硬盘进行创建物理卷的操作可以理解成让硬盘设备支持LVM技术或把硬盘设备加入到LVM技术可用的硬件资源池中,然后对这两块硬盘进行卷组合并,卷组的名称可以由用户自定义。

  把合并后的卷组切割出一个 150 MB的逻辑卷设备,把这个逻辑卷设备格式化成 ext4 文件系统后挂载使用。

  5、LVM技术部署

  

  (1)让新添加的两块硬盘设备支持LVM 技术。

pvcreate /dev/sdb /dev/sdc

  (2)把两块硬盘设备加入到 storage 卷组中。

vgcreate storage /dev/sdb /dev/sdc 

  (3)查看卷组的状态。

vgdisplay

  (4)切割出一个约为 150MB 的逻辑卷设备。

  注意:切割单位的问题,在对逻辑卷进行切割时有两种计量单位。第一种是以容量为单位,所使用的的参数为-L。例如,使用 -L 150M 生成一个大小为150MB的逻辑卷,另外一种是以基本单元的个数为单位,所使用的参数为 -l 。每个基本单元的大小默认为 4MB。例如,使用 -l 37 可以生成一个大小为 37 ×4MB=148MB 的逻辑卷。

lvcreate -n lv -L 150M storage
# -n 表示指定名字 -L 指定逻辑卷的大小

  (5)将生成好的逻辑卷进行格式化,然后挂载使用。

mkfs.ext4 /dev/storage/lv

  /dev/sdb 和 dev/sdc 做卷组 storage,新生成的卷组为 /dev/storage,从/dev/storage 卷组中切割出逻辑卷lv,lv所在位置 /dev/storage/lv。

  (6)挂载,查看挂载状态。

mkdir /lvm
mount /dev/storage/lv /lvm
df -h

  (7)写入到配置文件中永久生效。

echo "/dev/storage/lv  /lvm ext4 default 0 0">> /etc/fstab  

  6、扩容逻辑卷

  只要卷组中有足够的资源,就可以一直为逻辑卷扩容。扩容前一定要记得卸载设备和挂载点的关联。

umount /lvm

  (1)将逻辑卷的 lv 扩展至 290MB

lvextend -L 290M /dev/storage/lv

  (2)检查硬盘完整性

e2fsck -f /dev/storage/lv

  (3)重置硬盘容量

resize2fs /dev/storage/lv

  (4)重新挂载并查看。

  逻辑卷的容量已经改变。

  7、缩小逻辑卷

  相较于扩容逻辑卷,缩容逻辑卷丢失数据的风险更大。对逻辑卷进行缩容之前,要先检查文件系统的完整性(为了保证数据安全),在执行缩容操作前要先把文件系统卸载。

umount /lvm

  (1)检查文件系统的完整性

e2fsck -f /dev/storage/lv

  (2)把逻辑卷 lv 的容量减小到 120MB

resize2fs /dev/storage/lv 120M
lvreduce -L 120M /dev/storage/lv

  (3)重新挂载文件系统并查看系统状态

mount /dev/storage/lv /lvm
df -h

LVM(逻辑卷管理器)部署、扩容、缩小的更多相关文章

  1. Linux 笔记 - 第十七章 Linux LVM 逻辑卷管理器

    一.前言 在实际生产中,有时会遇到磁盘分区空间不足的情况,这时候就需要对磁盘进行扩容,普通情况下需要新加一块磁盘,重分区.格式化.数据复制.卸载旧分区.挂载新分区等繁琐的步骤,而且有可能造成数据的丢失 ...

  2. LVM逻辑卷管理器

    LVM概述 通过使用Linux的逻辑卷管理器(Logical Volume Manager, LVM),用户可以在系统运行时动态调整文件系统的大小,把数据从一块硬盘重定位到另一块硬盘,也可以提高I/O ...

  3. LVM逻辑卷管理测试——逻辑卷扩展、收缩、快照及删除

    一.逻辑卷扩展 [root@lxjtest /]# umount /testLVM/ [root@lxjtest /]# df -h Filesystem Size Used Avail Use% M ...

  4. LVM逻辑卷管理测试——创建逻辑卷

    虚拟机里再添加两块硬盘,如下所示: 启动系统后,我们可以看到新添加的两块硬盘为/dev/sdb和/dev/sdc.每个2GB. [root@lxjtest ~]# fdisk -l Disk /dev ...

  5. 逻辑卷管理器LVM

    逻辑卷管理器LVM •将设备指定为物理卷 • 用一个或者多个物理卷来创建一个卷组 • 物理卷是用固定大小的物理区域(Physical Extent,PE)来定义的 • 在物理卷上创建的逻辑卷是由物理区 ...

  6. Linux逻辑卷管理器(LVM)

    LVM基础 通过使用Linux的逻辑卷管理器(Logical Volume Manager, LVM),用户可以在系统运行时动态调整文件系统的大小,把数据从一块硬盘重定位到另一块硬盘,也可以提高I/O ...

  7. 10-3 LVM(逻辑卷管理器)

    LVM(逻辑卷管理器) 允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小 允许在多个物理设备间重新组织文件系统 将设备指定为物理卷 用一个或者多个物理卷来创建一个卷组 物理卷是用固定大小的物理 ...

  8. Linux系统磁盘管理(lvm逻辑卷管理)

    linux系统用户常遇到的一个问题就是如何精准的评估分区的大小,已分配合适的磁盘空间:普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文 ...

  9. 十三、LVM 逻辑卷管理

    http://note.youdao.com/noteshare?id=0252cd5dcf7f2e5f11de5b3672779201&sub=ED011464ADA3467D9424271 ...

随机推荐

  1. linuxLVM

    一.概念性的东西 LVM2:Logical Volume Manager ,Cersion 2 LVM,依赖于内核的dm模块(将一个或多个底层的设备组织成一个逻辑设备的模块).可以将多个物理分区通过软 ...

  2. day 26 约束、自定义异常、加密hashlib、logging

    一.约束 建议使用: class BaseMessage(object): def send(self): """ 必须继承BaseMessage,然后其中必须编写sen ...

  3. 2019/12/1 智能硬件实验室(ROS方向)

    浅谈安装ubuntu与ros感想 ubuntu 以前看电脑软件安装管家上的教程尝试在另一台电脑上安装ubuntu(虚拟机上),但是后面遇到了无法解决的问题,放弃了.这次因为选的ros方向,所以昨天在学 ...

  4. Glibc编译报错:*** These critical programs are missing or too old: as ld gcc

    Binutils版本升级 这里是binutils版本过低导致, 查看已部署版本 上传离线升级包 [root@sdw1 glibc]# tar -zxvf binutils-2.32.tar.gz [r ...

  5. 数位dp介绍

    不了解dp的可以先看一下dp 数位dp含义: 数位:一个数有个位,十位,百位,千位等等,数的每一位都是数位. 数位dp归为计数dp,是在数位上进行操作的dp. 数位dp的实质是一种快速枚举的方式,它满 ...

  6. django的开发环境

    推荐linux系统(因为程序员大佬都是用的linux) 虚拟机:vmware  或者virtualbox(官网下载) linux:Ubuntu 使用双系统也可以 虚拟化技术: 1.虚拟机  (全套的系 ...

  7. CSS 导入-选择器-权重

    CSS 导入-选择器 Cascading Style Sheets 层叠样式表 它用来控制网页样式,并允许将样式代码与网页内容分离的一种标记性语言 CSS语法结构 选择器 声明{} 属性名:属性值 c ...

  8. Jpa支持LocalDateTime类型持久化

    package com.boldseas.porscheshop.common.config; import javax.persistence.AttributeConverter; import ...

  9. php 图片指定留白叠加缩放

    遇到这样一个需求:原图大小不一,而且留白也大小不一,需要将原图切出来一个核心图,然后将图片左右留白,组成一个其他尺寸的图片.换句话说,原图在新图片中的位置是可以控制的. 这里思路是:先创建一个规定大小 ...

  10. SpringBoot 发送邮件功能实现

    背景 有个小伙伴问我你以前发邮件功能怎么弄的.然后我就给他找了个demo,正好在此也写一下,分享给大家. 理清痛点 发送邮件,大家可以想一下,坑的地方在哪? 我觉得是三个吧. 第一:邮件白名单问题. ...