LVM的应用与管理

简介:

 LVM(逻辑卷管理器)


导语:其重点在于可以弹性调整文件系统的容量,通过交换PE物理扩展块来进行数据转换,将原本LV内的PE转移到其他设备中以降低LV容量,或将其他设备的PE加到此LV中以加大容量。


LVM实作流程(vmware- redhate-5.4


1.先准备几个磁盘,或是一个磁盘创建多个分区均可以;


2.并修改其ID号为8e,如下图:


注:分区的ID为8e,它的出现会导致system变成“Linux LVM”。其实没有设置成为8e也没关系,不过某些LVM的检测命令可能会检测不到该分区。


3.PV(物理卷)阶段


   用pvcreate将物理分区新建成为pv


   用pvscan查看目前系统里面任何具有pv的磁盘,如下图:



4.VG(卷用户组)阶段


vgcreate:创建vg组,



vgdisplay显示目前系统上面的VG状态


liuvg为例,如下图:



 5. LV(逻辑卷)阶段


     lvcreate:新建LV; 


     lvscan:查询系统上面的LV; 



   将逻辑卷格式化,并设置挂载点



我们现在已经构建好一个LV了,你可以自由应用/mnt/liuvm内的所有资源!


注:因上面做了两个VG组,所以就/dev/liuvg/liulv/dev/yuavl/yualv


还有/media/liuvm/media/yuavm不必太过较真,只是个事例。



6.LV的优点就是能够弹性调整文件系统的容量,如下图,设备上没有空间:放大LV容量,



新建物理卷,并将其加入相同的vg



可以通过vgdisplay 查看PE块的剩余情况,


并用lvresize -l (小写的L,不是1)  +pe块数 /dev/yuavg/yualv


lvdisplay  查看系统上面的LV状态,发现LV size 已经增大


但用df -h 查看文件系统时,/dev/yuavg/yualv的文件系统大小并没有增加,


需要resize2fs /dev/yuavg/yualv,实现将LV容量扩充到整个文件系统,如下图:




 7.缩小LV容量(从中抽离出一个文件分区由实验环境设置可知,也就是121PE,PE块的说法是在VG组建立之后才有的。)


首先卸载挂载的LV逻辑卷,延续上例,


 7.1 umount /mnt/yuavm


    注:在扩充LV容量时支持on-line模式,但缩小LV容量时一定要先卸载


 7.2resize2fs命令缩小/dev/yuavg/yualv的大小



7.3 lvresize缩小yualv的容量



7.4通过pvdisplay命令可知/dev/sdd2已经被抽离出来,但可能我们并不想抽离出它,而是另一块分区/dev/sdd1,



 7.5. 通过pvmove /dev/sdd1 /dev/sdd2


pvmove 来源PV 目标PV,可以将/dev/sdd1内的全部PE移动到 /dev/sdd2尚未被使用的PEFree PE)去。



7.6 再通过pvscan查看,就已经达到了我们预期的效果



7.7 但是/dev/sdd1还是属于VG  yuavg组的,

  通过vgreduce yuavg /dev/sdd1 


  pvremove /dev/sdd1 


  fdisk /dev/sdd 修改文件系统分区ID,实现彻底的复原


注:扩充LV容量与缩小LV容量时,要注意lvresize的使用顺序,

扩充时,先用lvresize 增加PE,实现扩充,再用resize2fs扩充到整个文件系统;

而缩小时,不支持on-line缩减,应先用resize2fs实现文件系统的缩小,再用lvresize实现lv的缩小,最终实现各自目的。

 

总结与扩展:LVM的重点在于弹性调整文件系统的容量,而并非在于性能与数据保全上面,所以可以利用RAID上面构建LVM的功能,以达到两者兼顾的目的,有关内容近期更新……


vg命令:

vgcreate /dev/sda domovg


lvcreate -L  -n www  domovg


##add lv space

lvresize -L 1G  /dev/domovg/www

resize2fs /dev/domovg/www 1G


##extend lv space

lvextend -L +10G /dev/domovg/www

resize2fs /dev/domovg/www




本文转自 刘园  51CTO博客,原文链接:http://blog.51cto.com/colynn/1006686

相关文章
|
Linux 开发工具
LVM管理
简单实践
221 0
LVM管理
|
Oracle 关系型数据库 开发工具