码迷,mamicode.com
首页 > 其他好文 > 详细

LVM逻辑卷管理

时间:2014-07-18 13:11:32      阅读:207      评论:0      收藏:0      [点我收藏+]

标签:pe   快照   lvm   lv   pv   


LVM:Logical Volumn Manager 逻辑卷管理


是用来做什么的?


lvm将存储设备变成PV,然后把一个或多个PV组织成一个或多个卷组,再在卷组上创建LV。创建好LV后对其格式化,就可以挂载使用了。用LVM管理的硬盘好处是:不关机对分区大小调整,扩容方便,一个分区可以位于多块硬盘上。对每个分区的大小没有需要。可以做快照卷。



名词解释


 pv:物理卷,位于LVM的最底层,每个pv由一个分区组成。只有把分区标记为pv后才能加入vg。


 vg: 卷组,由一个或多个pv组成,卷组用来管理pv,删除、添加pv在这里完成。pe的大小也在这里指定。


 pe:物理盘区,位于pv中。默认4M,单位只能为2的N次方,4M、8M等。创建卷组的时候指定后不能再更改。是卷组分配给lv最小容量单位。


 lv:逻辑卷,创建好lv后格式化lv,然后再挂载就可以使用了。


 快照卷: 通过很短的时间对某个分区做一个快照。是一种特殊的lv,一般不住这里写数据,用来做备份。应用场景:对某个分区做备份时,可能需要一个小时。假如第一个复制是的A文件,最后一个复制的B文件,就有可能出现A文件的内容是一小时之前的,复制B文件时可能时间已经过去了一个小时,B文件内容是一小时之后的。这样整个数据就出现了虎头蛇尾,这就很不妥了。如果没有镜像卷,就需要停止原卷写入,然后再备份,这样的耽误时间后果是可想而知的。而快照圈会把在快照之后有变动的文件放到自己的空间保存一份,没有变动的文件还会存储在原分区上。有了这个机制,通过快照卷备份的数据都是同一个时刻的。快照卷大小由变动文件多少决定,最大与原卷一样。快照卷与原卷必须在一个vg上。



lvm创建顺序:硬盘分区-->把分区变成pv-->创建vg-->创建lv-->格式化lv-->挂载

   注意:硬盘分区时,一定要标记分区类型为8e。如不标记有可能把pv拿到其它系统上扫描不到此分区做过pv。



命令


PV相关命令


pvcreate 创建卷组

pvs 查看当前系统的物理卷组

pvdisplay 查看当前系统的物理卷组的详细信息

pvremove 移除pv

 如:pvremove /dev/sdb1

pvmove 把指定pv中的数据都移动到其它pv中,前提其它pv有足够空间。

 如:pvmove /dev/sdb1

pvscan 当pv移动到其它计算机上时pv扫描,



VG相关命令


vgcreate 创建vg

 -s: 指定pe的大小,单位有k,m,g,t,e,p 但要是2的N次方,没有特殊要求不用指定。

vgs 显示当前系统的vg信息,(vg0是系统自带的。)

vgdisplay 显示当前系统的vg详细信息

vgremove 删除vg命令

vgextend vg扩展

vgreduce 对vg进行缩减,如果vg中的pv有数据,需要用pvmove移动pv中的数据

vgscan vg扫描命令

vgrename vg改名


LV相关命令

lvcreate 创建lv

 -n lvname:指定lv名字

 -L 2G:指定lv的大小常用的单位有m,M,g,G,t,T。比如这里指定2G。

 -s 创建快照卷

 -p 指定权限,r为只读,rw为读写。

 

 lvcreate -n mylv -L 2500G myvg

 lvs 显示lv

 lvdisplay 显示lv,更详细

 lvremove 移除lv

 lvextend 扩展lv

 lvreduce 缩减lv

 lvscan 扫描lv


其它命令

resizee2fs  增加或缩减文件系统的命令

fuser 查看某个挂载点是否有进程使用

ex2fsck 检测ext系系文件系统。



创建一个2t的lv,创建好后对其扩展到2.5T。然后对其做快照卷。(以ext系统文件系统示例)


创建LVM


1,系统上挂了5块500G的硬盘,先对2块硬盘分区,指定分区类型标记为8e。

#fidsk /dev/sdc

bubuko.com,布布扣bubuko.com,布布扣


2,把这分好区的硬盘创建成pv

#pvcreate /dev/sd{c,d}1

bubuko.com,布布扣

  提示创建成功

#pvs

bubuko.com,布布扣

    /dev/sda2 是系统自带的。

3,创建卷组

 #vgcreate myvg /dev/sd{c,d}1
 #vgs

bubuko.com,布布扣bubuko.com,布布扣

使用pvdisplay命令查看更详细的信息

bubuko.com,布布扣bubuko.com,布布扣


4,创建好vg后就可以创建lv了。

 #lvcreate -n mystor -L 999g myvg
 #lvs

bubuko.com,布布扣bubuko.com,布布扣

创建好lv后其设备文件在/dev/下和vg名一样的目录里看到连接文件。

bubuko.com,布布扣

bubuko.com,布布扣


5,格式化,挂载使用。

 #mkfs -t ext4 /dev/myvg/mystor
 #mount /dev/myvg/mystor /data

bubuko.com,布布扣bubuko.com,布布扣



扩展LVM

1,新硬盘分区,然后添加到vg中

#vgextend myvg /dev/sde1 /dev/sdf1
#vgs

bubuko.com,布布扣

2,加进来了,开始扩展lv

#lvextend -L +500g /dev/myvg/mystor

bubuko.com,布布扣

成功了

#lvs

bubuko.com,布布扣

3,该扩展文件系统了。

#resize2fs /dev/myvg/mystor

bubuko.com,布布扣

扩展前

bubuko.com,布布扣

扩展后

bubuko.com,布布扣



lvm 创建快照卷

    在创建快照卷前一定要确保没有程序对原卷做写操作,否则有创建快照时会把文件内容正在改变时候时态做为快照。为了确保尽量减少做快照时占用lv的时候,这里把三条命令放在一起执行了,第一句命令的意思是临时把原卷的挂载点设置为只读,第二句命令创建快照卷,第三句命令把前面修改原卷挂载点还原。

 mount -o remount,ro /dev/myvg/mystor && lvcreate -L 1g -s -p r -n mystor-snap /dev/myvg/mystor && mount -o remount,rw /dev/myvg/mystor /data


bubuko.com,布布扣

命令太长,没有全部截下来。

然后挂载快照卷

bubuko.com,布布扣

备份完成后快照卷卸载,然后删除快照卷。这时留下快照卷已经没有意义了。

bubuko.com,布布扣


总结

    创建LVM的步骤:fdisk创建分区,并标记分区类型为8e(linux lvm)-->创建pv-->创建vg(是否指定pe大小)-->创建lv-->格式化lv-->挂载


    扩展lv的步骤:如果vg空间不够需要给vg添加空间,如果空间足够则使用lvextend命令扩展,然后使用resizee2fs命令扩展分区容量。


    快照卷:必须与原卷在一个vg,且vg要有足够空间。创建快照卷的时候要保证原卷没有程序访问。尽量用最小时间创建原卷。挂载快照卷,备份完成后删除快照卷。


    缩减lv:卸载lv(umount)-->使用(e2fsck -f)强制检测文件系统,确保检测后没有问题-->使用resize2fs 命令缩减文件系统-->使用lvreduce  命令缩减-->挂载缩减后的lv。  注:缩减最小不能低于已使用的空间。



    缩减vg:使用pvmove命令移动要取出pv上的文件到其它pv。前题其它pv空间要足够-->用vgreduce命令移除pv。

        

           


最后附上马哥说过的话:“缩减有危险,操作需谨慎!”







本文出自 “红颜易逝豪情长” 博客,请务必保留此出处http://wukui.blog.51cto.com/1080241/1439748

LVM逻辑卷管理,布布扣,bubuko.com

LVM逻辑卷管理

标签:pe   快照   lvm   lv   pv   

原文地址:http://wukui.blog.51cto.com/1080241/1439748

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!