简述LVM原理及其实现

LVM的全称是:Logical Volume Manager(逻辑卷管理器),由内核中的DM模块提供此项功能,

LVM的组成结构,如下图所示

LV可以把一个或多个任意(包括RAID)的块设备做成物理卷(PV),将他们组合起来,并把一块或多块PV的存储能力抽象成一个一个的物理盘区(PE),这些PV的集合称为为一个卷组(VG)。其中PE的大小为2^n。PV的大小是块设备的大小,VG的大小是左右PV的大小之和,LV的大小最大可以达到VG的大小。并且可以对LV执行mke2fs命令对其创建文件系统并挂载至系统的某目录下使用。

在LVM上建的分区可以动态的增加或缩减,这对于硬盘使用空间无法确定的项目是非常方便的。而且可以利用LVM给分区做快照卷,利用此技术可以在不停机的情况下备份需要的数据,并且所备份的数据的时间都是同一时刻的。

LVM的相关命令:

pvcreate,pvs,pvdisplay,pvremove,pvmove,pvscan

vgcreate,vgs,vgdisplay,vgremove,vgreduce,vgextend,vgscan

lvcreate,lvs,lvdisplay,lvremove,lvreduce,lvextend,lvscan

下面给几个创建LVM的例子:

创建一个10G大小的LV(使用两个5G大小的PV),并对其创建ext4文件系统的步骤

先准备两个大小为5G的分区:sdb1、sdb2

1、创建pv:

pvcreate /dev/{sdb1,sdb2}

2、创建VG:

vgcreate -s 8M myvg  /dev/sda5

-s #:指定卷组中的单个PE大小,

myvg:卷组名称

3、创建LV:

lvcreate -n mylv -L 10G myvg

-n NAME:指定创建的LV的名称

-L #:指定创建的LV的大小

myvg:卷组名称

4、创建ext4文件系统

mke2fs -t ext4 /dev/myvg/mylv

缩减上面创建的LV的大小至5G

缩减有风险,操作需谨慎(必须离线进行)

缩减顺序:先卸载LV,然后对LV执行e2fsck -f检测文件系统,检测无误后对文件系统的大小进行缩减,最后对LV的大小进行缩减。(操作顺序很重要,不能逆向操作)

步骤如下:

1、卸载LV:

umount /dev/myvg/mylv

2、检测文件系统:

e2fsck -f /dev/myvg/mylv

-f:强制对文件系统进行检测

3、缩减文件系统的大小:

resize2fs /dev/myvg/mylv 5G

4、缩减LV的大小:

lvreduce -L 5G /dev/myvg/mylv

-L #:指定缩减的大小,可以用“-”。表示相对原来的大小减少

增加上面的LV的大小至8G

增加大小可以在线操作,无需离线进行

增加顺序:先增加LV的大小,后增加文件系统的大小(操作顺序很重要,不能逆向操作)

步骤如下:

1、增加LV的大小

lvextend -L 8G /dev/myvg/mylv

-L #:指定缩减的大小,可以用“+”。表示相对原来的大小增加

2、增加文件系统的大小

resize2fs /dev/myvg/mylv 8G

给上面的LV创建一个大小为2G的快照卷

为了保证快照卷中的数据都是同一时刻的,防止在创建过程中进程修改LV中的数据,先要把快照卷挂载只读,然后创建快照卷,数据备份完毕后重新将LV挂载为读写

步骤如下:

1、挂载LV为只读

mount -o remount,ro /dev/myvg/mylv

2、创建快照卷

lvcreate -n kuaizhao-mylv -L 2G -s -p r /dev/myvg/mylv

-s:指定创建快照卷

-p r:指定创建的快照卷的权限为读权限

3、重新挂载LV为读写:

mount -o remount,rw /dev/myvg/mylv

时间: 2024-10-12 14:30:45

简述LVM原理及其实现的相关文章

LVM原理和实践

LVM原理和实践 目录:    一:LVM原理详解    二:LVM创建    三:LVM的增大和放缩    四:LVM快照    五:相关扩展阅读 一:LVM原理详解1.LVM是什么?    LVM是linux系统上的一个逻辑卷管理器有两个版本lvm1和lvm2现在默认是lvmm2,lvm2兼容lvm1但是对于lvm1的快照是不兼容的,所以如果你使用lvm1创建了快照,请在升级为lvm2的时候将快照卷卸载Lvm2使用的是设备映射器(device mapper)2.6版本的内核有其驱动,2.4的

LVM原理与实现过程

一.什么是LVM 不管是使用传统的MBR分区方式或者是GPT的分区方式,在最后数据量逐渐变大的过程中都会出现空间不足的情况,但是若是使用将此分区的数据全部迁移至一个更大空间的磁盘上的迁移时间也是不可想象的,为了解决这个问题,LVM就诞生了.LVM(Logical volume Manager)是逻辑卷管理的简称.LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用.在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行

Linux磁盘管理--LVM原理及基本操作

LVM(Logical Volume Manager)逻辑卷管理是Linux磁盘管理中的常用操作, 本文主要描述LVM的基本原理以及对LVM的扩展和缩减的基本操作. LVM实质是过软件方式将多个物理分区或磁盘组合成为一个容量可变大小的磁盘卷组VG, 再通过对VG中的基本单位PE构成可变大小的逻辑卷LV. LVM的优点: 通过调整VG中PV的数量来动态调整VG的容量大小, 通过调整LV中PE的数量来动态调整LV的容量大小. LVM中组成部分: 1. 分区: 磁盘中的可用分区, 分区类型ID应在创建

简述LVM

需求: 很多时候,我们都会遇到这样的困境.随着时间和业务的发展,原先服务器设置好的分区会因为数据变大,而使得容量变得不再够用.停机维护进行数据迁移或许会是一种解决方法,但停机的代价也是巨大的.所以为了应对这种情况的发生,LVM技术就是最好的解决方法. ------------------------ LVM: 定义:Logical Volume Manager(逻辑卷管理) 功能:动态阔缩磁盘容量 实现:通过物理磁盘创建最小等量PE,再用卷组把PE进行统合,最后在逻辑卷上对虚拟统合后的卷组进行操

简述JDBC原理 + 在JAVA中异常是什么 + throws 与 throw 区别 + 简单解释以下JAVA中的多态

JDBC原理: 加:加载驱动 链:创建连接 预:创建预编译 执:执行SQL语句(查询需要处理结果级) 释:关闭链接: DBC中定义了一些接口:  1.驱动管理:  DriverManager  2.连接接口  Connection  DatabasemetaData  3.语句对象接口  Statement  PreparedStatement  CallableStatement  4.结果集接口  ResultSet  ResultSetMetaData JDBC只定义接口,具体实现由各个数

简述加密原理

LVM与snapshot

一.LVM简述 LVM(Logical Volume Manager),即逻辑卷管理,它是Linux环境下对磁盘分区进行管理的一种机制. 我们知道,物理磁盘或分区之间是分隔的,数据无法跨盘或分区,而各磁盘或分区的大小固定,重新调整比较麻烦.LVM可以将这些底层的物理磁盘或分区整合起来,抽象成容量资源池,以划分成逻辑卷的方式供上层使用,其最主要的功能即是可以在无需关机无需重新格式化(准确地说,原来的部分无需格式化,只格式化新增的部分)的情况下弹性调整逻辑卷的大小. 二.LVM的实现过程 LVM结构

lvm介绍与使用

一.简述 什么是逻辑卷?LVM(Logical Volume Manager)利用Linux内核device-mapper实现存储系统的虚 拟化.通过LVM,把底层存储硬件抽象化成存储逻辑块,再将这些逻辑块集合构成存储池,从存储池空间划分分区,可以简单地扩大或缩小分区,而不用担心硬盘没有足够的连续空间. 使用逻辑卷分区有什么用?使用逻辑卷分区重点在于可以弹性地调整文件系统的容量.在实际环境中我们经常会遇一个文件系统空间不足,想要扩展却又十分麻烦,一开始划分空间偏大,想要缩减也是同样不方便.而LV

Linux之LVM

一.简介 二.LVM原理图解 三.操作示例 四.快照 一.简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现.LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的存储卷,在存储卷上建立文件系统.当存储卷空间不足时,可以不用卸载存储卷而将其他硬盘分区加入其中,利用LVM可根据需求灵活管理磁盘空间. 二.L