centos7lvm (centos7创建网络配置)

LVM是什么东东,为什么要用LVM,用它的好处是什么,使用LVM需要了解哪些原理,最后我们通过实验来看看怎样部署LVM分区。

1、LVM指的是什么?

Logical Volume Manager 逻辑卷管理的简写

2、为什么要用LVM?

LVM通常用于装备大量磁盘的系统,但它同样适于仅有一、两块硬盘的小系统。

-----小系统使用LVM的益处:传统的文件系统:一个文件系统对应一个分区,直观,但不易改变,不同的分区相对独立,无相互联系,各分区空间常常利用不平衡,空间不能充分利用。当一个文件系统/分区已满时,无法对其扩充,只能采用重新分区/建立文件系统,非常麻烦,或把分区中的数据移到另一个更大的分区中;或采用符号连接的方式使用其它分区的空间。如果要把硬盘上的多个分区合并在一起使用,只能采用再分区的方式,这个过程需要数据的备份与恢复。采用LVM:硬盘的多个分区由LVM统一为卷组管理,可以方便的加入或移走分区以扩大或减小卷组的可用容量,充分利用硬盘空间;文件系统建立在逻辑卷上,而逻辑卷可根据需要改变大小(在卷组容量范围内)以满足要求,可以跨分区。

----大系统使用LVM的益处:在使用很多硬盘的大系统中,使用LVM主要是方便管理、增加了系统的扩展性。用户/用户组的空间建立在LVM上,可以随时按要求增大,或根据使用情况对各逻辑卷进行调整。当系统空间不足而加入新的硬盘时,不必把用户的数据从原硬盘迁移到新硬盘,而只须把新的分区加入卷组并扩充逻辑卷即可。同样,使用LVM可以在不停服务的情况下。把用户数据从旧硬盘转移到新硬盘空间中去。

3、用它的好处是什么?

方便管理、增加了系统的扩展性。 可随时按需求改变逻辑卷大小,充分利用硬 盘空间。

4、使用LVM前需要了解哪些原理

使用LVM前我们需要了解几个概念:

  • PV(physical volume):物理卷在逻辑卷管理系统最底层,可为整个物理硬盘或实际物理硬盘上的分区。
  • VG(volume group):卷组建立在物理卷上,一卷组中至少要包括一物理卷,卷组建立后可动态的添加卷到卷组中,一个逻辑卷管理系统工程中可有多个卷组。
  • LV(logical volume):逻辑卷建立在卷组基础上,卷组中未分配空间可用于建立新的逻辑卷,逻辑卷建立后可以动态扩展和缩小空间。
  • PE(physical extent):物理区域是物理卷中可用于分配的最小存储单元,物理区域大小在建立卷组时指定,一旦确定不能更改,同一卷组所有物理卷的物理区域大小需一致,新的pv加入到vg后,pe的大小自动更改为vg中定义的pe大小。
  • LE(logical extent):逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域的大小。

windows读取lvm分区,centos7不是lvm怎么扩展分区

原理图

5、实验(通过虚拟机)

1)准备一台虚拟机,挂两个硬盘,开机进入系统。

windows读取lvm分区,centos7不是lvm怎么扩展分区

2)创建一个逻辑卷

[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x2e2c40c0.

Command (m for help): n             #创建分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p                      #选择分区类型,这里选择主分区
Partition number (1-4, default 1): 
First sector (2048-16777215, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-16777215, default 16777215): 
Using default value 16777215
Partition 1 of type Linux and of size 8 GiB is set

Command (m for help): t             #将分区类型修改为LVM
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): w           #写入并退出
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

3)创建PV,通过pvcreate 新逻辑卷 创建PV,并通过pvdisplay查看是否成功

[root@localhost ~]# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.
[root@localhost ~]# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos
  PV Size               <7.22 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              1847
  Free PE               0
  Allocated PE          1847
  PV UUID               w9CKvn-ysdu-wL8U-mkod-U0Zh-zyfB-IU79Rt
   
  "/dev/sdb1" is a new physical volume of "<8.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name               
  PV Size               <8.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               UByvb2-npCj-tIVY-8qIg-NRre-Beq7-wOWYyB
   
[root@localhost ~]# 

4)创建VG,通过vgcreate 新vg_Name 新PV_Name 创建VG,并通过vgdisplay查看是否成功

[root@localhost ~]# vgcreate data /dev/sdb1     #vgcreate 新vg名 对应PV
  Volume group "data" successfully created
[root@localhost ~]# vgdisplay 
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               7.21 GiB
  PE Size               4.00 MiB
  Total PE              1847
  Alloc PE / Size       1847 / 7.21 GiB
  Free  PE / Size       0 / 0   
  VG UUID               Pu1Tqb-S61O-3jWE-Spi4-XpL7-d5VQ-m8H7dh
   
  --- Volume group ---
  VG Name               data
  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               <8.00 GiB
  PE Size               4.00 MiB
  Total PE              2047
  Alloc PE / Size       0 / 0   
  Free  PE / Size       2047 / <8.00 GiB
  VG UUID               vdgmFV-YUTm-xRss-d08L-htVZ-lZR2-penVwt
   
[root@localhost ~]# 

5)创建LV,通过lvcreate -l +100%FREE -n 新lv_Name 新VG_Name

[root@localhost ~]# lvcreate -l +100%FREE -n lv_data data
  Logical volume "lv_data" created.
[root@localhost ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                nEIsmP-JeNU-pkSn-QOhy-9JIB-gqRM-KA8Dsa
  LV Write Access        read/write
  LV Creation host, time localhost, 2026-03-17T10:45:16+00:00 +0800
  LV Status              available
  # open                 1
  LV Size                7.21 GiB
  Current LE             1847
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/data/lv_data
  LV Name                lv_data
  VG Name                data
  LV UUID                ZwJO1u-o1TH-codf-fo1c-YBVd-bS3l-hqBM08
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2026-03-17T10:45:16+00:00 +0800
  LV Status              available
  # open                 0
  LV Size                <8.00 GiB
  Current LE             2047
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1
   
[root@localhost ~]# 

6)格式化逻辑卷并将文件系统格式为xfs,通过mkfs.xfs /dev/mapper/data-lv_data

[root@localhost ~]#  mkfs.xfs /dev/mapper/data-lv_data 
meta-data=/dev/mapper/data-lv_data isize=512    agcount=4, agsize=524032 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2096128, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost ~]# 

7) 创建目录并挂载文件系统

[root@localhost ~]# mkdir /data
[root@localhost ~]# mount /dev/mapper/data-lv_data /data/
[root@localhost ~]# df -h
Filesystem                Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   7.3G  1.1G  6.2G  16% /
devtmpfs                  908M     0  908M   0% /dev
tmpfs                     920M     0  920M   0% /dev/shm
tmpfs                     920M  8.9M  911M   1% /run
tmpfs                     920M     0  920M   0% /sys/fs/cgroup
/dev/sda1                 797M  145M  653M  19% /boot
tmpfs                     184M     0  184M   0% /run/user/0
/dev/mapper/data-lv_data  8.0G   33M  8.0G   1% /data

此文到此暂时告一段落,下次有时间,再补全怎样动态扩充和缩减空间。