![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=1738835132-az2BC8IcnCGIvtOGioPYtfHcZzgQJroT-0-2fe3c9ea64bca912c3624c994e94487e)
2)打印已有的分区信息,命令如下,可以看到已有两个分区p1和p2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_04.jpg?sign=1738835132-h5F2DJFvmHevkHtxEHqpjKmYMed7ww5l-0-738ce1649ac38b77317aa18553010a4c)
3)删除已有分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_05.jpg?sign=1738835132-tkPHjrZqqrx1ve38oV0nn7WBdK8pLTJ4-0-bc3636eb3d4f722bda321a2f0cb40817)
4)打印分区信息,进行验证,可以看到p1和p2都已经被删除。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_06.jpg?sign=1738835132-Jh9ugK6iHQgLX1gov47zRtMSVgYp3wUe-0-7306324b21ed4a7e219c755246fc716a)
5)重新创建分区p1,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_07.jpg?sign=1738835132-T3h6hbAaXydSzLhsBjPcbn3twStXvf17-0-fd1e5cb1a1e4dff880201468f475cbe9)
6)重新创建分区p2,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_08.jpg?sign=1738835132-awuSOX9FjhfU293pfjzqfjR7K6ikPsvg-0-61563703111f0b51dd75662c0da7bc55)
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_01.jpg?sign=1738835132-hdprNpZwQ1U2bCpqUESRKayqYGfWjfN3-0-75b65f8d89344777ef4e71b128e97dd8)
此处在分区时不需要指定待构建的文件系统类型。
7)保存退出,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_02.jpg?sign=1738835132-o6ShqbFI7Gbc4zL8ckBlqKcNALA4ydp4-0-b203e1ae2ca2cc0c4360217fab59e537)
8)查看分区情况,命令如下,可以看到/dev/sdb已经被分成了p1和p2两个分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_03.jpg?sign=1738835132-MMAHci7YUVSCUTUo36jPR2e9BgUAa3RV-0-b7a926d568b62484f23b40c22400d5aa)
(2)创建PV
1)创建PV,将/dev/sdb1创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_04.jpg?sign=1738835132-wisNxBnxbi95CyJ32DJKRuajJzWFGemc-0-0790dcce041f97ff8aeb82371e6c3a76)
2)创建PV,将/dev/sdb2创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_05.jpg?sign=1738835132-6KS0BBbD09gWmJv5FLirbvdadmIPeRK5-0-ba08d0a01b3cc408dfb53715635eb7f0)
3)打印本机的物理卷信息,命令如下,可以看到刚才创建的物理卷/dev/sdb1和/dev/sdb2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_06.jpg?sign=1738835132-aZT63EW8dz3PN6utzwuDZMYlwyEh157p-0-27589c86252b5e0265f142dda5c0402b)
(3)创建VG(卷组)
1)创建VG datav,将物理卷/dev/sdb1和/dev/sdb2加入datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_07.jpg?sign=1738835132-ALVz9j8h5xTjjRX7LM9BZ8HIh3d8AEBK-0-a441958e767c85ebd80ea2aa05576d99)
2)打印卷组信息,命令如下,系统输出刚创建的datav。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_08.jpg?sign=1738835132-rGdFYmpjNofRcGxQ4bF1X9kG7srU6Zd5-0-dd488e4cb049e496570b7184a5a129d1)
3)查看datav所包含的物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_09.jpg?sign=1738835132-GCDvYBblWiao9LCQJnJ0iasAANllHx7f-0-5fae5ab34ccda375193ddec3ff4342c3)
(4)创建LV
1)在datav上创建一个逻辑卷lv1,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_10.jpg?sign=1738835132-R6K62XBO1ZM3Pu4AhkvDWOl9egsfIDIH-0-09467e6d2e53b37d3e6be2f58eb0be68)
2)在datav上再创建一个逻辑卷lv2,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_11.jpg?sign=1738835132-bXbsEJbFnqCfF9eUYAuAKWRKcTT3LBbT-0-59a162f43681b5bf4f0a04af4e54dc56)
3)查看datav上的逻辑卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_01.jpg?sign=1738835132-qYCUjucTdEmFN8UVrczncLhl9Iwn7G66-0-03d5931129569fc5df1cf0b0e3cb102f)
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=1738835132-0IrRtnSnm4EyG00O8CTp3b77dgudLdNV-0-279691cd93e623d25f6172296b1fe618)
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=1738835132-gqkVWZn7jBxRsEhLNvH16LB2eeOKuBTt-0-e06c7500dd068c4dab81899564e8ee4b)
(5)创建文件系统
1)在lv1上构建文件系统Ext4,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_04.jpg?sign=1738835132-RwAR4qip7iLKzoGy5mrVVB0Ag94bTHgu-0-81d6cdade094f4b5890ad0f3b9b78d84)
2)在lv2上构建文件系统XFS,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_05.jpg?sign=1738835132-sSd0QgZPcHGYy6o5gVLZLQzsN71ZjykC-0-07c058d695cca4247ddb16264d8e9815)
3)使用lsblk查看块设备文件系统信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_06.jpg?sign=1738835132-UtYqRwUQinzPmnw7Pkxkvedfl1vPFdkA-0-d2a5b09478940052535f2305974c17d7)
输出信息如图3-23所示,可以看到每个分区上的逻辑卷,以及每个逻辑卷的文件系统。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_07.jpg?sign=1738835132-j5gHyphqeCmwJdZD9sCQdniYXVPTh7Tv-0-56add1b9315ddb1096f5e7dcb77c7fe0)
图3-23 逻辑卷分区信息图
(6)挂载逻辑卷
1)将lv1挂载到 /mnt,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_08.jpg?sign=1738835132-3Yoa9ATiZTHzjkhweCZsX9uCUGWEUJWi-0-ccfc94e66f0bcde5db47d0f8f5aa573b)
2)查看挂载信息,命令如下,可以看到lv1已经挂载到 /mnt。同样也可以将lv2挂载到其他目录,从而实现对lv2的操作。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_09.jpg?sign=1738835132-mEyYPZUex6fi9nUdJ2NScPEYCcYlqTZ2-0-11d53a54072a23ccbf49ecb28f581fa6)
2.LVM扩容操作
LVM的扩容包括两方面,在卷组容量足够的情况下,实现逻辑卷的扩容;卷组容量不足的情况下,对卷组进行扩容,示例说明如下。
(1)示例2:逻辑卷扩容
1)将lv1的容量由50G扩展到80G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_01.jpg?sign=1738835132-3W87hGOYMLfuyxthk47IgxsWSZnBw0IB-0-33c9ffbb8a4e22580456fde381fe2114)
-L 80G表示将lv1扩展到80G,因为原来的大小是50G,因此也可以表示为在原来的基础上增加30G,则可以写成-L+30G。
2)查看lv1的信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_02.jpg?sign=1738835132-VBikdh3m0k7QwZijJrMEVR1j5s6QJhxL-0-8cee93b469e00cb06535c36cbdef0d6a)
可以看到lv1的容量已经变成了80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_03.jpg?sign=1738835132-eso5nxxbCYNbac4gstR5mQvWCHMa9GDk-0-da40f4626d1587ab3945f7c5bd3038a5)
3)查看挂载点信息,lv1的容量还是50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_04.jpg?sign=1738835132-VR6Z3r4grwJOyA0LSHXjAyuYCStsUsk6-0-3fdc748b16369bbc68e1c9cab32f5e28)
可以看到,挂载点显示lv1的容量还是50G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_05.jpg?sign=1738835132-ZhqgceLdcJgXfUunp2U4vXgedGIJ5RQN-0-84d3046cacbd885e4c1ef69a44bfb716)
4)这是因为文件系统也要随之扩容,lv1的文件系统为Ext4,扩容命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_06.jpg?sign=1738835132-jDuyRHKCJXN0NGyvyG3YnJxJDQJlf9D3-0-a989a8c50888bb6507c079702bf22e6f)
扩容命令resize2fs可以在线执行,执行后再次查看挂载点信息,可以看到挂载点容量变成了79G,如下所示,因为文件系统自身也有开销,因此,最终显示的容量不到80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_07.jpg?sign=1738835132-GjWZaqGnCS9lNOQlikLoI4RV2BFIOfGE-0-65d6e949406c65af9b7e8d6bac8d9a52)
(2)示例3:卷组扩容
1)在/dev/sdb上新建一个分区p3,大小为100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_08.jpg?sign=1738835132-Akr7miLCJr85c2zPXfDLqTXLgFAGNMat-0-bc4b79860543de5f7882769553d2855a)
2)打印分区信息,命令如下,可以看到3个分区的信息。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_09.jpg?sign=1738835132-24HJ3OEd95E7fBJ1q1oBKVq6DL0PqKfE-0-6feabe8fae7622fd70c50ab59e96307a)
3)退出分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_10.jpg?sign=1738835132-Rhi6tVgmWM480bM3iWuCEc4WvtLnvehw-0-b3eeac73d695b8277cdfc05550dee5e1)
4)在外部再次查看分区信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_01.jpg?sign=1738835132-mON1ZoRSllKr5M3pxXa4SgWKCZhzpOAg-0-0e29f25ea5fe29a7ad812bc9cbf5fd06)
分区信息如下所示,可以看到3个分区,其中sdb3是新建的分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_02.jpg?sign=1738835132-EqsMBka00CJiyk7GrwBDFHWXnTVRAlPu-0-597dfc75ca68f7253d97c6b4567d79a6)
5)将/dev/sdb3创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_03.jpg?sign=1738835132-AoBO64vWV7BIf6jICpiV51rRMGNkQZ8X-0-ed73057cb17bf6e142bcbd2ddbf8da1f)
6)查看物理卷信息,命令如下,可以看到sdb3还未加入卷组。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_04.jpg?sign=1738835132-v1IePCa2l043FUjg5tRNRXi91fyfXFwd-0-c05e1dc773a02a691f2e8005777833f0)
7)将sdb3加入卷组datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_05.jpg?sign=1738835132-Yp9U39bFvr2ZzFc4eVEvVr7cBrzpzQWA-0-80a6003ebe3b3b4e341a4f63fff9467d)
8)再次查看物理卷信息,可以看到sdb3已经加入datav卷组,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_06.jpg?sign=1738835132-toNgJATvhpoKNOX3zZfThq5nFEH6BuHc-0-4290a4fa2b1a4538f95a1bbfcfc59539)
9)查看卷组datav信息,可以看到datav由原来的180G,扩展到了279.39G,如下所示,至此卷组扩容完成。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_07.jpg?sign=1738835132-PVC7RcDtjizUIKzrQ3VCTyDO0JkNRfRt-0-0138a39878472deba97cf6a001671e54)