Linux LVM(逻辑卷管理)
2016-01-25 22:58
585 查看
Lvm基本应用
什么是LVM?
LVM 的全称是 Logical Volume Manager,中文为逻辑卷管理,它是Linux对磁盘分区的一种管理机制,它在传统的硬盘(或硬盘分区)和文件系统之间建立一个逻辑层,将一个或多个底层块设备组织成为一个逻辑设备。LVM 的重点在于可以动态的调整磁盘分区的大小,而并不是数据的冗余性和完整性。LVM的组成
PV:Physical Volume,物理卷
PV是LVM的基本存储逻辑块。
PE:Physical Exten,物理块
把每一个物理卷PV被划分为PE的基本单元,默认为4MB,是整个LVM最小的储存区块,一般在创建卷组VG中划分大小,也可以由PV划分大小。
组成VG的一个或多个PV中PE必须统一大小。
VG:Volumen Group,卷组
由一个或多个物理卷PV组成,而VG最多仅能含有65534个PE,默认VG可以有 4M*65534/(1024M/G)=256G。
LV:Logical Volume,逻辑卷
逻辑卷建立在卷组VG之上。将逻辑卷LV格式化后建立文件系统进行使用。
LE:Logical Extent,逻辑块
逻辑卷LV也被划分为可被寻址的基本单位LE,在同一卷组中,LE的大小和PE大小相同,且有一一对应关系。
LVM的实现
磁盘的准备
通过使用fdisk -l /dev/sdb,我们可以查看到/dev/sdb分区如下,且ID为83:准备磁盘分区,并不要求分区的大小一致,但是必须将分区类型改为“8e”使它可以用于LVM
重复上述操作,将/dev/sdb所有分区类型修改为8e。
创建物理卷(PV)
PV的管理工具有:pvs,pvdisplay,pvcreate,pvremovepvs:显示pv的简要信息
pvdisplay:显示pv的详细信息
pvcreate:创建pv
pvremove:删除pv
使用 pvcreate /dev/sdb# 命令创建物理卷
创建卷组(VG)
VG的管理工具有:vgs,vgdisplay,vgcreate,vgremove,vgextend,vgreducevgextend:VG的扩充
语法: vgextend 卷组名 设备名..
vgreduce:VG的缩减
语法:vgreduce 卷组名 设备名..
vgcreate [-s #[mgt]]
VG名称 PV名称
选项:-s:后面接PE的大小(size),单位可以是m,g,t(不区分大小写),默认为4MB
使用 vgcreate Vol_MyVg /dev/sdb1 /dev/sdb2 /dev/sdb3,显示successfully,创建成功
创建逻辑卷(LV)
LV的管理工具有:lvs,lvdisplay,lvcreate,lvremovelvcreate -L #[mgt] -n
逻辑卷名 卷组名
选项:-L:后接大小,-n:后接LV的名称
使用 lvcreate -L 3G -n MyLv Vol_MyVg,该命令会从指定MyVg的卷组之上,创建一个名为”MyLv“、大小为3G的逻辑卷
格式化加挂载
逻辑卷设备的位置在 /dev/卷组名(VG名)/逻辑卷名(LV名),我们可以格式化和挂载逻辑卷,就像ext分区一样。我们使用如下命令:
mkfs -t ext4 /dev/Vol_MyVg/MyLv
mkdir /mnt/LVM
mount /dev/dev/Vol_MyVg/MyLv
LVM扩展实现
设备/dev/sdb的总大小为8G,在上述LVM实现过程中,我们将/dev/sdb分成四个分区,每个分区2G,然后用了sdb1,sdb2,sdb3三个分区组成了卷组名为Vol_MyVg的卷组且大小为6GB,并在此卷组之上建立了大小为3GB且卷名为MyLv的逻辑卷,此时Vol_MyVg卷组还省下3GB。1、扩大卷组(VG)- Vol_MyVg
vgextend:VG的扩充语法: vgextend 卷组名 设备名..
使用命令 vgextend Vol_MyVg /dev/sdb4 创建,使用vgs 命令显示,详细信息可以使用vgdisplay,由下图可知成功将VG(Vol_MyVg)扩展为8GB
2、扩展逻辑卷(LV) - My_Lv
lvextend:LV的扩充用法:lvextend -L [+]#[mMgGtT] /dev/卷组名/逻辑卷名
-L:指定大小,带有+ 号是指在原有逻辑卷上进行增加,不带则是指调整大小为指定数值
先用 lvs 或者 df -h 看看原来逻辑卷的大小,这里为3GB。
我们使用命令 lvextend -L +2G MyLv 来扩展逻辑卷MyLv
此时使用命令 lvs 可见的名为MyLv逻辑卷已变成5GB,但是命令 df -h下挂载点仍然为3GB,我们需使用命令 resize2fs /dev/卷组名/逻辑卷名
来通知内核
LVM缩减实现
经过LVM扩展后,LVM大小情况为,卷组Vol_MyVg的大小为8GB,逻辑卷MyLv的大小为5GB。假设我们要将卷组Vol_MyVg大小缩减至2GB,逻辑卷MyLv的大小缩减至1GB,需进行以下操作。
1、缩减逻辑卷(LV) - My_Lv
第一步、使用 umount /dev/卷组名/逻辑卷名 命令 卸载已挂载的逻辑卷第二步、e2fsck -f
/dev/卷组名/逻辑卷名 命令 检测逻辑卷是否正常
第三步、resize2fs
/dev/卷组名/逻辑卷名 #[mMgGtT] 命令通知内核
第四步、lvreduce -L [-]#[mMgGtT] /dev/卷组名/逻辑卷名 命令缩减大小,注意
- 号(有则缩减多少,无则缩减到多少)
第五步、mount 挂载使用
2、缩减卷组(VG)- Vol_MyVg
注意事项:a. 卷组大小必须大于由此卷组(VG)建立的逻辑卷(LV)的大小之和。
b. 由于卷组是由物理卷(PV)构成,缩减时,必须将所移除的物理卷(PV)的数据(物理块(PE))移动到该卷组中的其它PV中去。
第一步、使用 pvs 命令查看各PV空间状态,选择要移除的PV,用来缩减VG的大小
第二步、使用 pvmove 要移除的PV设备名 其它PV设备名 命令将卷组上的所要移除的PV,移动到该卷组中的其它PV中
第三步、是用 vgreduce 卷组名
要移除的PV设备名 命令进行VG的缩减
实现LVM快照(snapshot)
lvcreate -L#[mMgGtT] -p r
-s -n
snapshot_lv_name original_lv_name
选项:
-L #[mMgGtT]:指定快照的大小
-p|--permission:指定权限 r 只读,w只写,rw读写
-n:snapshot_lv_name,快照名 original_lv_name,被快照的LV名
相关文章推荐
- linux 安装 ftp
- linux 程序自动运行总结
- linux基础常用命令
- CentOs 安装主意事项
- hadoop学习;大数据集在HDFS中存为单个文件;安装linux下eclipse出错解决;查看.class文件插件
- imx6q处理器,linux操作系统平台搭建 从eMMC启动系统
- imx6q处理器,linux操作系统平台搭建 从SD卡启动系统
- Linux + javaEE 学习笔记---Linux常用命令设定运行级别
- gpg keyserver
- Linux kernel release 4.4 中文翻译
- win10 与linux mint双系统 只能进入mint而无法进入windows的解决方案
- Linux第二天02
- CENTOS6 安装配置 pptpd 心得
- Linux mint 亮度调节
- Linux进程学习笔记(一)
- centos设置服务开机自启动
- linux下C语言ip有关
- ARM64 Linux的启动分析
- VMWare+CentOs7+hadoop+hbase 安装
- linux(centos)下每天自动备份mysql数据库