lvm逻辑卷管理
lvm逻辑卷管理
LVM(Logical Volume Manager,逻辑卷管理)是 Linux 系统中一种灵活的磁盘管理技术,它允许用户动态调整存储设备的分区大小,而无需重新分区或重启系统。相比传统的磁盘分区方式(如 MBR、GPT),LVM 提供了更高的灵活性和可扩展性,广泛应用于服务器和需要频繁调整存储的场景
一、LVM 的核心概念
LVM 通过抽象层将物理磁盘与文件系统分离,核心组件包括:
- 物理卷(Physical Volume,PV)
- 指实际的存储设备(如硬盘分区、SSD、RAID 阵列等),需先初始化才能被 LVM 识别。
- 初始化后,PV 会被划分为多个物理扩展块(Physical Extent,PE),PE 是 LVM 分配空间的最小单位(默认大小为 4MB,可自定义)
- 卷组(Volume Group,VG)
- 由一个或多个 PV 组成的存储池,将多个物理设备的空间整合为一个逻辑整体
- VG 中的 PE 可以被分配给逻辑卷,且支持动态添加新的 PV 来扩展容量
- 逻辑卷(Logical Volume,LV)
- 从 VG 中划分出的逻辑存储空间,类似传统分区,但大小可动态调整
- LV 可以直接格式化(如 ext4、xfs)并挂载使用,用户无需关心底层物理设备
- 逻辑扩展块(Logical Extent,LE)
- LV 被划分为与 PE 大小相同的 LE,LE 与 PE 一一对应,确保数据在物理设备上的正确映射
二、案例
磁盘----分区-----格式化-------挂载
一个分区是:/dev/sda5 大小是:500M
一个分区是:/dev/sda6 大小是:500M
现在有个单个文件700M能否存储?
我放到sda5,放不下,我如果放到sda6,也放不下
接下来就是说到逻辑卷----虚拟磁盘
组件:物理卷PV、PE物理扩展块、lvm属性
卷组vg:由一个或者多个物理卷组成的
逻辑卷lv:从卷组中划分出来的
结构(从下往上)
磁盘—分区—物理卷PV—卷组VG—逻辑卷LV—文件系统(格式化)
命令
pvcreate创建物理卷、pvdisplay查看物理卷
vgcreate创建卷组、vgdisplay查看卷组、vgextend卷组扩容
lvcreate创建逻辑卷、lvdisplay查看逻辑卷、lvextend扩容逻辑卷、lvreduce缩小逻辑卷
分区:
[root@syf ~]# parted /dev/sda
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit
Unit? [compact]? MiB
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm(parted) mkpart Partition type? primary/extended? extended Start? 56340MiBEnd? 102390MiB(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm3 56340MiB 102390MiB 46050MiB extended lba(parted) mkpart Partition type? primary/logical? logical File system type? [ext2]? Start? 56350MiBEnd? 56850MiB(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm3 56340MiB 102390MiB 46050MiB extended lba5 56350MiB 56850MiB 500MiB logical(parted) mkpart Partition type? primary/logical? logical File system type? [ext2]? Start? 56860MiBEnd? 57360MiB(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm3 56340MiB 102390MiB 46050MiB extended lba5 56350MiB 56850MiB 500MiB logical6 56860MiB 57360MiB 500MiB logical(parted) quit
Information: You may need to update /etc/fstab.[root@syf ~]# udevadm settle
创建物理卷:
[root@syf ~]# pvcreate /dev/sda5Physical volume "/dev/sda5" successfully created.
[root@syf ~]# pvcreate /dev/sda6Physical volume "/dev/sda6" successfully created.
[root@syf ~]# pvdisplay --- Physical volume ---PV Name /dev/sda2VG Name centosPV Size <54.01 GiB / not usable 4.00 MiBAllocatable yes PE Size 4.00 MiBTotal PE 13825Free PE 1Allocated PE 13824PV UUID jtncmM-LCvL-PQq4-ldR3-LU3F-RFS0-JyHOwD"/dev/sda5" is a new physical volume of "500.00 MiB"--- NEW Physical volume ---PV Name /dev/sda5VG Name PV Size 500.00 MiBAllocatable NOPE Size 0 Total PE 0Free PE 0Allocated PE 0PV UUID VruMoy-lMIW-liPH-aKlD-7kSi-5dIK-tjOs28"/dev/sda6" is a new physical volume of "500.00 MiB"--- NEW Physical volume ---PV Name /dev/sda6VG Name PV Size 500.00 MiBAllocatable NOPE Size 0 Total PE 0Free PE 0Allocated PE 0PV UUID vDLRA5-2OGu-Zq5N-FOpf-GWmv-G3nr-EuucCI[root@syf ~]# vgcreate vg0 /dev/sda5 /dev/sda6Volume group "vg0" successfully created
[root@syf ~]# pvdisplay --- Physical volume ---PV Name /dev/sda2VG Name centosPV Size <54.01 GiB / not usable 4.00 MiBAllocatable yes PE Size 4.00 MiBTotal PE 13825Free PE 1Allocated PE 13824PV UUID jtncmM-LCvL-PQq4-ldR3-LU3F-RFS0-JyHOwD--- Physical volume ---PV Name /dev/sda5VG Name vg0PV Size 500.00 MiB / not usable 4.00 MiBAllocatable yes PE Size 4.00 MiBTotal PE 124Free PE 124Allocated PE 0PV UUID VruMoy-lMIW-liPH-aKlD-7kSi-5dIK-tjOs28--- Physical volume ---PV Name /dev/sda6VG Name vg0PV Size 500.00 MiB / not usable 4.00 MiBAllocatable yes PE Size 4.00 MiBTotal PE 124Free PE 124Allocated PE 0PV UUID vDLRA5-2OGu-Zq5N-FOpf-GWmv-G3nr-EuucCI[root@syf ~]# vgdisplay --- Volume group ---VG Name centosSystem ID Format lvm2Metadata Areas 1Metadata Sequence No 3VG Access read/writeVG Status resizableMAX LV 0Cur LV 2Open LV 2Max PV 0Cur PV 1Act PV 1VG Size 54.00 GiBPE Size 4.00 MiBTotal PE 13825Alloc PE / Size 13824 / 54.00 GiBFree PE / Size 1 / 4.00 MiBVG UUID 7N0vKM-8sqG-Df3n-3h0b-w2OR-ANzL-dEXUHm--- Volume group ---VG Name vg0System ID Format lvm2Metadata Areas 2Metadata Sequence No 1VG Access read/writeVG Status resizableMAX LV 0Cur LV 0Open LV 0Max PV 0Cur PV 2Act PV 2VG Size 992.00 MiBPE Size 4.00 MiBTotal PE 248Alloc PE / Size 0 / 0 Free PE / Size 248 / 992.00 MiBVG UUID AZ3n8v-5V5h-rrIl-jXJz-dS3d-PGMq-xMJF1O
创建逻辑卷的空间:
[root@syf ~]# lvcreate -L 800M -n lv0 vg0Logical volume "lv0" created.
[root@syf ~]# lvdisplay --- Logical volume ---LV Path /dev/centos/swapLV Name swapVG Name centosLV UUID zoeohu-rkb1-a8es-s609-pxCQ-sk6B-I23kgwLV Write Access read/writeLV Creation host, time localhost.localdomain, 2025-07-23 11:28:59 +0800LV Status available# open 2LV Size 4.00 GiBCurrent LE 1024Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:1--- Logical volume ---LV Path /dev/centos/rootLV Name rootVG Name centosLV UUID U4FgiE-TV2D-KodM-mA0O-OOvW-KUqz-loqzgwLV Write Access read/writeLV Creation host, time localhost.localdomain, 2025-07-23 11:28:59 +0800LV Status available# open 1LV Size 50.00 GiBCurrent LE 12800Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:0--- Logical volume ---LV Path /dev/vg0/lv0LV Name lv0VG Name vg0LV UUID 8H4QfB-0qOC-LHz1-w6e7-RO42-XTB4-kw4ebHLV Write Access read/writeLV Creation host, time syf.example.com, 2025-08-05 18:15:12 +0800LV Status available# open 0LV Size 800.00 MiBCurrent LE 200Segments 2Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:2
用存储空间必须格式化,然后挂载:
[root@syf ~]# mkfs.xfs /dev/vg0/lv0
meta-data=/dev/vg0/lv0 isize=512 agcount=4, agsize=51200 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=204800, imaxpct=25= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=855, version=2= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@syf ~]# mkdir /lv0
[root@syf ~]# blkid
/dev/sda1: UUID="7b61b282-6669-4f4c-8fce-6882b6e17d81" TYPE="xfs"
/dev/sda2: UUID="jtncmM-LCvL-PQq4-ldR3-LU3F-RFS0-JyHOwD" TYPE="LVM2_member"
/dev/sda5: UUID="VruMoy-lMIW-liPH-aKlD-7kSi-5dIK-tjOs28" TYPE="LVM2_member"
/dev/sda6: UUID="vDLRA5-2OGu-Zq5N-FOpf-GWmv-G3nr-EuucCI" TYPE="LVM2_member"
/dev/sr0: UUID="2018-11-25-23-54-16-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/mapper/centos-root: UUID="37d50856-5dde-4e0a-a353-d04c636d5743" TYPE="xfs"
/dev/mapper/centos-swap: UUID="993b34c1-bcb1-4615-8403-a760627d3478" TYPE="swap"
/dev/mapper/vg0-lv0: UUID="548250a5-0e27-4b55-8aba-4b45d3f3c968" TYPE="xfs" //复制UID
[root@syf ~]# vim /etc/fstab
进入后按i编辑
#
# /etc/fstab
# Created by anaconda on Wed Jul 23 11:29:01 2025
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=7b61b282-6669-4f4c-8fce-6882b6e17d81 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
UUID=548250a5-0e27-4b55-8aba-4b45d3f3c968 /lv0 xfs defaults 0 0 //编辑后
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:wq! //保存强制退出
[root@syf ~]# mount -a
[root@syf ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 24K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 797M 33M 765M 5% /lv0 //可以看到已经挂载了
注:逻辑卷从层级结构上来说它是隔离分区和物理卷的,逻辑卷是不看分区和硬盘的,只看卷组的
如果现在单个文件1500M能否存储?
接下来要对逻辑卷做扩容
此时逻辑卷是800,现在至少要飙到1600~1700左右,差了900M,问卷组要,卷组去掉800,剩200的空间,200空间不够,问物理卷要,物理卷没有,问分区要,分区也没有,问硬盘要,一步一步来的,所以又回归到做管理员身上来了,此时,又是从硬盘一个一个划分,干脆一次性给大一点,反正分区也不要米
分区:
[root@syf ~]# parted /dev/sda
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.(parted) unitUnit? [compact]? MiB(parted) P
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm3 56340MiB 102390MiB 46050MiB extended lba5 56350MiB 56850MiB 500MiB logical6 56860MiB 57360MiB 500MiB logical(parted) mkpart Partition type? primary/logical? logical File system type? [ext2]? Start? 57370MiBEnd? 59370MiB(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm3 56340MiB 102390MiB 46050MiB extended lba5 56350MiB 56850MiB 500MiB logical6 56860MiB 57360MiB 500MiB logical7 57370MiB 59370MiB 2000MiB logical(parted) quit
Information: You may need to update /etc/fstab.[root@syf ~]# udevadm settle
创建物理卷:
[root@syf ~]# pvcreate /dev/sda7Physical volume "/dev/sda7" successfully created.
把物理卷添加到卷组里面
[root@syf ~]# vgextend vg0 /dev/sda7Volume group "vg0" successfully extended[root@syf ~]# vgdisplay //查看vg0大小--- Volume group ---VG Name vg0System ID Format lvm2Metadata Areas 3Metadata Sequence No 3VG Access read/writeVG Status resizableMAX LV 0Cur LV 1Open LV 1Max PV 0Cur PV 3Act PV 3VG Size <2.92 GiB PE Size 4.00 MiBTotal PE 747Alloc PE / Size 200 / 800.00 MiBFree PE / Size 547 / <2.14 GiBVG UUID AZ3n8v-5V5h-rrIl-jXJz-dS3d-PGMq-xMJF1O
注:扩容是在线扩容,扩容的时候逻辑卷可以正常使用
[root@syf ~]# lvextend -L 1700 /dev/vg0/lv0 Size of logical volume vg0/lv0 changed from 800.00 MiB (200 extents) to 1.66 GiB (425 extents).Logical volume vg0/lv0 successfully resized.
[root@syf ~]# lvdisplay
--- Logical volume ---LV Path /dev/vg0/lv0LV Name lv0VG Name vg0LV UUID 8H4QfB-0qOC-LHz1-w6e7-RO42-XTB4-kw4ebHLV Write Access read/writeLV Creation host, time syf.example.com, 2025-08-05 18:15:12 +0800LV Status available# open 1LV Size 1.66 GiBCurrent LE 425Segments 3Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:2[root@syf ~]# df -Th //但是挂载的大小还是800
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 24K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 797M 33M 765M 5% /lv0
注:逻辑卷的大小必须和该逻辑卷对应的文件系统的大小保持一致!!!!
如果是xfs文件系统的话,同步大小必须用以下命令:
[root@syf ~]# xfs_growfs /lv0/ //后面接挂载点名称
meta-data=/dev/mapper/vg0-lv0 isize=512 agcount=4, agsize=51200 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=204800, imaxpct=25= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=855, version=2= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 204800 to 435200
[root@syf ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 24K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 1.7G 33M 1.7G 2% /lv0 //没改变挂载状态
注:xfs的文件系统同步大小----------xfs_growfs 挂载点
ext4文件系统同步大小----------resize2fs /dev/卷组名/逻辑卷名
xfs的文件系统的逻辑卷,只能扩容不能缩容
ext4的文件系统的逻辑卷,既可以做扩容,也可以做缩容
接下来做ext4的文件系统,做一下扩容和缩容
新建分区:
[root@syf ~]# parted /dev/sda
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.(parted) unitUnit? [compact]? MiB(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm3 56340MiB 102390MiB 46050MiB extended lba5 56350MiB 56850MiB 500MiB logical6 56860MiB 57360MiB 500MiB logical7 57370MiB 59370MiB 2000MiB logical(parted) mkpart Partition type? primary/logical? logical File system type? [ext2]? Start? 59380MiBEnd? 61380MiB(parted) P
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 102400MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1.00MiB 1025MiB 1024MiB primary xfs boot2 1025MiB 56329MiB 55304MiB primary lvm3 56340MiB 102390MiB 46050MiB extended lba5 56350MiB 56850MiB 500MiB logical6 56860MiB 57360MiB 500MiB logical7 57370MiB 59370MiB 2000MiB logical8 59380MiB 61380MiB 2000MiB logical(parted) quit
Information: You may need to update /etc/fstab.[root@syf ~]# udevadm settle
创建物理卷:
[root@syf ~]# pvcreate /dev/sda8Physical volume "/dev/sda8" successfully created.
[root@syf ~]# vgcreate vg1 /dev/sda8Volume group "vg1" successfully created
[root@syf ~]# vgdisplay --- Volume group ---VG Name vg1System ID Format lvm2Metadata Areas 1Metadata Sequence No 1VG Access read/writeVG Status resizableMAX LV 0Cur LV 0Open LV 0Max PV 0Cur PV 1Act PV 1VG Size <1.95 GiBPE Size 4.00 MiBTotal PE 499Alloc PE / Size 0 / 0 Free PE / Size 499 / <1.95 GiBVG UUID HjFyLS-87ZL-W3hr-JXcc-r0Qt-CPCH-z8Uzjf
创建逻辑卷:
[root@syf ~]# lvcreate -L 800M -n lv1 vg1Logical volume "lv1" created.
[root@syf ~]# lvdisplay --- Logical volume ---LV Path /dev/vg1/lv1LV Name lv1VG Name vg1LV UUID ObBLCm-fPuR-7ukK-hbOs-IThr-lD0s-T0d1BdLV Write Access read/writeLV Creation host, time syf.example.com, 2025-08-05 19:22:58 +0800LV Status available# open 0LV Size 800.00 MiBCurrent LE 200Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:3
对它进行格式化:
[root@syf ~]# mkfs.ext4 /dev/vg1/lv1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
51296 inodes, 204800 blocks
10240 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=209715200
7 block groups
32768 blocks per group, 32768 fragments per group
7328 inodes per group
Superblock backups stored on blocks: 32768, 98304, 163840Allocating group tables: done
Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done
格式化后,创建个挂载点:
[root@syf ~]# mkdir /lv1
[root@syf ~]# blkid //复制最后一行UUID
/dev/sda1: UUID="7b61b282-6669-4f4c-8fce-6882b6e17d81" TYPE="xfs"
/dev/sda2: UUID="jtncmM-LCvL-PQq4-ldR3-LU3F-RFS0-JyHOwD" TYPE="LVM2_member"
/dev/sda5: UUID="VruMoy-lMIW-liPH-aKlD-7kSi-5dIK-tjOs28" TYPE="LVM2_member"
/dev/sda6: UUID="vDLRA5-2OGu-Zq5N-FOpf-GWmv-G3nr-EuucCI" TYPE="LVM2_member"
/dev/sr0: UUID="2018-11-25-23-54-16-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/mapper/centos-root: UUID="37d50856-5dde-4e0a-a353-d04c636d5743" TYPE="xfs"
/dev/mapper/centos-swap: UUID="993b34c1-bcb1-4615-8403-a760627d3478" TYPE="swap"
/dev/mapper/vg0-lv0: UUID="548250a5-0e27-4b55-8aba-4b45d3f3c968" TYPE="xfs"
/dev/sda7: UUID="y3FARE-aoFw-NWfa-NC4v-iE2f-kYuR-Fkmohl" TYPE="LVM2_member"
/dev/sda8: UUID="zo904c-CNV3-tpQk-qfo2-pT16-2fbt-M98j5R" TYPE="LVM2_member"
/dev/mapper/vg1-lv1: UUID="1525191a-57bb-4639-abce-c923a4e70138" TYPE="ext4"
[root@syf ~]# vim /etc/fstab //进入后按i编辑
#
# /etc/fstab
# Created by anaconda on Wed Jul 23 11:29:01 2025
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=7b61b282-6669-4f4c-8fce-6882b6e17d81 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
UUID=548250a5-0e27-4b55-8aba-4b45d3f3c968 /lv0 xfs defaults 0 0
UUID=1525191a-57bb-4639-abce-c923a4e70138 /lv1 ext4 defaults 0 0 //编辑后
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:wq!
[root@syf ~]# mount -a
[root@syf ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 28K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 1.7G 33M 1.7G 2% /lv0
/dev/mapper/vg1-lv1 ext4 772M 1.6M 714M 1% /lv1
此时要给它扩容到1700,此时不用增加vg的大小,因为vg的大小够支持到1700:
[root@syf ~]# lvextend -L 1700M /dev/vg1/lv1 Size of logical volume vg1/lv1 changed from 800.00 MiB (200 extents) to 1.66 GiB (425 extents).Logical volume vg1/lv1 successfully resized.
[root@syf ~]# lvdisplay --- Logical volume ---LV Path /dev/vg1/lv1LV Name lv1VG Name vg1LV UUID ObBLCm-fPuR-7ukK-hbOs-IThr-lD0s-T0d1BdLV Write Access read/writeLV Creation host, time syf.example.com, 2025-08-05 19:22:58 +0800LV Status available# open 1LV Size 1.66 GiBCurrent LE 425Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:3--- Logical volume ---LV Path /dev/vg0/lv0LV Name lv0VG Name vg0LV UUID 8H4QfB-0qOC-LHz1-w6e7-RO42-XTB4-kw4ebHLV Write Access read/writeLV Creation host, time syf.example.com, 2025-08-05 18:15:12 +0800LV Status available# open 1LV Size 1.66 GiBCurrent LE 425Segments 3Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:2
[root@syf ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 28K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 1.7G 33M 1.7G 2% /lv0
/dev/mapper/vg1-lv1 ext4 772M 1.6M 714M 1% /lv1
[root@syf ~]# resize2fs /dev/vg1/lv1
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg1/lv1 is mounted on /lv1; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/vg1/lv1 is now 435200 blocks long.[root@syf ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 28K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 1.7G 33M 1.7G 2% /lv0
/dev/mapper/vg1-lv1 ext4 1.7G 2.4M 1.6G 1% /lv1
[root@syf ~]#
注:扩容=在线扩容 缩容=离线缩小
现在属于挂载状态,离线需要先卸载:
[root@syf ~]# umount /lv1
[root@syf ~]# df -Th //可以看到lv1没有了
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 28K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 1.7G 33M 1.7G 2% /lv0
1、卸载
2、检查逻辑卷是否支持缩小
3、缩小该逻辑卷对应的文件系统的大小
4、缩小逻辑卷的大小
5、重新挂载
[root@syf ~]# e2fsck -f /dev/vg1/lv1 //检查出来没有报错,说明支持减小
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/vg1/lv1: 11/102592 files (0.0% non-contiguous), 11148/435200 blocks
缩小400M:
[root@syf ~]# resize2fs /dev/vg1/lv1 400M
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg1/lv1 to 102400 (4k) blocks.
The filesystem on /dev/vg1/lv1 is now 102400 blocks long.
逻辑卷缩小400M:
[root@syf ~]# resize2fs /dev/vg1/lv1 400M
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/vg1/lv1 to 102400 (4k) blocks.
The filesystem on /dev/vg1/lv1 is now 102400 blocks long.[root@syf ~]# lvreduce -L 400M /dev/vg1/lv1 WARNING: Reducing active logical volume to 400.00 MiB.THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce vg1/lv1? [y/n]: ySize of logical volume vg1/lv1 changed from 1.66 GiB (425 extents) to 400.00 MiB (100 extents).Logical volume vg1/lv1 successfully resized.[root@syf ~]# lvdisplay --- Logical volume ---LV Path /dev/vg1/lv1LV Name lv1VG Name vg1LV UUID ObBLCm-fPuR-7ukK-hbOs-IThr-lD0s-T0d1BdLV Write Access read/writeLV Creation host, time syf.example.com, 2025-08-05 19:22:58 +0800LV Status available# open 0LV Size 400.00 MiBCurrent LE 100Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:3--- Logical volume ---LV Path /dev/vg0/lv0LV Name lv0VG Name vg0LV UUID 8H4QfB-0qOC-LHz1-w6e7-RO42-XTB4-kw4ebHLV Write Access read/writeLV Creation host, time syf.example.com, 2025-08-05 18:15:12 +0800LV Status available# open 1LV Size 1.66 GiBCurrent LE 425Segments 3Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:2
重新挂载:
[root@syf ~]# mount -a
[root@syf ~]# df -Th //最后一行,可以看到大小缩小了
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 50G 4.8G 46G 10% /
devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs tmpfs 2.0G 13M 2.0G 1% /run
tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 158M 857M 16% /boot
tmpfs tmpfs 394M 8.0K 394M 1% /run/user/42
tmpfs tmpfs 394M 28K 394M 1% /run/user/0
/dev/sr0 iso9660 4.3G 4.3G 0 100% /run/media/root/CentOS 7 x86_64
/dev/mapper/vg0-lv0 xfs 1.7G 33M 1.7G 2% /lv0
/dev/mapper/vg1-lv1 ext4 377M 1.2M 351M 1% /lv1
注:这就是离线缩小,在线扩容
如何卸载(依次从上往下)
(格式化)文件系统----逻辑卷LV------卷组VG------物理卷PV------分区-----磁盘
[root@syf ~]# umount /lv1
[root@syf ~]# vim /etc/fstab //进入后按i进行编辑,删掉lv1这一行
#
# /etc/fstab
# Created by anaconda on Wed Jul 23 11:29:01 2025
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=7b61b282-6669-4f4c-8fce-6882b6e17d81 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
UUID=548250a5-0e27-4b55-8aba-4b45d3f3c968 /lv0 xfs defaults 0 0//编辑后
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:wq!
[root@syf ~]# lvremove /dev/vg1/lv1 //移除逻辑卷
Do you really want to remove active logical volume vg1/lv1? [y/n]: yLogical volume "lv1" successfully removed
[root@syf ~]# vgremove /dev/vg1 //移除卷组Volume group "vg1" successfully removed
[root@syf ~]# pvremove /dev/sda8 //移除物理卷Labels on physical volume "/dev/sda8" successfully wiped.
[root@syf ~]# parted /dev/sda //删除分区
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1049kB 1075MB 1074MB primary xfs boot2 1075MB 59.1GB 58.0GB primary lvm3 59.1GB 107GB 48.3GB extended lba5 59.1GB 59.6GB 524MB logical6 59.6GB 60.1GB 524MB logical7 60.2GB 62.3GB 2097MB logical8 62.3GB 64.4GB 2097MB logical(parted) rm 8(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1049kB 1075MB 1074MB primary xfs boot2 1075MB 59.1GB 58.0GB primary lvm3 59.1GB 107GB 48.3GB extended lba5 59.1GB 59.6GB 524MB logical6 59.6GB 60.1GB 524MB logical7 60.2GB 62.3GB 2097MB logical(parted) quit
Information: You may need to update /etc/fstab.[root@syf ~]# udevadm settle