2020-10-25
Linux第十天
LVM-逻辑卷管理器
管理器是Linux系统用于对硬盘分区进行管理的一种机制,理论性较强,其创建初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷。尽管对传统的硬盘分区进行强制扩容或缩容从理论上来讲是可行的,但是却可能造成数据的丢失。而LVM技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了个抽象的卷组,可以把多块硬盘进行卷组合并。这样一来,用户不必关心物理硬盘设备的架构和布局,就可以实现对硬盘分区的动态调整。
第1步:让新添加的两块硬盘设备支持LVM技术。
[[email protected]~]#pvcreate/dev/sdb/dev/sdc
Physicalvolume"/dev/sdb"successfullycreated
Physicalvolume"/dev/sdc"successfullycreated
第2步:把两块硬盘设备加入到storage卷组中,然后查看卷组的状态。
[[email protected]~]#vgcreatestorage/dev/sdb/dev/sdc
Volumegroup"storage"successfullycreated
[[email protected]~]#vgdisplay
—Volumegroup—
VGNamestorage
SystemID
Formatlvm2
MetadataAreas2
MetadataSequenceNo1
VGAccessread/write
VGStatusresizable
MAXLV0
CurLV0
OpenLV0
MaxPV0
CurPV2
ActPV2
VGSize39.99GiB
PESize4.00MiB
TotalPE10238
AllocPE/Size0/0FreePE/Size10238/39.99GiB
VGUUIDKUeAMF-qMLh-XjQy-ArUo-LCQI-YF0o-pScxm1
………………省略部分输出信息………………
第三步,进行切割形成LV逻辑卷,这里需要注意切割单位的问题。在对逻辑卷进行切割时有两种计量单位。第一种是以容量为单位,所使用的参数为-L。例如,使用-L150M生成一个大小为150MB的逻辑卷。另外一种是以基本单元的个数为单位,所使用的参数为-l。每个基本单元的大小默认为4MB。例如,使用-l37可以生成一个大小为37×4MB=148MB的逻辑卷。
[[email protected]~]#lvcreate-nvo-l37storage
Logicalvolume"vo"created
[[email protected]~]#lvdisplay
—Logicalvolume—
LVPath/dev/storage/vo
LVNamevo
VGNamestorage
LVUUIDD09HYI-BHBl-iXGr-X2n4-HEzo-FAQH-HRcM2I
LVWriteAccessread/write
LVCreationhost,timelocalhost.localdomain,2017-02-0101:22:54-0500
LVStatusavailable
#open0
LVSize148.00MiB
CurrentLE37
Segments1
Allocationinherit
Readaheadsectorsauto
-currentlysetto8192
Blockdevice253:2
………………省略部分输出信息………………
第4步:把生成好的逻辑卷进行格式化,然后挂载使用。Linux系统会把LVM中的逻辑卷设备存放在/dev设备目录中(实际上是做了一个符号链接),同时会以卷组的名称来建立一个目录,其中保存了逻辑卷的设备映射文(即/dev/卷组名称/逻辑卷名称)。
[[email protected]~]#mkfs.ext4/dev/storage/vo
mke2fs1.42.9(28-Dec-2013)
Filesystemlabel=
OStype:Linux
Blocksize=1024(log=0)
Fragmentsize=1024(log=0)
Stride=0blocks,Stripewidth=0blocks
38000inodes,151552blocks
7577blocks(5.00%)reservedforthesuperuser
Firstdatablock=1
Maximumfilesystemblocks=33816576
19blockgroups
8192blockspergroup,8192fragmentspergroup
2000inodespergroup
Superblockbackupsstoredonblocks:
8193,24577,40961,57345,73729
Allocatinggrouptables:done
Writinginodetables:done
Creatingjournal(4096blocks):done
Writingsuperblocksandfilesystemaccountinginformation:done
[[email protected]~]#mkdir/linuxprobe
[[email protected]~]#mount/dev/storage/vo/linuxprobe
最后挂载永久生效,修改配置文件即可。
创建成功后,逻辑卷可以扩容,缩小,制作快照卷,删除卷。
首先,扩容是卷组VG有足够的资源才可以。
然后,缩小容量,需要备份数据防止丢失。
还有,快照卷就是拍摄当时的状态,以便还原。切的快照大小与内存占用(逻辑卷的占用)有关。
lvcreate -L 120M -s -n snap 哪个逻辑卷(不是挂载点)
还原快照,
lvconvert --merge 快照卷路径(使用lvdisplay查看)。
最后一个,删除卷。
当生产环境中想要重新部署LVM或者不再需要使用LVM时,则需要执行LVM的删除
操作。为此,需要提前备份好重要的数据信息,然后依次删除逻辑卷、卷组、物理卷设备,
这个顺序不可颠倒。
第1步:取消逻辑卷与目录的挂载关联,删除配置文件中永久生效的设备参数。
[[email protected]~]#umount/linuxprobe
[[email protected]~]#vim/etc/fstab
#/etc/fstab
#CreatedbyanacondaonFriFeb1922:08:592017
#Accessiblefilesystems,byreference,aremaintainedunder’/dev/disk’
#Seemanpagesfstab(5),findfs(8),mount(8)and/orblkid(8)formoreinfo
/dev/mapper/rhel-root/xfsdefaults11
UUID=50591e35-d47a-4aeb-a0ca-1b4e8336d9b1/bootxfsdefaults12
/dev/mapper/rhel-swapswapswapdefaults00
/dev/cdrom/media/cdromiso9660defaults00
第2步:删除逻辑卷设备,需要输入y来确认操作。
[[email protected]~]#lvremove/dev/storage/vo
Doyoureallywanttoremoveactivelogicalvolumevo?[y/n]:y
Logicalvolume"vo"successfullyremoved
第3步:删除卷组,此处只写卷组名称即可,不需要设备的绝对路径。
[[email protected]~]#vgremovestorage
Volumegroup"storage"successfullyremoved
第4步:删除物理卷设备。
[[email protected]~]#pvremove/dev/sdb/dev/sdc
Labelsonphysicalvolume"/dev/sdb"successfullywiped
Labelsonphysicalvolume"/dev/sdc"successfullywiped
在上述操作执行完毕之后,再执行lvdisplay、vgdisplay、pvdisplay命令来查看LVM的信
息时就不会再看到信息了(前提是上述步骤的操作是正确的)