硬盘(PV) → 卷组(VG) → 逻辑卷(LV) → 文件系统 → 挂载
1、创建三块硬盘,并创建物理卷pv
bash
[root@ip-172-31-26-146 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 40G 0 disk
├─nvme0n1p1 259:1 0 40G 0 part /
├─nvme0n1p127 259:2 0 1M 0 part
└─nvme0n1p128 259:3 0 10M 0 part /boot/efi
nvme1n1 259:4 0 10G 0 disk
nvme2n1 259:5 0 10G 0 disk
nvme3n1 259:6 0 10G 0 disk
[root@ip-172-31-26-146 ~]# pvcreate /dev/nvme1n1
Physical volume "/dev/nvme1n1" successfully created.
[root@ip-172-31-26-146 ~]# pvcreate /dev/nvme2n1
Physical volume "/dev/nvme2n1" successfully created.
[root@ip-172-31-26-146 ~]# pvcreate /dev/nvme3n1
Physical volume "/dev/nvme3n1" successfully created.
查看pv
bash
[root@ip-172-31-26-146 ~]# pvdisplay
"/dev/sdb" is a new physical volume of "10.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdb
VG Name
PV Size 10.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID kQTC2S-gbEm-2DXQ-bsnF-bzgU-xkSv-lZUm1b
"/dev/sdc" is a new physical volume of "10.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdc
VG Name
PV Size 10.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID hxV4vZ-7evZ-gNwv-DffZ-SUbb-kpod-ReAwsn
"/dev/sdd" is a new physical volume of "10.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdd
VG Name
PV Size 10.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID tk601b-MPVD-smmn-HYVS-XzJO-CQ3Y-XYNG4x
2、创建卷组vg
bash
[root@ip-172-31-26-146 ~]# vgcreate vg_data /dev/sdb /dev/sdc /dev/sdd
Volume group "vg_data" successfully created
[root@ip-172-31-26-146 ~]# vgdisplay
--- Volume group ---
VG Name vg_data
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 3
Act PV 3
VG Size <29.99 GiB
PE Size 4.00 MiB
Total PE 7677
Alloc PE / Size 0 / 0
Free PE / Size 7677 / <29.99 GiB
VG UUID gmOCDp-YtQR-PmF5-MFcc-XWkv-BfAC-WfjSK4
3、通过卷组vg创建逻辑卷lvs
bash
[root@ip-172-31-26-146 ~]# lvcreate -n lv_data -l 100%FREE vg_data
Logical volume "lv_data" created.
[root@ip-172-31-26-146 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_data vg_data -wi-a----- <29.99g
[root@ip-172-31-26-146 ~]# lvdisplay
--- Logical volume ---
LV Path /dev/vg_data/lv_data
LV Name lv_data
VG Name vg_data
LV UUID aoI2fv-LoQS-duKk-t567-JW4f-fF6j-4lyV5x
LV Write Access read/write
LV Creation host, time ip-172-31-26-146.us-east-2.compute.internal, 2025-12-23 03:14:56 +0000
LV Status available
# open 0
LV Size <29.99 GiB
Current LE 7677
Segments 3
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
格式化逻辑卷并查看逻辑卷blkid
bash
[root@ip-172-31-26-146 ~]# blkid
/dev/nvme0n1p1: LABEL="/" UUID="1d710364-8204-4eaa-a51c-4ef0c0aff5a4" BLOCK_SIZE="4096" TYPE="xfs" PARTLABEL="Linux" PARTUUID="37a1e0f6-732e-42dc-a824-94ef88305d7f"
/dev/nvme0n1p128: SEC_TYPE="msdos" UUID="C883-7C08" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="e8f2bc2a-e35e-4b31-a6f8-0d5c8468ce3a"
/dev/nvme0n1p127: PARTLABEL="BIOS Boot Partition" PARTUUID="4d550917-4496-437d-829b-f48bc9d8b13f"
/dev/nvme3n1: UUID="tk601b-MPVD-smmn-HYVS-XzJO-CQ3Y-XYNG4x" TYPE="LVM2_member"
/dev/nvme2n1: UUID="hxV4vZ-7evZ-gNwv-DffZ-SUbb-kpod-ReAwsn" TYPE="LVM2_member"
/dev/nvme1n1: UUID="kQTC2S-gbEm-2DXQ-bsnF-bzgU-xkSv-lZUm1b" TYPE="LVM2_member"
[root@ip-172-31-26-146 ~]# mkfs.xfs /dev/vg_data/lv_data
meta-data=/dev/vg_data/lv_data isize=512 agcount=16, agsize=491328 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=0
= reflink=1 bigtime=1 inobtcount=1
data = bsize=4096 blocks=7861248, imaxpct=25
= sunit=1 swidth=1 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=16384, version=2
= sectsz=512 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@ip-172-31-26-146 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 40G 0 disk
├─nvme0n1p1 259:1 0 40G 0 part /
├─nvme0n1p127 259:2 0 1M 0 part
└─nvme0n1p128 259:3 0 10M 0 part /boot/efi
nvme1n1 259:4 0 10G 0 disk
└─vg_data-lv_data 253:0 0 30G 0 lvm
nvme2n1 259:5 0 10G 0 disk
└─vg_data-lv_data 253:0 0 30G 0 lvm
nvme3n1 259:6 0 10G 0 disk
└─vg_data-lv_data 253:0 0 30G 0 lvm
[root@ip-172-31-26-146 ~]# blkid
/dev/nvme0n1p1: LABEL="/" UUID="1d710364-8204-4eaa-a51c-4ef0c0aff5a4" BLOCK_SIZE="4096" TYPE="xfs" PARTLABEL="Linux" PARTUUID="37a1e0f6-732e-42dc-a824-94ef88305d7f"
/dev/nvme0n1p128: SEC_TYPE="msdos" UUID="C883-7C08" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="e8f2bc2a-e35e-4b31-a6f8-0d5c8468ce3a"
/dev/nvme3n1: UUID="tk601b-MPVD-smmn-HYVS-XzJO-CQ3Y-XYNG4x" TYPE="LVM2_member"
/dev/nvme2n1: UUID="hxV4vZ-7evZ-gNwv-DffZ-SUbb-kpod-ReAwsn" TYPE="LVM2_member"
/dev/nvme1n1: UUID="kQTC2S-gbEm-2DXQ-bsnF-bzgU-xkSv-lZUm1b" TYPE="LVM2_member"
/dev/nvme0n1p127: PARTLABEL="BIOS Boot Partition" PARTUUID="4d550917-4496-437d-829b-f48bc9d8b13f"
/dev/mapper/vg_data-lv_data: UUID="56578315-05a8-4a01-a882-c90cfd977a6c" BLOCK_SIZE="512" TYPE="xfs"
自动挂载逻辑卷lvs
bash
[root@ip-172-31-26-146 ~]# vim /etc/fstab
UUID=56578315-05a8-4a01-a882-c90cfd977a6c /data/lvs xfs defaults,defaults 0 0
[root@ip-172-31-26-146 ~]# mkdir /data/lvs
[root@ip-172-31-26-146 ~]# mount /data/lvs
[root@ip-172-31-26-146 ~]#
[root@ip-172-31-26-146 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 3.9G 4.0K 3.9G 1% /dev/shm
tmpfs 1.6G 632K 1.6G 1% /run
/dev/nvme0n1p1 40G 11G 30G 26% /
tmpfs 3.9G 0 3.9G 0% /tmp
/dev/nvme0n1p128 10M 1.3M 8.7M 13% /boot/efi
overlay 40G 11G 30G 26% /var/lib/docker/overlay2/84699b7470c48b0c4a1cb8b91b868be21f96c388de173f25df9ac741be7d0d0e/merged
tmpfs 782M 0 782M 0% /run/user/1000
/dev/mapper/vg_data-lv_data 30G 247M 30G 1% /data/lvs
[root@ip-172-31-26-146 ~]# mount -a