30 openEuler使用LVM管理硬盘-简介和安装

时间:2023-03-02 19:58:10

30 openEuler使用LVM管理硬盘-简介和安装

30.1 LVM简介

LVM是逻辑卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制。LVM通过在硬盘和文件系统之间添加一个逻辑层,来为文件系统屏蔽下层硬盘分区布局,提高硬盘分区管理的灵活性,

使用LVM管理硬盘的基本过程如下:

  1. 将硬盘创建为物理卷
  2. 将多个物理卷组合成卷组
  3. 在卷组中创建逻辑卷
  4. 在逻辑卷之上创建文件系统

通过LVM管理硬盘之后,文件系统不再受限于硬盘的大小,可以分布在多个硬盘上,也可以动态扩容。

30.1.1 基本概念

  • 物理存储介质(The physical media):指系统的物理存储设备,如硬盘,系统中为/dev/hda、/dev/sda等等,是存储系统最低层的存储单元。
  • 物理卷(Physical Volume,PV):指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块。物理卷包括一个特殊的标签,该标签默认存放在第二个 512 字节扇区,但也可以将标签放在最开始的四个扇区之一。该标签包含物理卷的随机唯一识别符(UUID),记录块设备的大小和LVM元数据在设备中的存储位置。
  • 卷组(Volume Group,VG):由物理卷组成,屏蔽了底层物理卷细节。可在卷组上创建一个或多个逻辑卷且不用考虑具体的物理卷信息。
  • 逻辑卷(Logical Volume,LV):卷组不能直接用,需要划分成逻辑卷才能使用。逻辑卷可以格式化成不同的文件系统,挂载后直接使用。
  • 物理块(Physical Extent,PE):物理卷以大小相等的“块”为单位存储,块的大小与卷组中逻辑卷块的大小相同。
  • 逻辑块(Logical Extent,LE):逻辑卷以“块”为单位存储,在一卷组中的所有逻辑卷的块大小是相同的。

30.2 安装

30 openEuler使用LVM管理硬盘-简介和安装说明: openEuler操作系统默认已安装LVM。可通过rpm -qa | grep lvm2命令查询,若打印信息中包含“lvm2”信息,则表示已安装LVM,可跳过本章节内;若无任何打印信息,则表示未安装,可参考本章节内容进行安装。

  1. 配置本地yum源,详细信息请参考《openEuler 22.03-LTS 搭建repo服务器》。

  2. 清除缓存。

    # dnf clean all
    

    例如示例命令如下:

    [root@superman-21 ~]# dnf clean all
    36 files removed
    [root@superman-21 ~]# 
    
  3. 创建缓存。

    # dnf makecache
    

    例如示例命令如下:

    [root@superman-21 ~]# dnf makecache
    OS                                                                                        4.8 MB/s | 3.4 MB     00:00    
    everything                                                                                7.9 MB/s |  16 MB     00:02    
    EPOL                                                                                      4.3 MB/s | 2.6 MB     00:00    
    debuginfo                                                                                 5.7 MB/s | 3.9 MB     00:00    
    source                                                                                    2.7 MB/s | 1.7 MB     00:00    
    update                                                                                    7.6 MB/s |  29 MB     00:03    
    Metadata cache created.
    [root@superman-21 ~]# 
    
  4. 在root权限下安装LVM。

    # dnf install lvm2
    

    例如示例命令如下:

    [root@superman-21 ~]# dnf install lvm2
    Last metadata expiration check: 0:01:36 ago on 2022年12月26日 星期一 20时34分47秒.
    Dependencies resolved.
    ==========================================================================================================================
     Package                                    Architecture         Version                           Repository        Size
    ==========================================================================================================================
    Installing:
     lvm2                                       x86_64               8:2.03.14-4.oe2203                OS               1.8 M
    Installing dependencies:
     device-mapper-event                        x86_64               8:1.02.181-4.oe2203               OS                45 k
     libaio                                     x86_64               0.3.112-2.oe2203                  OS                22 k
     thin-provisioning-tools                    x86_64               0.9.0-3.oe2203                    OS               415 k
    Installing weak dependencies:
     lvm2-help                                  noarch               8:2.03.14-4.oe2203                OS               320 k
     thin-provisioning-tools-help               noarch               0.9.0-3.oe2203                    OS                26 k
    
    Transaction Summary
    ==========================================================================================================================
    Install  6 Packages
    
    Total download size: 2.6 M
    Installed size: 7.5 M
    Is this ok [y/N]: y
    Downloading Packages:
    (1/6): libaio-0.3.112-2.oe2203.x86_64.rpm                                                 167 kB/s |  22 kB     00:00    
    (2/6): device-mapper-event-1.02.181-4.oe2203.x86_64.rpm                                   232 kB/s |  45 kB     00:00    
    (3/6): lvm2-help-2.03.14-4.oe2203.noarch.rpm                                              1.6 MB/s | 320 kB     00:00    
    (4/6): thin-provisioning-tools-0.9.0-3.oe2203.x86_64.rpm                                  2.0 MB/s | 415 kB     00:00    
    (5/6): thin-provisioning-tools-help-0.9.0-3.oe2203.noarch.rpm                             359 kB/s |  26 kB     00:00    
    (6/6): lvm2-2.03.14-4.oe2203.x86_64.rpm                                                   3.6 MB/s | 1.8 MB     00:00    
    --------------------------------------------------------------------------------------------------------------------------
    Total                                                                                     5.2 MB/s | 2.6 MB     00:00     
    retrieving repo key for OS unencrypted from http://repo.openeuler.org/openEuler-22.03-LTS/OS/x86_64/RPM-GPG-KEY-openEuler
    OS                                                                                         22 kB/s | 2.1 kB     00:00    
    Importing GPG key 0xB25E7F66:
     Userid     : "private OBS (key without passphrase) <defaultkey@localobs>"
     Fingerprint: 12EA 74AC 9DF4 8D46 C69C A0BE D557 065E B25E 7F66
     From       : http://repo.openeuler.org/openEuler-22.03-LTS/OS/x86_64/RPM-GPG-KEY-openEuler
    Is this ok [y/N]: y
    Key imported successfully
    Running transaction check
    Transaction check succeeded.
    Running transaction test
    Transaction test succeeded.
    Running transaction
      Preparing        :                                                                                                  1/1 
      Installing       : libaio-0.3.112-2.oe2203.x86_64                                                                   1/6 
      Installing       : thin-provisioning-tools-help-0.9.0-3.oe2203.noarch                                               2/6 
      Installing       : thin-provisioning-tools-0.9.0-3.oe2203.x86_64                                                    3/6 
      Installing       : lvm2-help-8:2.03.14-4.oe2203.noarch                                                              4/6 
      Installing       : device-mapper-event-8:1.02.181-4.oe2203.x86_64                                                   5/6 
      Running scriptlet: device-mapper-event-8:1.02.181-4.oe2203.x86_64                                                   5/6 
    Created symlink /etc/systemd/system/sockets.target.wants/dm-event.socket → /usr/lib/systemd/system/dm-event.socket.
    
      Installing       : lvm2-8:2.03.14-4.oe2203.x86_64                                                                   6/6 
      Running scriptlet: lvm2-8:2.03.14-4.oe2203.x86_64                                                                   6/6 
    Created symlink /etc/systemd/system/sysinit.target.wants/lvm2-monitor.service → /usr/lib/systemd/system/lvm2-monitor.service.
    Created symlink /etc/systemd/system/sysinit.target.wants/lvm2-lvmpolld.socket → /usr/lib/systemd/system/lvm2-lvmpolld.socket.
    
      Verifying        : device-mapper-event-8:1.02.181-4.oe2203.x86_64                                                   1/6 
      Verifying        : libaio-0.3.112-2.oe2203.x86_64                                                                   2/6 
      Verifying        : lvm2-8:2.03.14-4.oe2203.x86_64                                                                   3/6 
      Verifying        : lvm2-help-8:2.03.14-4.oe2203.noarch                                                              4/6 
      Verifying        : thin-provisioning-tools-0.9.0-3.oe2203.x86_64                                                    5/6 
      Verifying        : thin-provisioning-tools-help-0.9.0-3.oe2203.noarch                                               6/6 
    
    Installed:
      device-mapper-event-8:1.02.181-4.oe2203.x86_64            libaio-0.3.112-2.oe2203.x86_64                               
      lvm2-8:2.03.14-4.oe2203.x86_64                            lvm2-help-8:2.03.14-4.oe2203.noarch                          
      thin-provisioning-tools-0.9.0-3.oe2203.x86_64             thin-provisioning-tools-help-0.9.0-3.oe2203.noarch           
    
    Complete!
    [root@superman-21 ~]# 
    
  5. 查看安装后的rpm包。

    # rpm -qa | grep lvm2
    

    例如示例命令如下:

    [root@superman-21 ~]# rpm -qa | grep lvm2
    lvm2-2.03.14-4.oe2203.x86_64
    lvm2-help-2.03.14-4.oe2203.noarch
    [root@superman-21 ~]# 
    

???? 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

30 openEuler使用LVM管理硬盘-简介和安装