![Linux快速入门与实战:基础知识、容器与容器编排、大数据系统运维](https://wfqqreader-1252317822.image.myqcloud.com/cover/769/43806769/b_43806769.jpg)
3.3.4 LVM使用
本节介绍LVM的最常用操作示例,包括创建逻辑卷和LVM扩容,具体说明如下。
1.示例1:创建逻辑卷
(1)创建GPT分区p1和p2
在/dev/sdb上创建GPT分区,分别创建两个大小为100G的分区,名字为p1和p2,操作说明如下。
1)运行parted命令。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_03.jpg?sign=1739392257-sAlQGDOw2nXrBurjX0s8Ufq4rGW3GHnA-0-cc2c9d7756c49ee5f0f66b37ac139202)
2)打印已有的分区信息,命令如下,可以看到已有两个分区p1和p2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_04.jpg?sign=1739392257-U1F5qdS7lDu8Ba5cqS5T0dFMU7wM0EZO-0-b550bb54ffe11f32972025e09c57163d)
3)删除已有分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_05.jpg?sign=1739392257-HI90TbuFSx0kvoH22N4KMgYY81D4w3xy-0-7c0e0b8e01c2c5c1592b2645d0fef089)
4)打印分区信息,进行验证,可以看到p1和p2都已经被删除。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_06.jpg?sign=1739392257-ejzYbAGgmnxY4U2wVVmWFIBQGSCvtapB-0-9fc1aa2bce9c63ed4811478983b3ce26)
5)重新创建分区p1,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_07.jpg?sign=1739392257-sD0EEPXeSshza0vTT7mZUemFcXJNLHKs-0-cda3a2b7ff359c2d358313f8bf13eaa2)
6)重新创建分区p2,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_08.jpg?sign=1739392257-76gpBw70Cahm6tWojRDE8vdbcclIINGB-0-158e4fd667a7f2ad4a4e0083ce1b0b90)
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_01.jpg?sign=1739392257-5yji85RnsKh2fjQ1pU8eTYQ4WokXQOdr-0-8115ef956367b526253903baf9652976)
此处在分区时不需要指定待构建的文件系统类型。
7)保存退出,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_02.jpg?sign=1739392257-TtmZltfOKyVVnFwLig0N7n737bphiWex-0-24c8beb681879d56003fdee1d442e146)
8)查看分区情况,命令如下,可以看到/dev/sdb已经被分成了p1和p2两个分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_03.jpg?sign=1739392257-Gts0HZxeeerwnQuVkf6jJm9LYMdziist-0-3ac459a5e7cd8747c75307ffa614f8c5)
(2)创建PV
1)创建PV,将/dev/sdb1创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_04.jpg?sign=1739392257-DG0GYA6Ym1tvVDeDR4fVRMrLytjb3zjR-0-deea99fcdacbc19d4f2aa5aa2015a093)
2)创建PV,将/dev/sdb2创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_05.jpg?sign=1739392257-kKSPDvmPLjcY0UcJOLAQ5CYT1qMHBa39-0-b7ac4eb5b07a22089ab301d9f3cc22c6)
3)打印本机的物理卷信息,命令如下,可以看到刚才创建的物理卷/dev/sdb1和/dev/sdb2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_06.jpg?sign=1739392257-alUTpYY2TFKlb9K2ZKdyf5ihyH7qmAhF-0-bd5be4654df7ddde81d1897937a70589)
(3)创建VG(卷组)
1)创建VG datav,将物理卷/dev/sdb1和/dev/sdb2加入datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_07.jpg?sign=1739392257-aoWrgIRdnw10o06YT6UdzfHEqxiiFJXM-0-ad1eb78ebe486a1126dce7c1841e9a74)
2)打印卷组信息,命令如下,系统输出刚创建的datav。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_08.jpg?sign=1739392257-M3sMgBrhLLGXa69DOMhYZ7VgxQy28ASk-0-73bb17d6b48136ede6005837629d7aa7)
3)查看datav所包含的物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_09.jpg?sign=1739392257-qJWp7pOH2p6Lbpt0Ta0dpZ1xCqUbqbmS-0-cdf4ec4a7f5faf465eb6cc3683174f9d)
(4)创建LV
1)在datav上创建一个逻辑卷lv1,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_10.jpg?sign=1739392257-juiJNyR5PJ7nshi9geWC3vZxGqMioaIj-0-540fbe6e669fe6c28d8244fd8ec2e27c)
2)在datav上再创建一个逻辑卷lv2,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_11.jpg?sign=1739392257-NYP2XPpbnn74WxDjOLiS5bdBSl4SemEQ-0-792a22d14c3a38c457217f2df14f5866)
3)查看datav上的逻辑卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_01.jpg?sign=1739392257-RzH84xU2LRA0zLvcUJe7lVZMTwZsC5Yv-0-596638ec2d009221a69c38bda0f8438d)
4)查看lv1和lv2对应的设备文件,命令如下,可以看到 /dev/mapper/datav-lv1和/dev/mapper/datav-lv2是两个软链接文件,分别链接到了 /dev/dm-2和/dev/dm-3。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_02.jpg?sign=1739392257-ZTwZCmuW4XMdDNXnqUaQ0kEp9uD8f0Sp-0-45289d51672f6f3013d98943f2de1bbe)
5)查看 /dev/dm-2和/dev/dm-3的属性,命令如下,可以看到这两个文件都是块设备文件,也就是说逻辑卷lv1对应 /dev/dm-2块设备文件,逻辑卷lv2对应 /dev/dm-3块设备文件。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_03.jpg?sign=1739392257-h79c1TRs7r3s3MvWHRqsMoGrmuC6w3zt-0-6e973b1487b0538cc5c7db21bd46c8cc)
(5)创建文件系统
1)在lv1上构建文件系统Ext4,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_04.jpg?sign=1739392257-CpmhEXwoC2BU3gHX2wafaOYqhjFCIXST-0-28c6fdcf830b26b12a08c617fa468bfe)
2)在lv2上构建文件系统XFS,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_05.jpg?sign=1739392257-6ncUQyGEGRdBfF2Z1MRiJa10tqSIjSgF-0-e7ae83c0e08db31444709720c15b7008)
3)使用lsblk查看块设备文件系统信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_06.jpg?sign=1739392257-ppg81b3VaWLs1QOTRICFqU70zfW9Dvi3-0-566c8cec60f77bda87958e0fad36972d)
输出信息如图3-23所示,可以看到每个分区上的逻辑卷,以及每个逻辑卷的文件系统。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_07.jpg?sign=1739392257-nPN4KGdLKsbVUnpIBq2iqOFfwl1VurOb-0-8142174709d2f946058ef11b046e2e70)
图3-23 逻辑卷分区信息图
(6)挂载逻辑卷
1)将lv1挂载到 /mnt,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_08.jpg?sign=1739392257-Eiqa5uzNz89rO5oWryDf7TXedqnZEj7z-0-d336c665383dba7fe2f39d2dd2285d7d)
2)查看挂载信息,命令如下,可以看到lv1已经挂载到 /mnt。同样也可以将lv2挂载到其他目录,从而实现对lv2的操作。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_09.jpg?sign=1739392257-ChXtLmKEhJblEN7zbWW95u5uZIOjTfv4-0-df27158ed8216fa1718076dbce93c14a)
2.LVM扩容操作
LVM的扩容包括两方面,在卷组容量足够的情况下,实现逻辑卷的扩容;卷组容量不足的情况下,对卷组进行扩容,示例说明如下。
(1)示例2:逻辑卷扩容
1)将lv1的容量由50G扩展到80G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_01.jpg?sign=1739392257-9bJcpmKXNbwsgWM3kHZVIF96HjHgjwcw-0-453a057ae9e03daa77a3669b492429ba)
-L 80G表示将lv1扩展到80G,因为原来的大小是50G,因此也可以表示为在原来的基础上增加30G,则可以写成-L+30G。
2)查看lv1的信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_02.jpg?sign=1739392257-ppDJUc2Xv6Podb59jYQc6kRpPFNppxGR-0-19f401c176073871314850f63ab41824)
可以看到lv1的容量已经变成了80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_03.jpg?sign=1739392257-HICoVfeNXLZUySTTsrz3GR5w8jLaZEaH-0-25486da749dedbb40291bf7a5ed552a5)
3)查看挂载点信息,lv1的容量还是50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_04.jpg?sign=1739392257-obqLQq08H8CTETfVDo2vk7q0xFQgkC1F-0-c2eb5a426a5e4700e1014ab68bbc4b06)
可以看到,挂载点显示lv1的容量还是50G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_05.jpg?sign=1739392257-TEwgg4wmm77PiSCHaQnwCoYnplWLwVTb-0-0a8b74190e5883f3945cb03be3a2569e)
4)这是因为文件系统也要随之扩容,lv1的文件系统为Ext4,扩容命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_06.jpg?sign=1739392257-1oeNXDEGx8rfNOLklXrIAtYV0IEtzuyv-0-efe45273309ce48ef48d9be0958c4cf6)
扩容命令resize2fs可以在线执行,执行后再次查看挂载点信息,可以看到挂载点容量变成了79G,如下所示,因为文件系统自身也有开销,因此,最终显示的容量不到80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_07.jpg?sign=1739392257-XlxzCYLeeGrsPZaD6aAVWmmGIMfZyp9L-0-59b2e55f8960490a5b8e7f1ac0e4d785)
(2)示例3:卷组扩容
1)在/dev/sdb上新建一个分区p3,大小为100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_08.jpg?sign=1739392257-ev84bCJsROJVvRrmgAeKe8Lupzc12OfG-0-b0d07aeed39ff5908272a4bdabf61e6c)
2)打印分区信息,命令如下,可以看到3个分区的信息。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_09.jpg?sign=1739392257-c4qJPKbGlWAeBCbLVV0NYy7tK6f2p336-0-3056f1e4f46c0131b468255a98393a33)
3)退出分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_10.jpg?sign=1739392257-N55EnciSZXs08K7eQC12NExAwBN3lFNL-0-892c46354348cacdf11198a4ac1c76c0)
4)在外部再次查看分区信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_01.jpg?sign=1739392257-huxei3Kkz55BnbGufCp3reLhGcphrhqY-0-393a26575fd20fd35e70cef387be31b4)
分区信息如下所示,可以看到3个分区,其中sdb3是新建的分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_02.jpg?sign=1739392257-qGByPgSnxbVKQik905yiwA9egCc5iuLv-0-2960598d511bbc1d42603bb2c04e1117)
5)将/dev/sdb3创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_03.jpg?sign=1739392257-kUN3pIrfJPERwDBpfZzWDFTgzfUAGNPh-0-01a6e46f7edfa14c107f6e6071112778)
6)查看物理卷信息,命令如下,可以看到sdb3还未加入卷组。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_04.jpg?sign=1739392257-fYvm9fAG8GOsx2MzwzBRZOYmapAGgtQj-0-c01cc2ffa8eff188b6241d054904a39a)
7)将sdb3加入卷组datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_05.jpg?sign=1739392257-sZqRNTyiDq7MSSMa6qDIRuhC0JNRWs5L-0-0146fe3f49540887b1d9dfe76c3f1455)
8)再次查看物理卷信息,可以看到sdb3已经加入datav卷组,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_06.jpg?sign=1739392257-znzFtzHJfsrrncZUmAzlkRE2Y9mF7lUd-0-8e1d9450858c273e77d5744ceb636f29)
9)查看卷组datav信息,可以看到datav由原来的180G,扩展到了279.39G,如下所示,至此卷组扩容完成。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_07.jpg?sign=1739392257-yIAFp5E2jAZi4GUfROa6KQIA2ecBABrj-0-4ae8dd606880ada5c29f9121585ddb00)