![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=1739938039-jRo8rxgJSpdBheVjicaFK0qEkPpGtjIY-0-6344bba5de513920b0f9f61b8750d719)
2)打印已有的分区信息,命令如下,可以看到已有两个分区p1和p2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_04.jpg?sign=1739938039-vfPNLVpf8i7PCV6vWpA5cEWlExktSpRN-0-33258c8e4aa54f486143136f6ebbbf1c)
3)删除已有分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_05.jpg?sign=1739938039-RK8NNCSB5GOUBroc5NMRVkz8vIW4UVol-0-61cd331f782e9f35167ed598972c4f6a)
4)打印分区信息,进行验证,可以看到p1和p2都已经被删除。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_06.jpg?sign=1739938039-B47LSBc6mkBrXVmOCeDh9Cq0EGZIomRg-0-79e6e99c11d17445a809451da00e84ee)
5)重新创建分区p1,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_07.jpg?sign=1739938039-swPuMdJfQ9IS0yL7h1AN3TzJdIc9tWw1-0-adfbad829835b176d8ee3150fefbe736)
6)重新创建分区p2,大小100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/95_08.jpg?sign=1739938039-aZAtWMxbVnD5LwVDbt5LB47Bnh8As5rz-0-a8278f9c533ac381e3ba6bbc68e027ce)
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_01.jpg?sign=1739938039-FWC1YqWDvYmPRMCRtJ1i2suzyFhAkn1a-0-c40da7529f260dbadf9fc86c35325923)
此处在分区时不需要指定待构建的文件系统类型。
7)保存退出,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_02.jpg?sign=1739938039-eBWmZ0MZpnYdGe8tFWwMzNJsdzb47AAW-0-54e88d0c2085bf3bd10a140a296c7c2a)
8)查看分区情况,命令如下,可以看到/dev/sdb已经被分成了p1和p2两个分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_03.jpg?sign=1739938039-Wv5muEEdrn4fDn7XFfatplLCowLZwMtQ-0-87ec92ca6e3428368652b80203fcee21)
(2)创建PV
1)创建PV,将/dev/sdb1创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_04.jpg?sign=1739938039-eKnMGjIlrGe8dsykwSDfZivdZ0k8HkNL-0-56d9c5e760bb495e81ddd78b65535408)
2)创建PV,将/dev/sdb2创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_05.jpg?sign=1739938039-4T6MlUkPzuzxp0al2IchyOgtDKZaloj7-0-2288dde5916db4c18e60ad482aa68228)
3)打印本机的物理卷信息,命令如下,可以看到刚才创建的物理卷/dev/sdb1和/dev/sdb2。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_06.jpg?sign=1739938039-HmheeJwkQBcLiFjYiRdzSdsvZnqJwIpH-0-743e794168aacaccc93e2128be7a08ad)
(3)创建VG(卷组)
1)创建VG datav,将物理卷/dev/sdb1和/dev/sdb2加入datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_07.jpg?sign=1739938039-fNIliCu4uOKZTphzMD6HBKaXuemcJhvj-0-f7a90bb9abffd1554c77edfe45111946)
2)打印卷组信息,命令如下,系统输出刚创建的datav。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_08.jpg?sign=1739938039-g5SmbR8LJ2iC68wYARYoG84lIm8gc6YR-0-18d31d9ff6ed558f8e0d47baaca7ad5a)
3)查看datav所包含的物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_09.jpg?sign=1739938039-Z7o8rqyOCTlBwrzxuSFsfwAcJu3CuY8k-0-51333538d82cbb26f36f8117dd693501)
(4)创建LV
1)在datav上创建一个逻辑卷lv1,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_10.jpg?sign=1739938039-rsc4IUPIxeJxhtTuYMS8cGinupBVDLH6-0-682539b8100d64ce1edbf4b25728e443)
2)在datav上再创建一个逻辑卷lv2,大小为50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/96_11.jpg?sign=1739938039-UGDz7f2IxAh4h6OS9pN7QYorxzhM4ZHr-0-45507cab4277df9ec790ad866ef6b1e9)
3)查看datav上的逻辑卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_01.jpg?sign=1739938039-xCuX2YLZH1dO5WzQ0TAHbAZPhutIFgwx-0-7243d16bf684a6f31980ee47bc3c72ef)
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=1739938039-c1WiW35LD1AJQgjBzvvfNgSkbBq8yiRI-0-95b881213cbc60dec9bec81d7f8f5c12)
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=1739938039-P55N8CEtCW6zkgMYk5RUqKgPkmv7UQoD-0-043d1b3da988648172ebc6603fe1fa3e)
(5)创建文件系统
1)在lv1上构建文件系统Ext4,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_04.jpg?sign=1739938039-0qLczlVgQ6RkSFMACXFfJUe2yAz49Isp-0-ad40fab0e3a209cfb7a18bb2a7c46c7e)
2)在lv2上构建文件系统XFS,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_05.jpg?sign=1739938039-wkbiDJihvq5la9edWNKtOGKdG8bHUa9W-0-8b8f687cb1120eb4e732463558c97b68)
3)使用lsblk查看块设备文件系统信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_06.jpg?sign=1739938039-4gV3ccHqNTJbetNLlQ8ZE1HSOaGqIErx-0-c84e5cb75511151203d132f32d121ecb)
输出信息如图3-23所示,可以看到每个分区上的逻辑卷,以及每个逻辑卷的文件系统。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_07.jpg?sign=1739938039-an9CI4P2NrU1lFYLPsI1CfwVK1g3c60n-0-3486cb9345f745d499b4e624ac318072)
图3-23 逻辑卷分区信息图
(6)挂载逻辑卷
1)将lv1挂载到 /mnt,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_08.jpg?sign=1739938039-55loT0eaOvM5e25vsDsFqcb8Jbzg3CIv-0-4e5828209d12b887e3a5b1aa53dd54d6)
2)查看挂载信息,命令如下,可以看到lv1已经挂载到 /mnt。同样也可以将lv2挂载到其他目录,从而实现对lv2的操作。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/97_09.jpg?sign=1739938039-GyrfXT5b7MWQQbU7MdRIzGr7515qiX7r-0-d0cda473b3d3c0b02173612048a308db)
2.LVM扩容操作
LVM的扩容包括两方面,在卷组容量足够的情况下,实现逻辑卷的扩容;卷组容量不足的情况下,对卷组进行扩容,示例说明如下。
(1)示例2:逻辑卷扩容
1)将lv1的容量由50G扩展到80G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_01.jpg?sign=1739938039-R9s9iFwIGpJUwNDJy2T89Q9BIwBuF0tA-0-463a310945659a3a41fe1c1319b220be)
-L 80G表示将lv1扩展到80G,因为原来的大小是50G,因此也可以表示为在原来的基础上增加30G,则可以写成-L+30G。
2)查看lv1的信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_02.jpg?sign=1739938039-kZoD6CJbFULH3uP2TW1zBjnj7U8CWcF9-0-18925e98cb019405f56bc6fb499db359)
可以看到lv1的容量已经变成了80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_03.jpg?sign=1739938039-MppAMEMsunaeNFH1CfKT2YQUsPv5nZVZ-0-a08f00f4132de8b5f7962d7b11932a05)
3)查看挂载点信息,lv1的容量还是50G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_04.jpg?sign=1739938039-2uHJvpbVAxaqzitKrq1T6rUYjUhxCTdt-0-562fb6f0af6d89a94d83a319726817b3)
可以看到,挂载点显示lv1的容量还是50G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_05.jpg?sign=1739938039-QR9zHLtS5u56FbaBPzvppeaZCA36LBzD-0-463f5bed68350dc5801247ef66e0ddcc)
4)这是因为文件系统也要随之扩容,lv1的文件系统为Ext4,扩容命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_06.jpg?sign=1739938039-hg4OAJjJKdURKBIi0Pas4VjTwSphOlnW-0-a1bcc09bfd381714c8cca869bf689803)
扩容命令resize2fs可以在线执行,执行后再次查看挂载点信息,可以看到挂载点容量变成了79G,如下所示,因为文件系统自身也有开销,因此,最终显示的容量不到80G。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_07.jpg?sign=1739938039-4vtiys2wzWv5DzeXN9tdttmASfqnxhrh-0-9fe431d7c3b883af4a89c85860e45c72)
(2)示例3:卷组扩容
1)在/dev/sdb上新建一个分区p3,大小为100G,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_08.jpg?sign=1739938039-21RH6Qo00cqoedLmqhoGO5Wra0RLRvXm-0-bbffdc7d88cd6420741a3fa0ef0337de)
2)打印分区信息,命令如下,可以看到3个分区的信息。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_09.jpg?sign=1739938039-3ouEetocylRAGeoCjS5HB4jNRB4Lteyc-0-ca6178b379605d74082908c181f413fe)
3)退出分区,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/98_10.jpg?sign=1739938039-B20yoU0xbvRUh6fhAcz8rmabJQsdll9T-0-da97cbe8f19f07aacb3ca605711114d4)
4)在外部再次查看分区信息,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_01.jpg?sign=1739938039-aD3U1Fr0J6GZz0U6BJLkqqZ5UBmay88r-0-483f733073dc6613143aee72ba653daf)
分区信息如下所示,可以看到3个分区,其中sdb3是新建的分区。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_02.jpg?sign=1739938039-Zj2JECQHvMLq98BhjMzEHkbh0MAklz2b-0-ab37c23516141d1ea9cd300b43f466f7)
5)将/dev/sdb3创建为物理卷,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_03.jpg?sign=1739938039-Zp48mxobxBbg2dmBvMq7uydaVKUl7wSy-0-01b3439c5a48915522158b10ba789ae2)
6)查看物理卷信息,命令如下,可以看到sdb3还未加入卷组。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_04.jpg?sign=1739938039-q9gcRicymG6pCCc2Xak8KyUSeL4zyYWW-0-a28bf571388d97aef60ef088099f8ed3)
7)将sdb3加入卷组datav,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_05.jpg?sign=1739938039-ZCd87ZFeheN51y0Z2OeFjP8fYQDwe5CP-0-af68b8fe20df5253d82b8ddf0074d176)
8)再次查看物理卷信息,可以看到sdb3已经加入datav卷组,命令如下。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_06.jpg?sign=1739938039-wRqERDaxKq9vVcY4eaTAifjDgc3UkYA7-0-c213660c93a6ecb5fee9b3afa6f112da)
9)查看卷组datav信息,可以看到datav由原来的180G,扩展到了279.39G,如下所示,至此卷组扩容完成。
![](https://epubservercos.yuewen.com/7143D2/23083819001905006/epubprivate/OEBPS/Images/99_07.jpg?sign=1739938039-pVOhYGdskiFWzll5jerTnoQnbG98HseI-0-f71fa01179d5aca59699a2ce922a2db9)