linux lvm管理详解.docx_第1页
linux lvm管理详解.docx_第2页
linux lvm管理详解.docx_第3页
linux lvm管理详解.docx_第4页
linux lvm管理详解.docx_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

LVM是什么,与普通的磁盘分区有什么区别,有什么优势如何创建LVM,如何增加其大小,如何减少其大小从PD到PV到VG再到LV,描述一下为什么它能实际在线扩容和缩减LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和 分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。它最主要的功能是能灵活的调整分区的大小它是如何形成的呢?首先,可以将块设置成lvm格式,即在fdisk时设置为8e。那么这种块设置就从PD变成了PV。即物理卷。PV:物理卷 physical volumevg: 卷组:由多个PV可以组成一个卷组,每个PV只能属于一个卷组lv:逻辑卷,vg相当于一个逻辑磁盘,在这个逻辑的磁盘上,再来划分出逻辑的分区就是lv。可以对lv进行分区、格式化。pe: physical extend.相关于文件系统的block,一个vg的最大容量由PE的大小来决定。因为一个vg最多可以容纳65534个PE,PE的默认大小是4M。所以默认来说,如果不在创建卷组时更改PE的大小,这个vg的容量最多只有256G一、pv的命令pvcreate: initializeadiskorpartitionforusebyLVM格式: pvcreate 块设备名称.pvdisplay: displayattributesofaphysicalvolume格式 pvdisplay pv名称pvscanpvremove:removeaphysicalvolume格式 pvremove pv名称例: 在下面的sdb5-8,创建四个PVsector:扇区track:磁道cylinders:柱面Disk/dev/sdb:21.5GB,21474836480bytes255heads,63sectors/track,2610cylindersUnits=cylindersof16065*512=8225280bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDiskidentifier:0x4ebf972fDeviceBootStartEndBlocksIdSystem/dev/sdb116545253223+83Linux/dev/sdb46552610157115705Extended/dev/sdb5655104731567418eLinuxLVM/dev/sdb61048144031567418eLinuxLVM/dev/sdb71441183331567418eLinuxLVM/dev/sdb81834222631567418eLinuxLVM/dev/sdb9222726103084448+83Linux创建PVrootcentos6#pvcreate/dev/sdb5,6,7,8Physicalvolume/dev/sdb5successfullycreatedPhysicalvolume/dev/sdb6successfullycreatedPhysicalvolume/dev/sdb7successfullycreatedPhysicalvolume/dev/sdb8successfullycreatedrootcentos6#pvsPV VG FmtAttrPSizePFree/dev/sda2vg_centos6lvm2a-59.51g0/dev/sdb5 lvm2a-3.01g3.01g/dev/sdb6 lvm2a-3.01g3.01g/dev/sdb7 lvm2a-3.01g3.01g/dev/sdb8 lvm2a-3.01g3.01gPV的名称 所属VG 磁盘格式 PV容量 PV空闲容量rootcentos6#pvdisplay-Physicalvolume-PVName/dev/sda2VGNamevg_centos6PVSize59.51GiB/notusable3.00MiBAllocatableyes(butfull)PESize4.00MiBTotalPE15234FreePE0AllocatedPE15234PVUUIDH6y2wC-Rc73-K3OU-Mn3R-ojvi-LhkB-1uaUpI/dev/sdb5isanewphysicalvolumeof3.01GiB-NEWPhysicalvolume-PVName/dev/sdb5VGNamePVSize3.01GiBAllocatableNOPESize0TotalPE0FreePE0AllocatedPE0PVUUIDAhsKzf-bnMj-Iefd-kI97-WtRX-S1IB-KEG24O/dev/sdb6isanewphysicalvolumeof3.01GiB-NEWPhysicalvolume-PVName/dev/sdb6VGNamePVSize3.01GiBAllocatableNOPESize0TotalPE0FreePE0AllocatedPE0PVUUIDnBeeU0-GggM-2UHO-zZ7M-g27G-UX2C-Q61zzu/dev/sdb7isanewphysicalvolumeof3.01GiB-NEWPhysicalvolume-PVName/dev/sdb7VGNamePVSize3.01GiBAllocatableNOPESize0TotalPE0FreePE0AllocatedPE0PVUUIDLRghKP-Ey0M-mSdx-BCZI-0rDV-OfyF-mGN9rg/dev/sdb8isanewphysicalvolumeof3.01GiB-NEWPhysicalvolume-PVName/dev/sdb8VGNamePVSize3.01GiBAllocatableNOPESize0TotalPE0FreePE0AllocatedPE0PVUUIDl2dy8X-2HSj-Nl8H-hsxD-3ApO-m9iA-NjlrT2二、创建VGvgcreate: vgcreate-createavolumegroup格式 vgcreate 选项 vg名 pv名称 -s : 指定pe的大小vgdisplay: 显示vg的状态vgscan: 查找系统上是否有vg存在vgextend: 在VG内增加额外的pvvgreduce: 将某个pv从vg中删除vgremove: 删除一个vg将上述4个3G的PV中的三个创建一个VG,PE大小为8Mrootcentos6#vgcreate-s8Mmyvg/dev/sdb5,6,7Volumegroupmyvgsuccessfullycreatedrootcentos6#vgsVG#PV#LV#SNAttrVSizeVFreemyvg300wz-n-9.02g9.02gvg_centos6130wz-n-59.51g0rootcentos6#vgdisplay-Volumegroup-VGNamemyvgSystemIDFormatlvm2MetadataAreas3MetadataSequenceNo1VGAccessread/writeVGStatusresizableMAXLV0CurLV0OpenLV0MaxPV0CurPV3ActPV3VGSize9.02GiBPESize8.00MiBTotalPE1155AllocPE/Size0/0FreePE/Size1155/9.02GiB VGUUID4r82zu-R0YK-fVVe-dTs6-bEtZ-i3rU-SI5xNT三、创建lvlvcreate -L #:后面接容量,可以是M、G等 -l #: 后面接PE的个数 -n : 后接由用户定义的lv名称格式: lvcreate 容量大小 名称 vg名称例:rootcentos6#lvcreate-L8G-nmylv/dev/myvg Logicalvolumemylvcreatedlvscanlvdisplaylvextendlvreducelvremovelvresizerootcentos6#lvscanACTIVE/dev/myvg/mylv8.00GiBinheritACTIVE/dev/vg_centos6/lv_root50.00GiBinheritACTIVE/dev/vg_centos6/lv_home5.57GiBinheritACTIVE/dev/vg_centos6/lv_swap3.94GiBinheritrootcentos6#lvdisplay/dev/myvg/mylv-Logicalvolume-LVPath/dev/myvg/mylvLVNamemylvVGNamemyvgLVUUID28bXXM-8I9A-ksWP-9DVg-4d66-sZIf-OvreFmLVWriteAccessread/writeLVCreationhost,timecentos6,2016-06-1717:01:55+0800LVStatusavailable#open0LVSize8.00GiBCurrentLE1024Segments3AllocationinheritReadaheadsectorsauto-currentlysetto256Blockdevice253:3四、格式化、挂载到/lvmrootcentos6/#mke2fs-j/dev/myvg/mylvrootcentos6/#mount/dev/myvg/mylv/lvmrootcentos6/#ls/lvmlost+foundrootcentos6/#df-hFilesystem SizeUsedAvailUse%Mountedon/dev/mapper/myvg-mylv7.9G147M7.4G2%/lvm五、高级特性之扩容由于业务需要,之前由三个块设备组成的VG,上面有一个lv叫mylv,容量已经不够用。现在需要扩容。经过pvs查看,发现还有一个pv可以加到这个vg中来rootcentos6/#pvsPVVGFmtAttrPSizePFree/dev/sda2vg_centos6lvm2a-59.51g0/dev/sdb5myvglvm2a-3.01g0/dev/sdb6myvglvm2a-3.01g0/dev/sdb7myvglvm2a-3.01g1.02g/dev/sdb8lvm2a-3.01g3.01g接下来,我们就来演示如何将pv /dev/sdb8加入到vg中,并且将扩大mylv这个lv的容量到可用的最大容量rootcentos6/#vgextendmyvg/dev/sdb8Volumegroupmyvgsuccessfullyextendedrootcentos6/#vgsVG#PV#LV#SNAttrVSizeVFreemyvg410wz-n-12.03g4.03gvg_centos6130wz-n-59.51g0从上面可以看到,我们的myvg还有4G的容量可供使用如果需要将一个lv扩容,需要遵循以下步骤1. 增加物理设备的容量2. 将物理设备转化成PV3. 将PV增加到VG extend4. 通过lvextend来增加lv的容量5. 通过resize2fs来增加lv里文件系统的容量前面3部已经完成了,接下来我们来将lv扩容lvextend或者lvresize,都可以实现扩容,我们以lvextend为例rootcentos6#vgdisplay-Volumegroup-VGNamemyvgSystemIDFormatlvm2MetadataAreas4MetadataSequenceNo3VGAccessread/writeVGStatusresizableMAXLV0CurLV1OpenLV1MaxPV0CurPV4ActPV4VGSize12.03GiBPESize8.00MiBTotalPE1540AllocPE/Size1024/8.00GiBFreePE/Size516/4.03GiB (有516个PE,共4.03G的空闲磁盘)VGUUID4r82zu-R0YK-fVVe-dTs6-bEtZ-i3rU-SI5xNTrootcentos6#lvextend-l+516/dev/myvg/mylvExtendinglogicalvolumemylvto12.03GiBLogicalvolumemylvsuccessfullyresizedrootcentos6#vgdisplay-Volumegroup-VGNamemyvgSystemIDFormatlvm2MetadataAreas4MetadataSequenceNo4VGAccessread/writeVGStatusresizableMAXLV0CurLV1OpenLV1MaxPV0CurPV4ActPV4VGSize12.03GiBPESize8.00MiBTotalPE1540AllocPE/Size1540/12.03GiBFreePE/Size0/0VGUUID4r82zu-R0YK-fVVe-dTs6-bEtZ-i3rU-SI5xNT现在lv的空间已经扩大到了12G,但文件系统的空间有多大呢?rootcentos6#df-lh/lvmFilesystemSizeUsedAvailUse%Mountedon/dev/mapper/myvg-mylv7.9G147M7.4G2%/lvm最后,我们需要使用resize2fs来扩展文件系统的空间,注意,文件系统的最大空间不能超过lv的大小,否则会出错的rootcentos6#resize2fs/dev/myvg/mylv 注意:这里被resize2fs的是lv设备,如果不指定大小的话,默认会使用所有的可用空间的resize2fs1.41.12(17-May-2010)Filesystemat/dev/myvg/mylvismountedon/lvm;on-lineresizingrequiredolddesc_blocks=1,new_desc_blocks=1Performinganon-lineresizeof/dev/myvg/mylvto3153920(4k)blocks.Thefilesystemon/dev/myvg/mylvisnow3153920blockslong.rootcentos6#df-lh/lvmFilesystemSizeUsedAvailUse%Mountedon/dev/mapper/myvg-mylv12G149M12G2%/lvm缩减lvm的容量大小如下所示:pv /dev/sdb5,6,7,8,构成了myvg,然后把所有的容量都给了lv: mylv。挂载到了/lvm上。现在我们准备要缩减lv的容量,把/dev/sdb5从这个lv中进行移除那么也就是说,需要将这个lv缩减3.01G的容量或者说是减少385个PE的大小rootcentos6#pvsPVVGFmtAttrPSizePFree/dev/sdb5myvglvm2a-3.01g0/dev/sdb6myvglvm2a-3.01g0/dev/sdb7myvglvm2a-3.01g0/dev/sdb8myvglvm2a-3.01g0rootcentos6/#pvdisplay/dev/sdb6-Physicalvolume-PVName/dev/sdb6VGNamemyvgPVSize3.01GiB/notusable2.75MiBAllocatableyes(butfull)PESize8.00MiBTotalPE385FreePE0AllocatedPE385PVUUIDnBeeU0-GggM-2UHO-zZ7M-g27G-UX2C-Q61zzurootcentos6#lvsLV VG Attr LSizePoolOriginData%MoveLogCpy%SyncConvertmylvmyvg-wi-ao-12.03g rootcentos6#df-lh/lvmFilesystem SizeUsed Avail Use%Mountedon/dev/mapper/myvg-mylv12G149M12G2% /lvmrootcentos6#mount/dev/mapper/myvg-mylvon/lvmtypeext3(rw) 解决方案:先确定文件系统的剩余空间,再确定/dev/sdb5的容量。 如上已经明确了需求,但要注意:不能在线缩减lv的容量,而且这个缩减是和增加是相反的。一、将文件系统umount umount /lvm二、进行文件系统的检查rootcentos6#e2fsck-f/dev/myvg/mylve2fsck1.41.12(17-May-2010)Pass1:Checkinginodes,blocks,andsizesPass2:CheckingdirectorystructurePass3:CheckingdirectoryconnectivityPass4:CheckingreferencecountsPass5:Checkinggroupsummaryinformation/dev/myvg/mylv:13/794624files(0.0%non-contiguous),612597/3153920blocks三、缩减文件系统的容量rootcentos6#resize2fs/dev/myvg/mylv8900Mresize2fs1.41.12(17-May-2010)Resizingthefilesystemon/dev/myvg/mylvto2278400(4k)blocks.Thefilesystemon/dev/myvg/mylvisnow2278400blockslong.四、挂载文件系统rootcentos6#mount/dev/myvg/mylv/lvmrootcentos6#df-lh/lvmFilesystemSizeUsedAvailUse%Mountedon/dev/mapper/myvg-mylv8.6G2.2G6.0G27%/lvm五、 缩减lv的容量rootcentos6#lvresize-l-385/dev/myvg/mylvWARNING:Reducingactiveandopenlogicalvolumeto9.02GiBTHISMAYDESTROYYOURDATA(filesystemetc.)Doyoureallywanttoreducemylv?y/n:yReducinglogicalvolumemylvto9.02GiB (需要确认已存的数据要小于9.02G才可以按y)Logicalvolumemylvsuccessfullyresizedrootcentos6#vgdisplay-Volumegroup-VGNamemyvgSystemIDFormatlvm2MetadataAreas4MetadataSequenceNo5VGAccessread/writeVGStatusresizableMAXLV0CurLV1OpenLV1MaxPV0CurPV4ActPV4VGSize12.03GiBPESize8.00MiBTotalPE1540AllocPE/Size1155/9.02GiBFreePE/Size385/3.01GiB(现在再来看,已经有385个PE是空闲的了)VGUUID4r82zu-R0YK-fVVe-dTs6-bEtZ-i3rU-SI5xNT六、使用命令来查看哪个PV上有空闲的PE,并把/dev/sdb6的数据移到那个有空闲PE的PV上rootcentos6#pvdisplay-Physicalvolume-PVName/dev/sdb5VGNamemyvgPVSize3.01GiB/notusable2.75MiBAllocatableyes(butfull)PESize8.00MiBTotalPE385FreePE0AllocatedPE385PVUUIDAhsKzf-bnMj-Iefd-kI97-WtRX-S1IB-KEG24O-Physicalvolume-PVName/dev/sdb6VGNamemyvgPVSize3.01GiB/notusable2.75MiBAllocatableyes(butfull)PESize8.00MiBTotalPE385FreePE0AllocatedPE385PVUUIDnBeeU0-GggM-2UHO-zZ7M-g27G-UX2C-Q61zzu-Physicalvolume-PVName/dev/sdb7VGNamemyvgPVSize3.01GiB/notusable2.75MiBAllocatableyes(butfull)PESize8.00MiBTotalPE385FreePE0AllocatedPE385PVUUIDLRghKP-Ey0M-mSdx-BCZI-0rDV-OfyF-mGN9rg-Physicalvolume-PVName/dev/sdb8VGNamemyvgPVSize3.01GiB/notusable2.75MiBAllocatab

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论