linux学习之lvm-逻辑卷管理器
一、简介
lvm即逻辑卷管理器(logical volume manager),它是linux环境下对磁盘分区进行管理的一种机制。lvm是建立在硬盘和分区之上的一个逻辑层,来提高分区管理的灵活性。它是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层的磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。在文件系统看来,逻辑卷组就是一个完整的硬盘。
二、lvm中的一些概念
- 物理存储介质(the physical media)
这里指的是系统的存储设备:硬盘,是存储系统最底层的存储单元。通俗的讲,就是我们能看到的能摸到的物理设备。
- 物理卷(physical volume)
物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备如(RAID),是lvm的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与lvm相关的管理参数。物理卷可以是整个硬盘,硬盘上的分区或从逻辑上与磁盘分区具有同样功能的设备如(RAID)。物理卷在lvm系统中是最底层的概念。通俗的理解,就是含有lvm参数的硬盘或者分区。我们一般用fdisk等划分的分区,不能直接被lvm系统所管理,因为他们没有lvm系统管理的相关参数,没有与lvm系统建立连接。所以需要需要将它们变为可以被lvm系统管理的物理卷PV,然后我们就可以直接用lvm系统来进行相关的操作了。
- 卷组(volume group)
lvm卷组类似于非lvm系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个lvm分区(逻辑卷),lvm卷组由一个或多个物理卷组成。
- 逻辑卷(logical volume)
lvm逻辑卷类似于非lvm系统中的硬盘分区,在逻辑卷之上可以建立文件系统(如/home或者/usr等)。
- pe(physical extent)
每一个物理卷被划分为称为PE的基本单元,具有唯一编号的PE是可以被lvm寻址的最小单元。PE的大小是可配置的,默认为4MB。PE的大小一旦确定将不能改变,同一个卷组中的所有物理卷的PE大小需要一致。
- le(logical extent)
逻辑卷也被划分为称为LE的可被寻址的基本单位。在同一个卷组中,le的大小和pe是相同的,并且一一对应。
三、一些特殊理解
- 可以看到,物理卷pv是由大小相等的基本单元pe组成,一个卷组由一个或多个物理卷组成。
- 和非lvm系统将分区信息的元数据保存在位于分区的起始位置中的分区表中一样,逻辑卷以及卷组相关的元数据也是保存在位于物理卷起始处VGDA(卷组描述符区域)中。VGDA包括以下内容:PV描述符、VG描述符、LV描述符、和一些PE描述符。
- 系统启动lvm时激活VG,并将VGDA加载至内存,来识别LV的实际物理存储位置,当系统进行I/O操作时,就会根据VGDA建立的映射机制来访问实际的物理位置。
- lvm的基本构成:整块裸硬盘或某个分区--》物理卷PV--》卷组VG--》逻辑卷LV。然后再逻辑卷上面制作文件系统,将其用mount挂载。
- 如果要使用整块硬盘最为物理卷的话,这块硬盘必须没有分区表信息,需要清楚硬盘分区表的信息。
四、lvm操作
//查看物理磁盘状态
#fdisk -l
//使用fdisk对/dev/sdb分区
#fdisk /dev/sdb
//进入lvm模式
#lvm
//查看lvm磁盘状态
#lvmdiskscan
//查看lvm的配置文件
#dumpconfig
//创建PV
#pvcreate /dev/sdb1
//查看PV状态
#pvdisplay
//再次查看lvm磁盘状态
#lvmdiskscan
//创建VG
#vgcreate vg_name /dev/sdb1
//查看VG状态
#vgdisplay
//查看所有VG
#vgs
//创建LV
#lvcreate --size 10G --name lv_name vg_name
//查看lv状态
#lvs
//退出lvm配置模式
#exit
//ext3格式化逻辑卷
#mkfs -t ext3 -j /dev/vg_name/lv_name
//使用lvm,首先创建挂载点
#mkdir /mnt/lvm
//挂载卷
#mount /dev/vg_name/lv_name /mnt/lvm
//检查磁盘空间
#df -m /mnt/lvm
//扩大lvm卷
如果lvm空间不够用,现在准备向lvm卷增加更多空间。首先,卸载该卷,并使用lvresize命令调整卷大小。然后还必须用e2fsck检查整个文件系统,并运行resize2fs调整该卷上ext3文件系统的大小
//卸载
#umount /mnt/lvm
//调整卷大小
#lvresize --size 20G /dev/vg_name/lv_name
//检查文件系统
#e2fsck -f /dev/vg_name/lv_name
//调整文件系统大小
resize2fs /dev/vg_name/lv_name 20G
//重新挂载卷
#mount /dev/vg_name/lv_name /mnt/lvm
//缩小LVM卷
缩减现有的lvm卷里不需要的空间是也可以使用lvresize。和前面一样,在调整卷大小之前先卸载这个卷,然后运行e2fsck,检查文件系统和resize2fs调整成希望的大小。
//删除lvm逻辑卷和组,使用lvremove可以删除卷组里的lvm逻辑卷
#lvremove /dev/vg_name/lv_name
//使用vgremove可以删除现有的lvm卷组
#vgremove vg_name
linux学习之lvm-逻辑卷管理器的更多相关文章
- Linux 笔记 - 第十七章 Linux LVM 逻辑卷管理器
一.前言 在实际生产中,有时会遇到磁盘分区空间不足的情况,这时候就需要对磁盘进行扩容,普通情况下需要新加一块磁盘,重分区.格式化.数据复制.卸载旧分区.挂载新分区等繁琐的步骤,而且有可能造成数据的丢失 ...
- LVM逻辑卷管理器
LVM概述 通过使用Linux的逻辑卷管理器(Logical Volume Manager, LVM),用户可以在系统运行时动态调整文件系统的大小,把数据从一块硬盘重定位到另一块硬盘,也可以提高I/O ...
- LVM逻辑卷管理测试——创建逻辑卷
虚拟机里再添加两块硬盘,如下所示: 启动系统后,我们可以看到新添加的两块硬盘为/dev/sdb和/dev/sdc.每个2GB. [root@lxjtest ~]# fdisk -l Disk /dev ...
- LVM逻辑卷管理测试——逻辑卷扩展、收缩、快照及删除
一.逻辑卷扩展 [root@lxjtest /]# umount /testLVM/ [root@lxjtest /]# df -h Filesystem Size Used Avail Use% M ...
- Linux逻辑卷管理器(LVM)
LVM基础 通过使用Linux的逻辑卷管理器(Logical Volume Manager, LVM),用户可以在系统运行时动态调整文件系统的大小,把数据从一块硬盘重定位到另一块硬盘,也可以提高I/O ...
- Linux逻辑卷管理器concept
Linux逻辑卷管理concept-------------------------转载2013/10/09 通过使用Linux的逻辑卷管理器(Logical Volume Manager, LVM) ...
- LVM(逻辑卷管理器)部署、扩容、缩小
物理卷 -- Physical Volume -- PV 卷组 -- Volume Group -- VG 逻辑卷 -- Logical Volume -- LV 1.硬盘设备管理技术虽然能够有效 ...
- linux的存储管理(RALD) LVM 逻辑卷管理 虚拟阵列
磁盘存储管理 LVM 逻辑卷 虚拟阵列 1.Linux系统中 磁盘使用 存在3个大问题: 1.灵活性 2.安全性 3.性能 2.解决办法RAID独立磁盘冗余阵列 RAID(Redundant Arra ...
- Linux系统磁盘管理(lvm逻辑卷管理)
linux系统用户常遇到的一个问题就是如何精准的评估分区的大小,已分配合适的磁盘空间:普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文 ...
随机推荐
- jquery自定义函数的多种方法
在jquery中自定义函数你会吗?今天抽时间写了几个,个人感觉还不错,喜欢的朋友可以了解下 复制代码 代码如下: //方法定义 $.windowbox = { //定义一个方法aa aa: fun ...
- 用libsvm进行回归预测
最近因工作需要,学习了台湾大学林智仁(Lin Chih-Jen)教授等人开发的SVM算法开源算法包. 为了以后方便查阅,特把环境配置及参数设置等方面的信息记录下来. 林教授年轻时照片 SVM属于十大挖 ...
- SQl语句学习笔记(二)
merge into when matched then... when not mached then... merge into t_road_pre_parameter a fr ...
- Linux下的特殊权限SetUID
1.SetUID的功能 只有可以执行的二进制程序才能设置SUID权限 命令执行者要对改程序拥有x执行权限 命令执行者在执行改程序的时候获得该程序文件属主的身份(在执行程序的过程中灵魂附体为文件的属性) ...
- 网页引导:jQuery插件实现的页面功能介绍引导页效果
现在很多网站不仅是介绍,更多的是有一些功能,怎么样让客户快速的知道网站有哪些功能呢?这里pagewalkthrough.js插件能帮我们实现,它是一个轻量级的jQuery插件,它可以帮助我们创建一个遮 ...
- PHP实现各种经典算法
<? //-------------------- // 基本数据结构算法 //-------------------- //二分查找(数组里查找某个元素) function bin_s ...
- mobile touch事件
touch.js 众所周知,mobile与pc 前端开发的不同中,有一点就是事件的不同,mobile上有touchstart,touchmove,touchend等,而pc上用最多的应该还是我们的cl ...
- JDBC、JDBCTemplate、MyBatis、Hiberante 比较与分析
JDBC (Java Data Base Connection,java数据库连接) JDBC(Java Data Base Connection,java数据库连接)是一种用于执行SQL语句的Jav ...
- mysql 总结一
mysql 总结一 数据类型(四类): 整型(5种:tinyint,smallint,mediumint, int(或integer),bigint ): 浮点型:(float,double), 日期 ...
- ThikPHP3.1 常用方法(one)
公司常用但没学过的一些函数,记录一下备份. 1,在Rest操作方法中,可以使用$this->_type获取当前访问的资源类型,用$this->_method获取当前的请求类型. 2.uns ...