![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=1739148442-6UXUoY3w0weU0WpCVlBMiMxbUnncf9Oq-0-8613dca550ff80667eb9a9948820866f)
2)打印已有的分区信息,命令如下,可以看到已有两个分区p1和p2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_04.jpg?sign=1739148442-w5zsUoJ1rCF1hjzxoKuLNjsMxdwVTAJP-0-1ae8df97fdd13ffde5c33148c92b8373)
3)删除已有分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_05.jpg?sign=1739148442-0gisPOZ60ag1tJ77U0md1bC09YLPODEQ-0-18a05609e91936b4f1e69cd801cbb919)
4)打印分区信息,进行验证,可以看到p1和p2都已经被删除。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_06.jpg?sign=1739148442-wA8ItGzQsToO7Di4lsPReyZbolRzD9ku-0-596037a3cc9b0f100efacc2dcc54d961)
5)重新创建分区p1,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_07.jpg?sign=1739148442-bGe1AOiM5YDMjQSrOXcFLYGbxeL80C9h-0-95cf77f8ee9746eb5ae21b6e6f21604a)
6)重新创建分区p2,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_08.jpg?sign=1739148442-KrhIiGsEgpFUfABlY0LnTocSO92F99EA-0-a7928788a3ed4480e2d4befafcb47063)
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_01.jpg?sign=1739148442-M6XEmZHGvhGG2rgu5oV10mkvPPcht9kw-0-6ec59c0a135220ccf9e9a72c09f97555)
此处在分区时不需要指定待构建的文件系统类型。
7)保存退出,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_02.jpg?sign=1739148442-HU9AwLk8hdsIop0ijjxGmG5nQb4z5EeE-0-854e785e4f03fef5e32249df65ea5ad1)
8)查看分区情况,命令如下,可以看到/dev/sdb已经被分成了p1和p2两个分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_03.jpg?sign=1739148442-9OVAi2gwC4q3dLz3lWRMBITBeEi5seY2-0-2565c082adc24e3953f584a911a08c18)
(2)创建PV
1)创建PV,将/dev/sdb1创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_04.jpg?sign=1739148442-1QJKfqrnOjCQ69nLMakTZS1JkdypS83j-0-6c219e9c4934953e8545d623b17d242e)
2)创建PV,将/dev/sdb2创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_05.jpg?sign=1739148442-HagbYIZJ9liWkYfwCXdKyUI52hoi5i5w-0-8e5f75f258eec12149c93ae9a1b238e5)
3)打印本机的物理卷信息,命令如下,可以看到刚才创建的物理卷/dev/sdb1和/dev/sdb2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_06.jpg?sign=1739148442-2sGMFv7srzaedpjKI5FPqOhLxX1nvDQZ-0-d8c59386c6d51155a39d1e35cfae6bf1)
(3)创建VG(卷组)
1)创建VG datav,将物理卷/dev/sdb1和/dev/sdb2加入datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_07.jpg?sign=1739148442-aBKqpZMgQQdKAGgZBgMhSRkquYhzphxI-0-1baa52ca15ae62808891d4444e33316a)
2)打印卷组信息,命令如下,系统输出刚创建的datav。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_08.jpg?sign=1739148442-yawlZbssRcdvQm7KTvlYE2nOtBUgEc9k-0-c2ef5f04728eba4ff367f9b3f9cbcf1c)
3)查看datav所包含的物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_09.jpg?sign=1739148442-WOEOVwQz9uaHZlYmMfZz5TOUF759Ocam-0-464e4da237ec56602ee2a44f70477908)
(4)创建LV
1)在datav上创建一个逻辑卷lv1,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_10.jpg?sign=1739148442-tV0HQMRJIXslu1rxsnRe1ZD2HDVMWD5W-0-aa30fe4d93ae44eec56e086ed4f7998b)
2)在datav上再创建一个逻辑卷lv2,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_11.jpg?sign=1739148442-nqMhKBkF93REZePni1S83s8SzjlVJzwp-0-21887e26bb45e386b78a956a69a3209c)
3)查看datav上的逻辑卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_01.jpg?sign=1739148442-oWGdWRdGw5bNCoxz3KlGXR3Xp9050HRl-0-8f17adfa9411ee363ab1749049c29026)
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=1739148442-4uSQu2vUqg0vX14N0FKjFk4NSEXyFrch-0-6d9ef9fed41c9e1cfd6262f6e86a1458)
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=1739148442-Uujr7dN90VIGhnyRqzAPtSu8ESf4puup-0-17d2ec121dc51f2fd9d14b3505432532)
(5)创建文件系统
1)在lv1上构建文件系统Ext4,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_04.jpg?sign=1739148442-96GQcXp81TH8vHBAvls9cVwMtgGHumvp-0-dfecaf037d21ed314376765959da87b8)
2)在lv2上构建文件系统XFS,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_05.jpg?sign=1739148442-mXVTeH6RPYqT2VtopuULRsAjnMnmBGZB-0-b2fbc246e0ec09fcff80a038f39142df)
3)使用lsblk查看块设备文件系统信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_06.jpg?sign=1739148442-jbj45EzvINQdobF6SpKmgM89iVsTnuZG-0-144afab5421d5db0ba966e1112b8d397)
输出信息如图3-23所示,可以看到每个分区上的逻辑卷,以及每个逻辑卷的文件系统。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_07.jpg?sign=1739148442-wMtC8H9lJxj8FrZrUJRdcMidu313qmB6-0-c66c7a2e7a9cd4f35159b60af9cad5e1)
图3-23 逻辑卷分区信息图
(6)挂载逻辑卷
1)将lv1挂载到 /mnt,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_08.jpg?sign=1739148442-BMRlQqmifUtNVmmfhIUDNADbFjzzz6Ki-0-46c65ae1f0921ea82c114b72b5280755)
2)查看挂载信息,命令如下,可以看到lv1已经挂载到 /mnt。同样也可以将lv2挂载到其他目录,从而实现对lv2的操作。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_09.jpg?sign=1739148442-b7EPIX9jsS9HVif26RNSmJNQQzt7bOqf-0-8e11297287fde6317ce891ed2657e5de)
2.LVM扩容操作
LVM的扩容包括两方面,在卷组容量足够的情况下,实现逻辑卷的扩容;卷组容量不足的情况下,对卷组进行扩容,示例说明如下。
(1)示例2:逻辑卷扩容
1)将lv1的容量由50G扩展到80G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_01.jpg?sign=1739148442-8V7BiopSj4QPycIFyP7zvIpQjUhcxlU3-0-ca567dd5ed1e423c002b8553c9dbd053)
-L 80G表示将lv1扩展到80G,因为原来的大小是50G,因此也可以表示为在原来的基础上增加30G,则可以写成-L+30G。
2)查看lv1的信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_02.jpg?sign=1739148442-nTwwQx9dnoCsZ0rhLPMAvHE04vDfzWS7-0-9a291c76a1826b97519f9c5fc6a52991)
可以看到lv1的容量已经变成了80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_03.jpg?sign=1739148442-9wCDJytWXSzi6aqWR6ZkdotEEH0B591E-0-76a7be340bb8dffa0aa09cd3b6ade667)
3)查看挂载点信息,lv1的容量还是50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_04.jpg?sign=1739148442-QMXT0qDMcApiUhH6XD1hKP6RtipX1Wlr-0-4ded79b8ad6f362f7715db400a33094b)
可以看到,挂载点显示lv1的容量还是50G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_05.jpg?sign=1739148442-tK8bxBpKEdJmtLH3RhgEYGr7EuXVDTta-0-72e300bf55a749f467b4cde4d05e3424)
4)这是因为文件系统也要随之扩容,lv1的文件系统为Ext4,扩容命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_06.jpg?sign=1739148442-v8AkQVTeORqAmNewJ481jU81UKiUFY3t-0-988eb34b1b223376c0879addf8be9bda)
扩容命令resize2fs可以在线执行,执行后再次查看挂载点信息,可以看到挂载点容量变成了79G,如下所示,因为文件系统自身也有开销,因此,最终显示的容量不到80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_07.jpg?sign=1739148442-AfzB6El8vom0iuBatKl3BcSnbShfMalp-0-e7e5b05882f5142ea09595f9b0818104)
(2)示例3:卷组扩容
1)在/dev/sdb上新建一个分区p3,大小为100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_08.jpg?sign=1739148442-bzu9kUKHy4ZdLfgwxE2W0l9x3GRTAik2-0-88baa3ced2caa595450dbd8ac19d2cd8)
2)打印分区信息,命令如下,可以看到3个分区的信息。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_09.jpg?sign=1739148442-tDYYPiZDrWLVV8OZAD9imYuNNpaj2Cbi-0-9d87dcdba11d9b1f9d83fface1f5e209)
3)退出分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_10.jpg?sign=1739148442-KBgP4RVMgFdHEU4RxqhMpJb6HidDPRsR-0-5ee8ccec1984f23e72af73d48fd896e1)
4)在外部再次查看分区信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_01.jpg?sign=1739148442-EwkpJ0S1BgWoSwyVFCrpTTeM6hbcsHhz-0-dd4129170eac7d6c9ec208042cd2b551)
分区信息如下所示,可以看到3个分区,其中sdb3是新建的分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_02.jpg?sign=1739148442-k0nSHhctmYY3V6Ov8bElwqMpulchWkVK-0-4ca117b7f1855bf1235ce2a700629cee)
5)将/dev/sdb3创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_03.jpg?sign=1739148442-JnBqkBd1doREIf3N0e24vBlYuEaM1gKE-0-fbe7f89dcb4b1865bbaff1023c936897)
6)查看物理卷信息,命令如下,可以看到sdb3还未加入卷组。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_04.jpg?sign=1739148442-iw3ZPtAPo3LVJ9OrAJSRE1OYQFn8HiZh-0-c6d41e937251ae450ecfd35598a7c68a)
7)将sdb3加入卷组datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_05.jpg?sign=1739148442-Q0gbZ7iIY4Qy7ybDyrmbXtpeWiwAitQK-0-44f5af9a6c89d4c87970687a130f55f6)
8)再次查看物理卷信息,可以看到sdb3已经加入datav卷组,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_06.jpg?sign=1739148442-XcnzHXSfDHd4lUiFV5tQUY3Hhz9YD15c-0-9966916521cfa7e0fe5913919ae9658c)
9)查看卷组datav信息,可以看到datav由原来的180G,扩展到了279.39G,如下所示,至此卷组扩容完成。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_07.jpg?sign=1739148442-BpeUta8Tk4ujo3RdXOECa1dQjgMN3XBB-0-46367aa7d9de294e0097a4509dfd02df)