lvm逻辑卷管理

lvm逻辑卷管理

逻辑卷解决的问题:

/dev/sda5 500M

/dev/sda6 500M

单个文件700M能否存储?

逻辑卷中有三个组件:物理卷(pv)、卷组(vg)、逻辑卷(lv)

物理卷:由一个一个的相同大小的物理扩展块组成(PE、默认为4M),物理卷又由分区创建。

比如,一个物理卷有500M,那么理论来说它应该有500/4=125个物理扩展块,但实际上没有那么多(只有124个),每一个物理卷需要一小块空间来存放lvm属性(逻辑卷属性信息),占用一个最小的空间,这里最小空间为一个物理扩展块的大小为4M,所以实际上只有496M的空间。

如果是502M的物理卷的话,502/4=125…2,有一个多余的2M的空间,此时,这个最小空间就为2M用来存放lvm属性,所以实际上的空间大小为500M。

卷组:由一个或者多个物理卷组成,创建卷组的同时可以添加物理卷到卷组,并且可以指定PE的大小 (一般情况下指定为4的倍数)。

逻辑卷:从卷组中划分出来的,把卷组看成一个整体来划分。

层次结构:

硬盘 ---- 分区 ----物理卷(pv)---- 卷组(vg)---- 逻辑卷(lv)---- 文件系统(格式化)

最下层(硬盘)、最上层(文件系统)

逐次向下索要空间

比如:

/dev/sda5 500M

/dev/sda6 500M

单个文件700M能否存储?

如果是700M文件的话,我们需要比700M大的一个空间(设为800M)给到逻辑卷,那么向卷组索要空间、卷组向物理卷索要空间、物理卷向分区索要空间,这时两个分区把空间给到物理卷,逐次向上给空间(假设全部分区1000M空间都给到卷组了)。

那么如果单个文件有1500M?

/dev/sda5 500M

/dev/sda6 500M

单个文件1500M能否存储?

那么我们就需要再增加一个分区(分区加起来大于1500M)

/dev/sda5 500M

/dev/sda6 500M

/dev/sda7 1000M

也是逐次向下索要空间,分区把空间2000M(假设全部给出)给到物理卷,物理卷给卷组提供空间,逻辑卷可以从800M进行扩容,增大到比1500M大,那么就能存储单个1500M的文件了。

相关命令:

pvcreate 创建物理卷

pvdisplay 查看物理卷

vgcreate 创建卷组

vgdisplay 查看卷组

lvcreate 创建逻辑卷

lvdisplay 查看逻辑卷

一、问题一

/dev/sda5 500M

/dev/sda6 500M

单个文件700M能否存储?

(1)parted------创建分区 (先创建扩展分区,再在扩展分区里面创建两个500M的逻辑分区)
[root@stw ~]# 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     Flags
 1      1.00MiB   1025MiB   1024MiB   primary  xfs             boot
 2      1025MiB   52225MiB  51200MiB  primary  xfs
 3      52225MiB  56321MiB  4096MiB   primary  linux-swap(v1)

(parted) mkpart     //创建扩展分区                                                      
Partition type?  primary/extended? extended                               
Start? 56330MiB                                                           
End? 102390MiB              //给的空间比1000M要大                                                                                       
(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     Flags
 1      1.00MiB   1025MiB    1024MiB   primary   xfs             boot
 2      1025MiB   52225MiB   51200MiB  primary   xfs
 3      52225MiB  56321MiB   4096MiB   primary   linux-swap(v1)
 4      56330MiB  102390MiB  46060MiB  extended                  lba

(parted) mkpart         //创建第一个逻辑分区                                                  
Partition type?  [logical]?                                               
File system type?  [ext2]?                                                
Start? 56340MiB                                                           
End? 56840MiB                  //给500M大小                                           
(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     Flags
 1      1.00MiB   1025MiB    1024MiB   primary   xfs             boot
 2      1025MiB   52225MiB   51200MiB  primary   xfs
 3      52225MiB  56321MiB   4096MiB   primary   linux-swap(v1)
 4      56330MiB  102390MiB  46060MiB  extended                  lba
 5      56340MiB  56840MiB   500MiB    logical

(parted) mkpart                   //创建第二个逻辑分区                                        
Partition type?  [logical]?                                               
File system type?  [ext2]?                                                
Start? 56850MiB
End? 57350MiB                        //给500M大小
(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     Flags
 1      1.00MiB   1025MiB    1024MiB   primary   xfs             boot
 2      1025MiB   52225MiB   51200MiB  primary   xfs
 3      52225MiB  56321MiB   4096MiB   primary   linux-swap(v1)
 4      56330MiB  102390MiB  46060MiB  extended                  lba
 5      56340MiB  56840MiB   500MiB    logical
 6      56850MiB  57350MiB   500MiB    logical

(parted) quit                        //保存退出                                     
Information: You may need to update /etc/fstab.

[root@stw ~]# udevadm settle             //同步到硬盘                             

硬盘 ---- 分区 ----物理卷(pv)---- 卷组(vg)---- 逻辑卷(lv)---- 文件系统(格式化)

(2)pvcreate------创建物理卷(将两个创建的逻辑分区都加到物理卷中)
[root@stw ~]# pvcreate /dev/sda5
  Physical volume "/dev/sda5" successfully created.
[root@stw ~]# pvcreate /dev/sda6
  Physical volume "/dev/sda6" successfully created.
[root@stw ~]# pvdisplay //查看物理卷
  "/dev/sda6" is a new physical volume of "500.00 MiB"
  --- NEW Physical volume ---
  PV Name               /dev/sda6
  VG Name               
  PV Size               500.00 MiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               PBeNXu-tEl1-0ggO-LnfS-9ghO-9uWU-c9x3ei
   
  "/dev/sda5" is a new physical volume of "500.00 MiB"
  --- NEW Physical volume ---
  PV Name               /dev/sda5
  VG Name               
  PV Size               500.00 MiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               jS6JDv-v6nK-gDnv-1hVm-JnLl-99lX-CBIKBI

硬盘 ---- 分区 ----物理卷(pv)---- 卷组(vg)---- 逻辑卷(lv)---- 文件系统(格式化)

(3)vgcreate------创建卷组
[root@stw ~]# vgcreate vg0 /dev/sda5 /dev/sda6   
//vg0:卷组名称,/dev/sda5 /dev/sda6:将这两个物理卷加到卷组里面
  Volume group "vg0" successfully created
[root@stw ~]# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               vg0
  PV Size               500.00 MiB / not usable 4.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              124
  Free PE               124
  Allocated PE          0
  PV UUID               jS6JDv-v6nK-gDnv-1hVm-JnLl-99lX-CBIKBI
   
  --- Physical volume ---
  PV Name               /dev/sda6
  VG Name               vg0
  PV Size               500.00 MiB / not usable 4.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              124
  Free PE               124
  Allocated PE          0
  PV UUID               PBeNXu-tEl1-0ggO-LnfS-9ghO-9uWU-c9x3ei
   
[root@stw ~]# vgdisplay  //查看卷组
  --- Volume group ---
  VG Name               vg0
  System ID             
  Format                lvm2
  Metadata Areas        2
  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                2
  Act PV                2
  VG Size               992.00 MiB
  PE Size               4.00 MiB
  Total PE              248
  Alloc PE / Size       0 / 0   
  Free  PE / Size       248 / 992.00 MiB
  VG UUID               1mIFL6-DWv4-wzrb-FKha-WnuP-zNks-gf5fTG
(4)lvcreate------创建逻辑卷

指定大小:两种方式

lvcreate -l 指定PE(物理扩展块)的个数

如果要800M的逻辑卷大小的话,那么就应该是lvcreate -l 200 (一个PE大小为4M)

lvcreate -L 直接写逻辑卷的大小 lvcreate -L 800M

[root@stw ~]# lvcreate -l 200 -n lv0 vg0
  Logical volume "lv0" created.
-n:-name(给逻辑卷取名,这里为lv0)    vg0:从哪个卷组划分
[root@stw ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/vg0/lv0     //逻辑卷的路径
  LV Name                lv0
  VG Name                vg0
  LV UUID                dLdhWM-LMRR-B09m-SIHC-WlP9-7VP6-g8aP2f
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:07:54 +0800
  LV Status              available
  # open                 0
  LV Size                800.00 MiB
  Current LE             200     //200个PE的大小
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
(5)格式化
[root@stw ~]# 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
(6)挂载
[root@stw ~]# mkdir /lv0    //创建挂载点
[root@stw ~]# blkid         //查看UUID
/dev/sr0: UUID="2018-11-25-23-54-16-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/sda1: UUID="efbd9c63-21d7-4829-ae74-fa642a28640a" TYPE="xfs" 
/dev/sda2: UUID="236d2c7d-6940-4d45-914d-a06afa4c5709" TYPE="xfs" 
/dev/sda3: UUID="80552482-4dff-460e-a6f9-b14cd3618248" TYPE="swap" 
/dev/sda5: UUID="jS6JDv-v6nK-gDnv-1hVm-JnLl-99lX-CBIKBI" TYPE="LVM2_member" 
/dev/sda6: UUID="PBeNXu-tEl1-0ggO-LnfS-9ghO-9uWU-c9x3ei" TYPE="LVM2_member" 
/dev/mapper/vg0-lv0: UUID="b4e38075-6f74-43ed-a0d6-e632463aece8" TYPE="xfs" 
[root@stw ~]# vim /etc/fstab
[root@stw ~]# mount -a     //重新加载/etc/fstab文件里的数据
[root@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/dev/mapper/vg0-lv0 xfs       797M   33M  765M   5% /lv0

在这里插入图片描述

二、问题二(扩容)

/dev/sda5 500M

/dev/sda6 500M

单个文件1500M能否存储?

(1)创建分区(因为刚刚已经创建了扩展分区,所以现在只需要创建一个足够大逻辑分区)
[root@stw ~]# 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     Flags
 1      1049kB  1075MB  1074MB  primary   xfs             boot
 2      1075MB  54.8GB  53.7GB  primary   xfs
 3      54.8GB  59.1GB  4295MB  primary   linux-swap(v1)
 4      59.1GB  107GB   48.3GB  extended                  lba
 5      59.1GB  59.6GB  524MB   logical
 6      59.6GB  60.1GB  524MB   logical

(parted) mkpart
Partition type?  [logical]?                                               
File system type?  [ext2]?                                                
Start? 57360MiB
End? 59360MiB                                                             
(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     Flags
 1      1049kB  1075MB  1074MB  primary   xfs             boot
 2      1075MB  54.8GB  53.7GB  primary   xfs
 3      54.8GB  59.1GB  4295MB  primary   linux-swap(v1)
 4      59.1GB  107GB   48.3GB  extended                  lba
 5      59.1GB  59.6GB  524MB   logical
 6      59.6GB  60.1GB  524MB   logical
 7      60.1GB  62.2GB  2097MB  logical

(parted) quit                                                             
Information: You may need to update /etc/fstab.

[root@stw ~]# udevadm settle               //同步到硬盘                           
(2)pvcreate------创建物理卷(将刚创建的逻辑分区都加到物理卷中)
[root@stw ~]# pvcreate /dev/sda7
  Physical volume "/dev/sda7" successfully created.
(3)将物理卷添加到卷组(刚刚已经创建过卷组,所以现在对卷组进行扩容------vgextend)
[root@stw ~]# vgextend vg0 /dev/sda7
  Volume group "vg0" successfully extended
[root@stw ~]# vgdisplay 
  --- Volume group ---
  VG Name               vg0
  System ID             
  Format                lvm2
  Metadata Areas        3
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                3
  Act PV                3
  VG Size               <2.92 GiB
  PE Size               4.00 MiB
  Total PE              747
  Alloc PE / Size       200 / 800.00 MiB
  Free  PE / Size       547 / <2.14 GiB
  VG UUID               1mIFL6-DWv4-wzrb-FKha-WnuP-zNks-gf5fTG
(4)lvextend------逻辑卷对逻辑卷也进行扩容(在线扩容,正在使用的过程中也可以扩容)
[root@stw ~]# lvextend -L 1700M /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@stw ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/vg0/lv0
  LV Name                lv0
  VG Name                vg0
  LV UUID                dLdhWM-LMRR-B09m-SIHC-WlP9-7VP6-g8aP2f
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:07:54 +0800
  LV Status              available
  # open                 1
  LV Size                1.66 GiB
  Current LE             425
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

但是查看挂载点发现并没有改变大小(文件系统)

[root@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/dev/mapper/vg0-lv0 xfs       797M   33M  765M   5% /lv0

逻辑卷的大小必须和该逻辑卷对应的文件系统的大小保持一致!

所以要把逻辑卷和对应文件系统的大小进行同步

xfs的文件系统同步大小

xfs_growfs 挂载点

ext4文件系统同步大小

resize2fs /dev/卷组名/逻辑卷名

xfs的文件系统的逻辑卷,只能扩容不能缩容

ext4的文件系统的逻辑卷,既可以扩容也可以缩容

[root@stw ~]# xfs_growfs /lv0   //xfs类型、最后接的是挂载点
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@stw ~]# df -Th    //查看后已经同步
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/dev/mapper/vg0-lv0 xfs       1.7G   33M  1.7G   2% /lv0
三、创建ext4的逻辑卷,对它进行扩容和缩容
1、扩容
[root@stw ~]# 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     Flags
 1      1.00MiB   1025MiB    1024MiB   primary   xfs             boot
 2      1025MiB   52225MiB   51200MiB  primary   xfs
 3      52225MiB  56321MiB   4096MiB   primary   linux-swap(v1)
 4      56330MiB  102390MiB  46060MiB  extended                  lba
 5      56340MiB  56840MiB   500MiB    logical
 6      56850MiB  57350MiB   500MiB    logical
 7      57360MiB  59360MiB   2000MiB   logical

(parted) mkpart                                                           
Partition type?  [logical]?                                               
File system type?  [ext2]?                                                
Start? 59370MiB                                                           
End? 61370MiB
(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     Flags
 1      1.00MiB   1025MiB    1024MiB   primary   xfs             boot
 2      1025MiB   52225MiB   51200MiB  primary   xfs
 3      52225MiB  56321MiB   4096MiB   primary   linux-swap(v1)
 4      56330MiB  102390MiB  46060MiB  extended                  lba
 5      56340MiB  56840MiB   500MiB    logical
 6      56850MiB  57350MiB   500MiB    logical
 7      57360MiB  59360MiB   2000MiB   logical
 8      59370MiB  61370MiB   2000MiB   logical

(parted) quit                                                             
Information: You may need to update /etc/fstab.

[root@stw ~]# udevadm settle       //同步到硬盘
[root@stw ~]# pvcreate /dev/sda8     //把sda8创建到物理卷
  Physical volume "/dev/sda8" successfully created.
[root@stw ~]# vgcreate vg1 /dev/sda8       //把物理卷添加到卷组
  Volume group "vg1" successfully created
[root@stw ~]# vgdisplay 
  --- Volume group ---
  VG Name               vg0
  System ID             
  Format                lvm2
  Metadata Areas        3
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                3
  Act PV                3
  VG Size               <2.92 GiB
  PE Size               4.00 MiB
  Total PE              747
  Alloc PE / Size       425 / 1.66 GiB
  Free  PE / Size       322 / <1.26 GiB
  VG UUID               1mIFL6-DWv4-wzrb-FKha-WnuP-zNks-gf5fTG
   
  --- Volume group ---
  VG Name               vg1
  System ID             
  Format                lvm2
  Metadata Areas        1
  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                1
  Act PV                1
  VG Size               <1.95 GiB
  PE Size               4.00 MiB
  Total PE              499
  Alloc PE / Size       0 / 0   
  Free  PE / Size       499 / <1.95 GiB
  VG UUID               UdFIYC-7z1Q-g58t-0B2D-edHh-wH5f-44MHMS
   
[root@stw ~]# lvcreate -l 200 -n lv1 vg1    //创建一个800M空间的逻辑卷
  Logical volume "lv1" created.
[root@stw ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/vg0/lv0
  LV Name                lv0
  VG Name                vg0
  LV UUID                dLdhWM-LMRR-B09m-SIHC-WlP9-7VP6-g8aP2f
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:07:54 +0800
  LV Status              available
  # open                 1
  LV Size                1.66 GiB
  Current LE             425
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/vg1/lv1
  LV Name                lv1
  VG Name                vg1
  LV UUID                g4Ht6t-yo79-BOdT-ItWO-yE5c-2ywi-cHL6Px
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:53:15 +0800
  LV Status              available
  # open                 0
  LV Size                800.00 MiB
  Current LE             200
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
[root@stw ~]# 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, 163840

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

[root@stw ~]# mkdir /lv1   //创建挂载点
[root@stw ~]# blkid
/dev/sr0: UUID="2018-11-25-23-54-16-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/sda1: UUID="efbd9c63-21d7-4829-ae74-fa642a28640a" TYPE="xfs" 
/dev/sda2: UUID="236d2c7d-6940-4d45-914d-a06afa4c5709" TYPE="xfs" 
/dev/sda3: UUID="80552482-4dff-460e-a6f9-b14cd3618248" TYPE="swap" 
/dev/sda5: UUID="jS6JDv-v6nK-gDnv-1hVm-JnLl-99lX-CBIKBI" TYPE="LVM2_member" 
/dev/sda6: UUID="PBeNXu-tEl1-0ggO-LnfS-9ghO-9uWU-c9x3ei" TYPE="LVM2_member" 
/dev/mapper/vg0-lv0: UUID="b4e38075-6f74-43ed-a0d6-e632463aece8" TYPE="xfs" 
/dev/sda7: UUID="CVRbGi-7ia7-EFAc-M4Ho-zOKh-t5wh-KUx0Wz" TYPE="LVM2_member" 
/dev/sda8: UUID="0qcDWJ-lJwX-Bul4-eo2a-N6QK-W7Vv-edeIsm" TYPE="LVM2_member" 
/dev/mapper/vg1-lv1: UUID="99c56527-50eb-43cd-84ef-ec3ee5e950cb" TYPE="ext4" 
[root@stw ~]# vim /etc/fstab
[root@stw ~]# mount -a    //重新加载/etc/fstab中的内容
[root@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/dev/mapper/vg0-lv0 xfs       1.7G   33M  1.7G   2% /lv0
/dev/mapper/vg1-lv1 ext4      772M  1.6M  714M   1% /lv1
[root@stw ~]# lvextend -L 1700M /dev/vg1/lv1    //将逻辑卷扩容到1700M,因为卷组现在还有1200M的空间,逻辑卷扩容到1700M只需要再增加900M的空间,是足够分的,所以只需要对逻辑卷进行扩容
  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@stw ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/vg0/lv0
  LV Name                lv0
  VG Name                vg0
  LV UUID                dLdhWM-LMRR-B09m-SIHC-WlP9-7VP6-g8aP2f
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:07:54 +0800
  LV Status              available
  # open                 1
  LV Size                1.66 GiB
  Current LE             425
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/vg1/lv1
  LV Name                lv1
  VG Name                vg1
  LV UUID                g4Ht6t-yo79-BOdT-ItWO-yE5c-2ywi-cHL6Px
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:53:15 +0800
  LV Status              available
  # open                 1
  LV Size                1.66 GiB
  Current LE             425
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
[root@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/dev/mapper/vg0-lv0 xfs       1.7G   33M  1.7G   2% /lv0
/dev/mapper/vg1-lv1 ext4      772M  1.6M  714M   1% /lv1
[root@stw ~]# resize2fs /dev/vg1/lv1  //ext4文件系统同步大小
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@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/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

在这里插入图片描述

2、缩容(离线缩小,需要先卸载挂载点)
(1)卸载
[root@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/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@stw ~]# umount /lv1
[root@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/dev/mapper/vg0-lv0 xfs       1.7G   33M  1.7G   2% /lv0
(2)检查逻辑卷是否支持缩小
[root@stw ~]# 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
(3)缩小该逻辑卷对应的文件系统的大小
[root@stw ~]# 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.
(4)再缩小逻辑卷的大小(逻辑卷的大小必须和该逻辑卷对应的文件系统的大小保持一致)
[root@stw ~]# 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]: y
  Size 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@stw ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/vg0/lv0
  LV Name                lv0
  VG Name                vg0
  LV UUID                dLdhWM-LMRR-B09m-SIHC-WlP9-7VP6-g8aP2f
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:07:54 +0800
  LV Status              available
  # open                 1
  LV Size                1.66 GiB
  Current LE             425
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/vg1/lv1
  LV Name                lv1
  VG Name                vg1
  LV UUID                g4Ht6t-yo79-BOdT-ItWO-yE5c-2ywi-cHL6Px
  LV Write Access        read/write
  LV Creation host, time stw.example.com, 2025-08-05 15:53:15 +0800
  LV Status              available
  # open                 0
  LV Size                400.00 MiB
  Current LE             100
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
(5)重新挂载
[root@stw ~]# mount -a
[root@stw ~]# df -Th
Filesystem          Type      Size  Used Avail Use% Mounted on
/dev/sda2           xfs        50G  3.5G   47G   7% /
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  163M  852M  17% /boot
tmpfs               tmpfs     394M   12K  394M   1% /run/user/42
tmpfs               tmpfs     394M     0  394M   0% /run/user/0
/dev/mapper/vg0-lv0 xfs       1.7G   33M  1.7G   2% /lv0
/dev/mapper/vg1-lv1 ext4      377M  1.2M  351M   1% /lv1
四、删除

以删除整个逻辑卷lv1为例

1、取消挂载(一定要删掉/etc/fstab中的文件)
[root@stw ~]# umount /lv1
[root@stw ~]# vim /etc/fstab

在这里插入图片描述

在这里插入图片描述

2、逐次删除 (硬盘 ---- 分区 ----物理卷(pv)---- 卷组(vg)---- 逻辑卷(lv)---- 文件系统(格式化)
[root@stw ~]# lvremove /dev/vg1/lv1
Do you really want to remove active logical volume vg1/lv1? [y/n]: y
  Logical volume "lv1" successfully removed
[root@stw ~]# vgremove /dev/vg1
  Volume group "vg1" successfully removed
[root@stw ~]# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               vg0
  PV Size               500.00 MiB / not usable 4.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              124
  Free PE               0
  Allocated PE          124
  PV UUID               jS6JDv-v6nK-gDnv-1hVm-JnLl-99lX-CBIKBI
   
  --- Physical volume ---
  PV Name               /dev/sda6
  VG Name               vg0
  PV Size               500.00 MiB / not usable 4.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              124
  Free PE               0
  Allocated PE          124
  PV UUID               PBeNXu-tEl1-0ggO-LnfS-9ghO-9uWU-c9x3ei
   
  --- Physical volume ---
  PV Name               /dev/sda7
  VG Name               vg0
  PV Size               1.95 GiB / not usable 4.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              499
  Free PE               322
  Allocated PE          177
  PV UUID               CVRbGi-7ia7-EFAc-M4Ho-zOKh-t5wh-KUx0Wz
   
  "/dev/sda8" is a new physical volume of "1.95 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sda8
  VG Name               
  PV Size               1.95 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               0qcDWJ-lJwX-Bul4-eo2a-N6QK-W7Vv-edeIsm
   
[root@stw ~]# pvremove /dev/sda8
  Labels on physical volume "/dev/sda8" successfully wiped.
[root@stw ~]# 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     Flags
 1      1049kB  1075MB  1074MB  primary   xfs             boot
 2      1075MB  54.8GB  53.7GB  primary   xfs
 3      54.8GB  59.1GB  4295MB  primary   linux-swap(v1)
 4      59.1GB  107GB   48.3GB  extended                  lba
 5      59.1GB  59.6GB  524MB   logical
 6      59.6GB  60.1GB  524MB   logical
 7      60.1GB  62.2GB  2097MB  logical
 8      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     Flags
 1      1049kB  1075MB  1074MB  primary   xfs             boot
 2      1075MB  54.8GB  53.7GB  primary   xfs
 3      54.8GB  59.1GB  4295MB  primary   linux-swap(v1)
 4      59.1GB  107GB   48.3GB  extended                  lba
 5      59.1GB  59.6GB  524MB   logical
 6      59.6GB  60.1GB  524MB   logical
 7      60.1GB  62.2GB  2097MB  logical

(parted) quit                                                             
Information: You may need to update /etc/fstab.

[root@stw ~]# udevadm settle                                              
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值