您的位置:首页 > 其它

总结之:LVM硬盘管理(二)

2014-04-05 18:02 162 查看
首先回顾一下http://mybsir.blog.51cto.com/4618614/1388505LVM硬盘管理(一)中的相关命令。pvcreate 创建PV #pvcreate /dev/sdb1 pvdisplay 显示PV信息 #pvdisplay [/dev/sdb1]vgcreate 创建VG #vgcreate Datalvm /dev/sdb1 /dev/sdc1 /dev/sdd1vgdisplay 显示VG信息 #vgdisplay [Datalvm]lvcreate 创建LV #lvcreate –L Size –n Mydata Datalvmlvdisplay 显示LV信息 #lvdisplay [Datalvm]vgextend 扩展VG空间大小 #vgextend Datalvm /dev/sdb2lvextend 扩展LV分区大小 #lvextend –L [+]Size –n /dev/Datalvm/Mydata resize2fs 调整文件系统大小#resize2fs /dev/Datalvm/Mydatapvmove 转移PV中的数据 #pvmove /dev/sdb1 [/dev/sdd1]vgreduce 移除PV卷 #vgreduce Datalvm /dev/sdb1lvremove 移除LV #lvremove Mydatavgremove 移除VG #vgremove /dev/Datalvm回顾1:创建LVM的步骤,首先创建PV、然后创建VG、接着创建LV、最后创建文件系统、挂载文件系统。回顾2:LV的扩容步骤:①LV所在VG有足够空间扩容,使用lvextend命令进行扩容,使用resize2fs命令调整分区大小;②LV所在VG没有足够空间扩容,首先添加一块硬盘,创建PV,将该PV加到VG中,然后再进行①中的步骤接下来来说一下如何缩减VG、LV的大小、如何移除安全的移除硬盘和快照卷的使用一般生产环境中,基本不会出现缩减VG或者LV的情况,因为这会对数据带来很大的安全隐患,但是如果你遇到需要缩减VG或者LV的情况,那么下边这些操作则是需要你来掌握的。如下图所示:一、当我们需要扩展LVM下的磁盘空间大小(即文件系统大小)时,首先需要确定VG中是否还有足够空间进行扩展,如果空间不足则需要先通过添加PV的方式扩展VG,然后通过lvextend扩展LV的大小,最后通过resize2fs扩展文件大小。二、当我们需要缩减LVM下的磁盘空间大小(即文件系统大小)时,首先需要确定我们要缩减多大空间(但是至少能容纳原有所有文件),然后通过e2fsck卸载文件系统并强制检测,接着通过resize2fs缩减文件系统大小,最后通过lvrecude缩减LV的大小。

详细步骤:
一、缩减VG1、首先要确定要移除的哪个PV2、将此PV上的数据转移到该VG上的其他PV上:pvmove 3、从卷组中将此PV移除 vgreduce VG_NAME PV_NAME4、移除成功示例:我的sdd硬盘需要另作他用,需要将sdd硬盘从LVM系统中卸载。1、将sdd1上的数据转移到sdb2上pvmove /dev/sdd1 /dev/sdb2 如果不指定转移到特定的PV上,则pvmove /dev/sdd1,系统会自行决定转移数据到该VG下的其他PV上

2、从VG中移除PVvgreduce Datalvm /dev/sdd1 使用pvs可以查看PV的简单信息,可以看到sdd1已经从Datalvm卷组中移除。

3、删除PVpvremove /dev/sdd1 再次使用pvs查看PV,发现sdd1已经不再是PV,接着你就可以将sdd硬盘用作其他用途了。

二、缩减LV1、确定缩减为多大的空间?前提:至少能容纳原有的所有数据2、卸载并强行检测文件系统:e2fsck –f VG_NAME3、调整文件系统大小:resize2fs /path/to/device SIZE4、缩减LV大小:lvreduce -L [-]SIZE /path/to/lv示例:将Mydata逻辑卷缩减到8G1、为了演示缩减LV是否会对文件产生损坏效果,我们先复制一个文件到我们的LV中。mount /dev/Datalvm/Mydata /data #如果没有挂载就挂载到/data目录下cp /etc/fstab /data2、卸载LV并检测文件系统

3、调整文件系统大小到8Gresize2fs /dev/Datalvm/Mydata 8G

4、(可省略)挂载文件系统,并查看大小,确认是否调整成功,然后卸载文件系统mount /dev/Datalvm/Mydata /datadf –h

umount /data #卸载文件系统5、缩减LV大小(有风险)

6、挂载文件系统,并查看大小,查看文件是否损坏mount /dev/Datalvm/Mydata /datadf –hcat /data/fstab

文件未被损坏,缩减成功三、快照卷我们都知道Vmware有一个非常好用的功能,那就是快照。在我们需要进行一些危险的操作时,先给我们的虚拟机创建一个快照,然后你就可以随意在虚拟机中进行操作了。一旦操作过程中出现了问题怎么办,恢复快照卷就OK了,虚拟机就会恢复到我们创建快照卷时的那个状态。在LVM中也有一个快照功能,那就是快照卷。 快照卷是一个特殊的逻辑卷,它必须与我们需要创建快照卷的逻辑卷在同一个卷组中。创建快照时,它会对逻辑卷进行准确的拷贝,保证源卷与创造快照卷时的数据完全一致。快照只有在与源卷中的数据不同时,才会消耗空间,所以一般快照卷都会很小。如果我们在创建了快照卷之后修改源卷中的数据,快照卷会将旧的数据复制到快照中。如果我们需要对源卷中的数据进行备份、临时复制或者其他的一些操作,快照就是一个非常好的选择。创建快照卷需要注意的问题:1、由于数据缓存的存在,在创建快照时,需要先将缓存刷新到源卷中。2、快照卷的生命周期为整个数据操作时长,在这段时长内,源卷中的数据增长量不能超过快照卷的大小。3、快照卷根据你的需求决定是否是只读的4、快照卷与源卷在同一个卷组中创建快照卷lvcreate –L Size -s -p 权限(r 只读) –n 快照卷名称 源卷lvcreate –L 500M –s –p r –n Mydata_snap /dev/Datalvm/Mydata

这样快照卷就创建好了。我们把快照卷挂载上看下快照卷中的文件mkdir /snapmount /dev/Datalvm/Mydata_snap /snapls /snap

我们看一下快照卷中的fstab文件,与源卷中的文件一模一样

接着我们修改一下源卷Mydata中的fstab文件,在文件最后添加一行”This is a test line.”echo “This is a test line.”>>/data/fstabtail –5 /data/fstab

然后再看一下快照卷Mydata_snap中的fstab文件tail –5 /snap/fstab

快照卷中的文件并没有被修改。由此,我们可以使用快照卷进行一下一些操作:1、备份源卷中的文件创建完快照卷之后,备份快照卷中的文件即可2、进行软件测试假如我们的源卷中安装了软件,软件需要升级,那么我们先创建一个快照卷,将升级软件安装到快照卷中,并在快照卷中测试和验证软件。如果发现测试问题,只需要删除快照卷即可;如果测试没有问题,那么可以直接将快照卷中的数据恢复到源卷中。总结:LVM是linux中非常重要的磁盘管理工具,快照卷的存在也会使我们的工作有更多的操作性。最后,谢谢大家的围观,如果文中有什么错误,希望大家指出。祝大家有个愉快的假期~~本文出自 “Linux步行街” 博客,请务必保留此出处http://mybsir.blog.51cto.com/4618614/1390938
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: