![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=1739290534-kYRbRUO5qGyLRr9l3jmkeF0bSRCnAvus-0-e545cc85329f8ae3e4c4e0a7e503f64c)
2)打印已有的分区信息,命令如下,可以看到已有两个分区p1和p2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_04.jpg?sign=1739290534-PU7wDDZelfpu3JN16iBz3iAb3JdZTXHx-0-b21b618c5024681a2bfaf04f6af0742d)
3)删除已有分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_05.jpg?sign=1739290534-m2GtADZS7EL7W7RTCGXqOw1fiZGRJouP-0-61937b580eb4e769bebe66454159c4f3)
4)打印分区信息,进行验证,可以看到p1和p2都已经被删除。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_06.jpg?sign=1739290534-VtfAO7gMZInjfbwbssum5jFY5Xmggd12-0-94cca233047f71764484e99f4821cd36)
5)重新创建分区p1,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_07.jpg?sign=1739290534-NUEJKe42CKzl2OCrufiYGI6h8aLHgSnd-0-04884c515995abbd6e2073c46c9a05d6)
6)重新创建分区p2,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_08.jpg?sign=1739290534-mPX5TS38vzGCapYlRZ4RK5TvQAbcZSqg-0-2cded6d312ca30f859756e2a225b4896)
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_01.jpg?sign=1739290534-lm1q6n4jrDgiqV6zeohXPbNA03QFfZPN-0-fc65bf8beb465e779efea1717c1ca62a)
此处在分区时不需要指定待构建的文件系统类型。
7)保存退出,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_02.jpg?sign=1739290534-U38BUksPZs0WZIg6e4oWqlYsSsGF9A9x-0-4ebb59ec539a4db61ec16a9e231f26f5)
8)查看分区情况,命令如下,可以看到/dev/sdb已经被分成了p1和p2两个分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_03.jpg?sign=1739290534-8JX3Q0hvog5zawwA3vMKIJFcT5ipZJAh-0-d4ba98d689904bce100fffd4447cc1b1)
(2)创建PV
1)创建PV,将/dev/sdb1创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_04.jpg?sign=1739290534-YnTmZDHOooIbEY5VrPcwdDVHAVbuIP0c-0-d5b4ffe9ac1b8a6b064596a61a5d808b)
2)创建PV,将/dev/sdb2创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_05.jpg?sign=1739290534-IcwkqfCFX4wSeggWM2yo3hcZm89dGM60-0-0d9ad269e3b4977e1fb6f4181c31d345)
3)打印本机的物理卷信息,命令如下,可以看到刚才创建的物理卷/dev/sdb1和/dev/sdb2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_06.jpg?sign=1739290534-2KMcj9fVaDs79Aes96tLBgFUap3coF6Y-0-3646a25818022782bd03582873e7b128)
(3)创建VG(卷组)
1)创建VG datav,将物理卷/dev/sdb1和/dev/sdb2加入datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_07.jpg?sign=1739290534-IUP4H3YvjG48asnljTEtQNareEEhV2L0-0-7c52a90675efd37ae01a450ef8a1cf77)
2)打印卷组信息,命令如下,系统输出刚创建的datav。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_08.jpg?sign=1739290534-JC2qySBBX7P3zk6bfTHjeQUxlppuM315-0-8449f0f02dc79eb0465b56360eddb770)
3)查看datav所包含的物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_09.jpg?sign=1739290534-b4n2Nc9FGXzBCvglAJ32FEVpO7B8e2aR-0-3695df08d2f3e418c3c05bd3a1c8a5b8)
(4)创建LV
1)在datav上创建一个逻辑卷lv1,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_10.jpg?sign=1739290534-TptoAoguTdpuW2yAZk5WYdl52NdZJZxR-0-0b46c26f8f4becd4bada7b0c62d110dc)
2)在datav上再创建一个逻辑卷lv2,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_11.jpg?sign=1739290534-Nw82ED3sXfqw8oyurZ8XWYCyTr2OmyWe-0-7d2323d973627229c2d4ab151fdc7b33)
3)查看datav上的逻辑卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_01.jpg?sign=1739290534-KIoDcMzebDaw8yfS36GS4s5ar5b6bhK5-0-ac36e034880535c3ce3d4459abce3941)
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=1739290534-uPcum1gHoNrpMZFCVHR0fju8DduzInHA-0-12ad5ec066c6b603645163ce9c210e5a)
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=1739290534-53u7gbil75eWZ77R07eY754rGc2xOjuv-0-9be82475a6a62a0e6bc58d94ff3aedb8)
(5)创建文件系统
1)在lv1上构建文件系统Ext4,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_04.jpg?sign=1739290534-IbSJvWABFkZesF1sqJ3PxsCMZd9CEX89-0-cfee89758b60f6c02e24eab6e242986d)
2)在lv2上构建文件系统XFS,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_05.jpg?sign=1739290534-YnlmCOdCR47WJJZPQP2YxOot1Z7UPhHh-0-2fd18868c0dc59a2b54c3d34a2fa157e)
3)使用lsblk查看块设备文件系统信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_06.jpg?sign=1739290534-GAXtcngUidwu8AESyRdmHFwyxYvNSkw6-0-ae0bff7db2124d7cf88fbd3b53590806)
输出信息如图3-23所示,可以看到每个分区上的逻辑卷,以及每个逻辑卷的文件系统。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_07.jpg?sign=1739290534-UVcQXkqBzf3l6SUDB94sltEZNGqaPZiw-0-9b079e4874194b95bad883a8a26a0535)
图3-23 逻辑卷分区信息图
(6)挂载逻辑卷
1)将lv1挂载到 /mnt,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_08.jpg?sign=1739290534-mqdOe8P8OlOb9j3C2Ukv8KiPB1VYHc8s-0-5e89f6d915c352b61a86c1a3491d9aa6)
2)查看挂载信息,命令如下,可以看到lv1已经挂载到 /mnt。同样也可以将lv2挂载到其他目录,从而实现对lv2的操作。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_09.jpg?sign=1739290534-Glgv9I7Zu0W3TgwOHybpYfyPazgnPAZh-0-7aa61dee04793f6065904574a9f676f4)
2.LVM扩容操作
LVM的扩容包括两方面,在卷组容量足够的情况下,实现逻辑卷的扩容;卷组容量不足的情况下,对卷组进行扩容,示例说明如下。
(1)示例2:逻辑卷扩容
1)将lv1的容量由50G扩展到80G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_01.jpg?sign=1739290534-dt1XKCNCH6ggDzXEgrjwRuwFomoPvea8-0-02e8bd109a63101288703b70a06f5b83)
-L 80G表示将lv1扩展到80G,因为原来的大小是50G,因此也可以表示为在原来的基础上增加30G,则可以写成-L+30G。
2)查看lv1的信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_02.jpg?sign=1739290534-MyjXEgOsdUDoDfCoxy9H7aE4DsgQMfgB-0-7eba6531752fb3000efc8cbb6ce5e1e5)
可以看到lv1的容量已经变成了80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_03.jpg?sign=1739290534-QY21CbXOiGvvee5XxHYrulwFoTRc9rNT-0-e533772f0521a52b9878e78b570638bb)
3)查看挂载点信息,lv1的容量还是50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_04.jpg?sign=1739290534-DZmsQPSZeBM3GX4DxQDk0QlFUYjasCcU-0-7fc9d7161e4dfe14eb04be0cfb4ffad7)
可以看到,挂载点显示lv1的容量还是50G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_05.jpg?sign=1739290534-OYpKThh754pvU1ZMbYgYeCNamyXqJVep-0-79479182e30478bd2e797b05b17251e4)
4)这是因为文件系统也要随之扩容,lv1的文件系统为Ext4,扩容命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_06.jpg?sign=1739290534-3vvPHIbIGq5p5xzqEzlwI6Mvsba4fIZp-0-fbec0042bd1d4368563f013008dbab9c)
扩容命令resize2fs可以在线执行,执行后再次查看挂载点信息,可以看到挂载点容量变成了79G,如下所示,因为文件系统自身也有开销,因此,最终显示的容量不到80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_07.jpg?sign=1739290534-Qp1dBUsdwASDIPFkgXldqYaX02wTK3nX-0-f97adc4762290280dca974992d34d4d8)
(2)示例3:卷组扩容
1)在/dev/sdb上新建一个分区p3,大小为100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_08.jpg?sign=1739290534-IOS9hI8vMVnkjPGjtydctJHxbaGZOQx9-0-70f7fa0524c0b63be2f9a5b185248a24)
2)打印分区信息,命令如下,可以看到3个分区的信息。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_09.jpg?sign=1739290534-mJvlUmf2WFGuXOh0MDWVEjxfGlPvH8wi-0-4ccf051a570647db23ece6efbe30a8cf)
3)退出分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_10.jpg?sign=1739290534-q2wGXvRRVg1O6rc9zfumItjA2udGeeqL-0-a9806adcebe79022bee4e969da319391)
4)在外部再次查看分区信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_01.jpg?sign=1739290534-2DWynXWnbsxvfr5MkJAnZI9tuK4Q55jv-0-89f702d6e1116b7aef989f43db191484)
分区信息如下所示,可以看到3个分区,其中sdb3是新建的分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_02.jpg?sign=1739290534-HHCqVlkKl38WdngPf9aZL8blZLNDXoP1-0-9edbf5250895d87ddf22390ce9d415b6)
5)将/dev/sdb3创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_03.jpg?sign=1739290534-Z0gE0fboVUNe9UR0viooFDgLJccHXCYO-0-7763ce100c1ce8a1e407e02d9b4dcb20)
6)查看物理卷信息,命令如下,可以看到sdb3还未加入卷组。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_04.jpg?sign=1739290534-vw0gouaYJ7SV88hBaH7lakNAMHqP3ZQY-0-ef15693296a15b02315993b0a15665c3)
7)将sdb3加入卷组datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_05.jpg?sign=1739290534-iuC4mLWOrjFlCUftVdDEPdBMInbHKlo4-0-489f1433924f2c6ce6c369b5bc0325a5)
8)再次查看物理卷信息,可以看到sdb3已经加入datav卷组,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_06.jpg?sign=1739290534-mSqh8pfeCzp8fE5dC8oR2tfVdGudUZul-0-340e40ad60880ce3e6426cd5a1a1ae44)
9)查看卷组datav信息,可以看到datav由原来的180G,扩展到了279.39G,如下所示,至此卷组扩容完成。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_07.jpg?sign=1739290534-Tpf03LrWsrEaaX6BKY3eLBC1HRqtZh6U-0-1582d5df2c710fe59160a469fb22f2cc)