精华内容
下载资源
问答
  • lvcreate命令的作用是创建LVM的逻辑卷逻辑卷是创建在卷组之上的。逻辑卷对应的设备文件保存在卷组目录下,例如:在卷组”vg1000″上创建一个逻辑卷”lvol0″,则此逻辑卷对应的设备文件为”/dev/vg1000/lvol0″。...
  • 文件为VISIO绘制的结构图,主要用以说明物理卷,逻辑卷以及卷组之间的关系,通过图形的方式,更简单直观的说明相互之间的关系,比文字更直接清楚,适合初次接触LVM逻辑卷管理的道友了解基本的架构,相关的操作可以...
  • lvreduce命令用于减少LVM逻辑卷占用的空间大小。使用lvreduce命令收缩逻辑卷的空间大小有可能会删除逻辑卷上已有的数据,所以在操作前必须进行确认。 语法格式:lvreduce [参数] 常用参数: -L 指定逻辑卷的大小...
  • lvdisplay命令用于显示LVM逻辑卷空间大小、读写状态和快照信息等属性。如果省略”逻辑卷”参数,则lvdisplay命令显示所有的逻辑卷属性。否则,仅显示指定的逻辑卷属性。 语法格式:lvdisplay [参数] 常用参数: ...
  • 中标麒麟Linux服务器操作系统培训系列 中标麒麟Linux系统逻辑卷管理指南 技术创新变革未来 本章目标 逻辑卷 LVM的基本概念 逻辑卷 LVM的一般操作和管理方法 逻辑卷 LVM的基本概念 逻辑卷 LVM Logical Volume ...
  • 如果这些分区在装系统的时候使用了lvm(前提是这些分区要是lvm逻辑卷分区),那么就可以轻松进行扩容或缩容!不同文件系统类型所对应的创建、检查、调整命令不同,下面就针对xfs和ext2/3/4文件系统的lvm分区空间的扩...
  • aix逻辑卷镜像

    2019-01-03 12:59:06
    aix逻辑卷镜像,从lvm基础上利用mirror技术对逻辑卷进行镜像操作
  • 在 Linux 中,当你创建一个硬盘分区或者逻辑卷之后,接下来通常是通过格式化这个分区或逻辑卷来创建文件系统。这个操作方法假设你已经知道如何创建分区或逻辑卷,并且你希望将它格式化为包含有文件系统,并且挂载它...
  • 管理磁盘空间对系统管理员来说是一件重要的日常工作。...我想告诉你的是,当 LVM (逻辑卷管理)首次出现在 Fedora Linux 中时,我是非常抗拒它的。我最初的反应是,我并不需要在我和我的设备之间有这
  • 了解Linux操作系统中的逻辑卷管理。逻辑卷管理相关命令,逻辑卷管理新添加1块2G的SCSI硬盘设备,完成硬盘检测及分区
  • AIX 删除逻辑卷后如何恢复文件系统
  • LV:逻辑卷(Logical Volume) 一、创建LVM 准备物理磁盘 0. 准备物理磁盘 [root@server0 ~]# ll /dev/sd* brw-rw----. 1 root disk 253, 32 Jun 6 17:38 /dev/sdc brw-rw----. 1 root disk 253, 48 Jun 6 17:38 /dev/...
  • Linux LVM逻辑卷配置过程详解 许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评估不准确,一旦系统分区不够用时可能不得不备份、删除相关数据,甚至被迫重新...
  • 逻辑卷管理器

    2019-08-13 15:34:37
    逻辑卷管理器 逻辑卷概念及其相关管理工具 逻辑卷 逻辑卷介绍 什么是逻辑卷? LVM(Logical Volume Manager)逻辑卷管理器version2,逻辑卷管理器是在Linux2.4内核以上实现的磁盘管理技术。它是Linux环境下对磁盘...

    逻辑卷管理器

    逻辑卷概念及其相关管理工具

    逻辑卷

    逻辑卷介绍

    • 什么是逻辑卷?
      LVM(Logical Volume Manager)逻辑卷管理器version2,逻辑卷管理器是在Linux2.4内核以上实现的磁盘管理技术。它是Linux环境下对磁盘分区进行管理的一种机制。LVM通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用。传统的分区方式主要缺点是当磁盘空间不足时,无法实现直接对分区进行扩展,然后数据需要迁移的话业务会受到一定程度的影响,而磁盘以逻辑卷的方式在系统使用时,当面临分区空间不足时,逻辑卷可以支持在线扩展,业务不会受到影响。而且逻辑卷在读写速率上有一定的优势。
    • 逻辑卷的优点
      ①支持逻辑卷分区的在线扩展
      ②逻辑卷不关心数据存储在底层哪个磁盘,文件系统大小不受物理磁盘大小的限制
      ③支持新加磁盘至卷组中,只有有物理磁盘槽位就行
      ④支持快照功能
      ⑤支持导出整个卷组,方便硬盘迁移
    • 逻辑卷的缺点
      ①当卷组中的一个磁盘损坏时,可能导致整个卷组受到影响
      在这里插入图片描述
    • 逻辑卷:
         ①Linux Block Device 可以是磁盘单个分区,整个磁盘,硬件实现RAID,大小可以不相同。磁盘分区需要修改分区类型为8e,整块磁盘可以直接添加标签。
         ②physical volumes 物理设备,相当于在block device上添加一个标签,设备数目不改变。
        ③Volume Group PV的组合,可以PV的部分,也可以是全部PV,相当于将磁盘逻辑上组合成一个大的磁盘。
         ④logical volumes逻辑卷,逻辑卷不关心它的具体空间来自于哪一物理设备,而且当逻辑卷的空间不足时,可以支持在线扩展,前提是卷组有剩余空间。因为直观上逻辑卷直接从卷组中拿空间。
         ⑤Physical Extent – PE:每个物理卷被划分基本单元称为physical extents,具有唯一编号的PE是可以被LVM寻址的最小单元,默认每个PE的大小是4M。
         ⑥logical extent – LE:逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域的大小。

    逻辑卷的管理工具

    • PV管理工具
      ①显示pv信息:
         pvs:简要pv信息显示
         pvdisplay 详细显示PV信息
      ②创建pv :pvcreate /dev/sd*
      ③删除pv :pvremove /dev/sd*
    • vg管理工具
      ①显示卷组:vgs | vgdisplay
      ②创建卷组
         vgcreate [-s #[kKmMgGtTpPeE]] VGName /dev/sd*
      ③管理卷组
         vgextend VGName /dev/sd*
         vgreduce VGName /dev/sd*
      ④删除卷组
         先做pvmove,再做vgremove
    • 扩展逻辑卷:
         lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME
         resize2fs /dev/VG_NAME/LV_NAME
         lvresize -r -l +100%FREE /dev/VG_NAME/LV_NAME
    • 缩减逻辑卷:只针对于EXT系列文件系统
         umount /dev/VG_NAME/LV_NAME
         e2fsck -f /dev/VG_NAME/LV_NAME
         resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT]
         lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME
         mount
    • 跨主机迁移卷组
    1. 源计算机上
      1 在旧系统中,umount所有卷组上的逻辑卷
      2 禁用卷组
         vgchange –a n vg0
         lvdisplay
      3 导出卷组
         vgexport vg0
         pvscan
         vgdisplay
         拆下旧硬盘
    2. 在目标计算机上
      4 在新系统中安装旧硬盘,并导入卷组:vgimport vg0
      5 vgchange –ay vg0 启用
      6 mount所有卷组上的逻辑卷

    逻辑卷实验

    1)逻辑卷的使用:
      ①先创建PV,先创建了两个分区,修改分区表示8e,
        [root@centos7 ~]# pvcreate /dev/sdb1 /dev/sdc1
        Physical volume "/dev/sdb1" successfully created.
        Physical volume "/dev/sdc1" successfully created.
        [root@centos7 ~]# pvs
        PV         VG Fmt  Attr PSize PFree
        /dev/sdb1     lvm2 ---  2.00g 2.00g
        /dev/sdc1     lvm2 ---  1.00g 1.00g
        可以看到此时PV并未创建为VG
        [root@centos7 ~]# lsblk
        .....此时查看设仍然还是多块设备,但在后面有TYPE="LVM2_member" 标签
        /dev/sdb1: UUID="ZdGBmG-4f51-ZY9Z-rUY2-Am1F-HctA-XSgr1X" TYPE="LVM2_member" 
        /dev/sdc1: UUID="TEbpj5-4gJ2-cK2R-BQxQ-dYx4-qDUa-6fZDO6" TYPE="LVM2_member" 
    
      ②利用现有PV组合成一块大的磁盘,即生成VG
        [root@centos7 ~]# pvs
        PV         VG Fmt  Attr PSize PFree
        /dev/sdb1     lvm2 ---  2.00g 2.00g
        /dev/sdc1     lvm2 ---  1.00g 1.00g
        [root@centos7 ~]# vgcreate vg0 /dev/sdb1 /dev/sdc1
        Volume group "vg0" successfully created
        [root@centos7 ~]# vgs
        VG  #PV #LV #SN Attr   VSize VFree
        vg0   2   0   0 wz--n- 2.99g 2.99g
        [root@centos7 ~]# pvs
        PV         VG  Fmt  Attr PSize    PFree   
        /dev/sdb1  vg0 lvm2 a--    <2.00g   <2.00g
        /dev/sdc1  vg0 lvm2 a--  1020.00m 1020.00m
        此时一个逻辑上的由/dev/sdb1和/dev/sdc1组合成的磁盘已经被创建
        当然此时创建时默认没有指明PE大小,默认为4M
      
      ③在创建好的VG可以再划分小块的LV使用,LV大小由PE个数决定,而且建议将
      LV的名称与实际应用名称保存一致,并在创建时指明大小:
        [root@centos7 ~]# lvcreate  -n mysql -L 1.5G /dev/vg0
        Logical volume "mysql" created.
        [root@centos7 ~]# lvs
        LV    VG  Attr   LSize Pool Origin Data%  Meta%  ....
        mysql vg0 -wi-a----- 1.50g  
        至此LV已经创建完成
      
      ④LV创建完成之后,类似于硬盘分区创建,之后就是创建文件系统,然后挂载使用。
    

    pvdisplay:查看PV的详细信息

    vgdisplay:查看VG的信息


    lvdisplay :查看LV的信息

    逻辑卷创建后的信息:

    2)逻辑卷的扩展 
        [root@centos7 ~]# mount -L '/mnt/mysql' /mnt/mysql/
        对上述逻辑卷进行文件系统创建之后,挂载使用
        [root@centos7 ~]# df -TH (H单位是1000)
        ....当此时
        /dev/mapper/vg0-mysql  ext4 1.6G  4.8M  1.5G  1% /mnt/mysql
        ~]# dd if=/dev/zero of=/mnt/mysql/f1 bs=1M count=1024
        ~]# df -TH
        ...(生成个大文件,然后查看逻辑卷的空间不足,打算扩展逻辑卷的空间)
        /dev/mapper/vg0-mysql ext4  1.6G  1.1G  376M  75% /mnt/mysql
      
      ①分析卷组是否有空闲的PE数可供/dev//vg0/mysql这个逻辑卷使用
      ②若无剩余空闲PE,需先扩展VG空间,选择直接添加磁盘生成PV,再组合成同一VG
      ③有剩余空闲PE时,直接在线扩展LV空间,
    
        [root@centos7 ~]# lvextend -L +1G /dev/vg0/mysql
        ...扩展成功
        [root@centos7 ~]# df -TH
        ....(显示扩展成功,但是df -TH查看空间时并未扩展)
        /dev/mapper/vg0-mysql ext4  1.6G  1.1G  376M  75% /mnt/mysql
        此时需要注意:df查看的是文件系统的使用情况,而且是文件系统实际使用
        空间(稀疏文件显示实际使用空间)
      ④同步扩展逻辑卷的文件系统
        ~]# resize2fs /dev/vg0/mysql  ext系列文件系统
        ~]# xfs_growfs /dev/vg0/mysql xfs文件系统
        或者扩展时一步到位: lvextend  -r 加 -r选项
        lvextend  -r -l +100%free /dev/vg0/mysql
    
    3)逻辑卷的缩减 (只针对ext系列逻辑卷、xfs文件系统只支持扩展)
    缩减要考虑实际使用情况,当缩减后逻辑卷空间小于上面存储的数据的空间,将导
    致数据丢失,因此一般不会缩减逻辑卷,此处也不再实验啦~
        注意:逻辑卷缩减首先需要离线状态
        即①取消挂载
        ②检查文件系统(不检查会报错,会提示检查文件系统)
        ③resize2fs /dev/LVMName #G 缩减至#G(先缩文件系统)
        ④~]#  lvreduce -L 1.8G /dev/vg0/mysql
        ⑤重新挂载使用
    
    4)逻辑卷磁盘的删除
    当构成逻辑卷的其中一块硬盘故障时,会影响整个卷组,解决办法是,当发现构成
    逻辑卷的硬盘组中有硬盘显示指示灯出现变黄时(绿色正常,红色故障,黄色预警),
    此时应将此硬盘正在使用的PE找同一卷组中的空闲PE存放。
        关键词:硬盘即将故障;转移PE;同一卷组;空闲PE
      ①若空余空间不足,添加物理磁盘,将物理设备生成PV
      ②将卷组的空间扩展,是空闲PE数足够容纳剔除磁盘使用的PE数
      ③执行:pvmove /dev/Device(同一卷组中剩余PE不够时,此命令不能执行)
        注意:此命令搬的是空间,当然数据跟随空间一起搬移了。
      ④将此硬盘从卷组中移除:~]# vgreduce VGName /dev/sd*
      ⑤将设备的物理卷删除:~]# pvremove /dev/sd*
      ⑥此时可以拔出磁盘
    
    5)逻辑卷扩主机迁移
    1、 源计算机上  
      ①在旧系统中,umount所有卷组上的逻辑卷  
      ②禁用卷组  
         vgchange –an vg0   
         lvdisplay  
      ③导出卷组  
         vgexport vg0   
         pvscan  
         vgdisplay  
        拆下旧硬盘  
    2、 在目标计算机上  
      ④在新系统中安装旧硬盘,并导入卷组:vgimport vg0   
      ⑤vgchange –ay vg0 启用  
      ⑥mount所有卷组上的逻辑卷 
    

    逻辑卷快照

    • 逻辑卷快照的实现原理:
      在逻辑卷同一卷组中创建一个快照逻辑卷,创建时指定容量和名称。 此时命令一
      敲一回车快照就生成了,但是生成的快照并非是备份原逻辑卷中的文件,快照只是
      在卷组中生成了指定容量的空间而已,此空间用于存储逻辑卷中变化的文件(删除、或者修改等)—相对于刚才创建时那瞬间。最初的版本在逻辑卷快照中,最后的版本在逻辑卷中,中间改过的其他版本不知道在哪…快照会影响性能,现在修改文件的话会先复制一份去快照空间中,因此快照用完之后,建议直接删除。快照中只保存执行命令时的当前状态内容…
    • 关键词:快照是逻辑卷,要求快照与逻辑卷在同一卷组,快照可以指定大小(可以跟原始状态大小不一样,看你需要变化的数据大小),快照空间保存内容的命令回车那一瞬间的原始数据(要求这些原始数据会发生变化时复制至快照空间)
    • 适用场景:在逻辑卷中临时性的修改一些文件,修改的东西用于测试使用,当
      测试完成之后,希望回到逻辑卷的原有状态,此时可以考虑快照。快照比较适合这样的场景。生成快照比数据备份花费的时间更少。
    • 快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝

    • 对于需要备份或者复制的现有数据临时拷贝以及其它操作来说,快照是最合适
      的选择

    • 快照只有在它们和原来的逻辑卷不同时才会消耗空间
         在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间
         当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中
         快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据
         建立快照的卷大小小于等于原始逻辑卷,也可以使用lvextend扩展快照

    • 快照就是将当时的系统信息记录下来,就好像照相一般,若将来有任何数据改动了,则原始数据会被移动到快照区,没有改动的区域则由快照区和文件系统共享

    • 由于快照区与原本的LV共用很多PE的区块,因此快照与被快照的LV必须在同一个VG中.系统恢复的时候的文件数量不能高于快照区的实际容量

    • 使用LVM快照
      1)为现有逻辑卷创建快照
         lvcreate -l 64 -s -n data-snapshot -p r /dev/vg0/data
      2)挂载快照
         mkdir -p /mnt/snap
         mount -o ro /dev/vg0/data-snapshot /mnt/snap
      3)恢复快照
         umount /dev/vg0/data-snapshot
         umount /dev/vg0/data
         lvconvert --merge /dev/vg0/data-snapshot
      4)删除快照
         umount /mnt/databackup
         lvremove /dev/vg0/databackup
    创建快照:
      ①指定对哪个逻辑卷创建快照,一般设置为只读属性,或者挂载是设置为只读
      因为快照中将保存的快照瞬间的文件。
        ~]# ls -lh
        ...(目前我逻辑卷下文件,数目较少文件也不大,因此我创建一个500M的快照)
        -rw-r--r-- 1 root root  595 Aug 13 14:26 fstab
        -rw-r--r-- 1 root root   94 Aug 13 14:26 issue
        -rw-r--r-- 1 root root    0 Aug 13 14:26 motd
        -rw-r--r-- 1 root root 2.4K Aug 13 14:26 passwd
        创建快照,并设置大小,指定名称(便于识别是哪个逻辑卷的快照)
        ~l]# lvcreate -n mysql_snapshot -s -L 500M  /dev/vg0/mysql
    
        查看创建的快照信息:lvdisplay
        --- Logical volume ---
        LV Path                /dev/vg0/mysql
        ....
        LV snapshot status     source of mysql_snapshot [active]
        ....                    mysql_snapshot快照的源
                        
         --- Logical volume ---
        LV Path                /dev/vg0/mysql_snapshot
        LV Name                mysql_snapshot
        .........
        LV snapshot status     active destination for mysql
        .....                      (mysql 逻辑卷的快照) 
        创建扩展命令一回车,快照就创建完成了,因为相当于创建一个逻辑卷,只分
        配了空间
    
        ~]blkid (看到快照的UUID与源逻辑卷的UUID是一样的)
        /dev/mapper/vg0-mysql: UUID="1e388039-5e05-4b25-955d-3c2b6a1c65b8" TYPE="xfs" 
        /dev/mapper/vg0-mysql_snapshot: UUID="1e388039-5e05-4b25-955d-3c2b6a1c65b8" TYPE="xfs" 
        将快照挂载一个目录下,观察刚创建的快照是否有文件?
        ~]mkdir /mnt/snap;mount  -o nouuid /dev/vg0/mysql_snapshot /mnt/snap
        (因为UUID一样,xfs默认只允许挂载一个,挂载时需要设置挂载选项)
        [root@centos7 snap]# ll /mnt/mysql/
        total 12
        -rw-r--r-- 1 root root  595 Aug 13 14:56 fstab
        -rw-r--r-- 1 root root   94 Aug 13 14:55 issue
        -rw-r--r-- 1 root root    0 Aug 13 14:56 motd
        -rw-r--r-- 1 root root 2443 Aug 13 14:56 passwd
        [root@centos7 snap]# ll /mnt/snap/
        total 12
        -rw-r--r-- 1 root root  595 Aug 13 14:56 fstab
        -rw-r--r-- 1 root root   94 Aug 13 14:55 issue
        -rw-r--r-- 1 root root    0 Aug 13 14:56 motd
        -rw-r--r-- 1 root root 2443 Aug 13 14:56 passwd
        可以看见快照中存在文件?但是这个文件实际上来自于原有逻辑卷
        当我对源逻辑卷中数据进行修改时:
        [root@centos7 mysql]# ll /mnt/mysql/
        total 8
        -rw-r--r-- 1 root root   0 Aug 13 15:07 f5
        -rw-r--r-- 1 root root 595 Aug 13 14:56 fstab
        -rw-r--r-- 1 root root  22 Aug 13 15:07 issue
        [root@centos7 mysql]# ll /mnt/snap/
        total 12 
        -rw-r--r-- 1 root root  595 Aug 13 14:56 fstab
        -rw-r--r-- 1 root root   94 Aug 13 14:55 issue
        -rw-r--r-- 1 root root    0 Aug 13 14:56 motd
        -rw-r--r-- 1 root root 2443 Aug 13 14:56 passwd
    
      ②将快照数据恢复
        取消挂载;快照和逻辑卷挂载均取消
        然后执行~]# lvconvert --merge /dev/vg0/mysql_snapshot
        还原之后逻辑卷的快照就被删除了。
    
        由于上述实验:创建快照时默认里面文件,感觉像是直接拷贝,因此我创建了
        一个小于文件大小快照:挂载快照查看文件内容,仍然有源逻辑卷的文件---
        [root@centos7 ~]# lvcreate -s -n mysql_snapshot -L 2K /dev/vg0/mysql
        Rounding up size to full physical extent 4.00 MiB
        Logical volume "mysql_snapshot" created.
        [root@centos7 ~]# mount -o nouuid /dev/vg0/mysql_snapshot /mnt/snap/
        [root@centos7 ~]# ll -h /mnt/snap/
        total 12K
        -rw-r--r-- 1 root root  595 Aug 13 14:56 fstab
        -rw-r--r-- 1 root root   94 Aug 13 14:55 issue
        -rw-r--r-- 1 root root    0 Aug 13 14:56 motd
        -rw-r--r-- 1 root root 2.4K Aug 13 14:56 passwd
    
        xfs文件系统只允许挂载一次,快照本身应该是只读的,可以在创建快照时设
        置只读,但是系统对xfs文件系统只读挂载不支持,因此还是建议在挂载时设
        置只读选项。
    
    展开全文
  • 创建逻辑卷 对已有逻辑卷的修改与删除 E.G.1 从TEST卷组中删除test_lv的逻辑卷 E.G.2重命名逻辑卷 E.G.3修改test_lv逻辑卷的大小 E.G.4 扩展逻辑卷并修改系统文件的大小 关系概述 首先,物理卷(PV,Physical...

    目录

    关系概述

    创建逻辑卷

    对已有逻辑卷的修改与删除

    E.G.1  从TEST卷组中删除test_lv的逻辑卷

    E.G.2 重命名逻辑卷

    E.G.3 修改test_lv逻辑卷的大小

    E.G.4 扩展逻辑卷并修改系统文件的大小


    关系概述

    首先,物理卷(PV,Physical Volumes)对应的是硬件存储,是磁盘或者磁盘分区,是物理存在。而卷组(VG,Volume Group)和逻辑卷(LV,Logical Volumes)则是逻辑上的存在。

    卷组是由一到多个物理卷组成的,他可以划分成一到多个逻辑卷。

    LE,Logical Extent,字面上是逻辑区,是逻辑卷最小的存储单位,个人为了方便理解,常说做逻辑块,实际上是逻辑区域。

    PE,Physical Extent,物理区,是物理卷区域,是物理卷最小的存储单位,可以在创建物理卷时,指定大小,但是指定之后,就不可以在更改,除非删除物理卷,重新创建,当然,内容也会被删除。

    如下图:

    上图中,关于物理卷的示意,只是大概示意,意为:磁盘和磁盘分区,均可以创建物理卷,无论是磁盘还是分区创建的物理卷,PE都是其最小存储单位。

    高清无水印版可到以下链接下载资源,使用请说明出处,侵权必究。

    物理卷、逻辑卷和卷组的关系图(高清版).pdf

    创建逻辑卷

    可以直接使用磁盘设备,也可以使用磁盘的分盘,但是,不论使用哪种方法,创建换组之前都需要先创建物理卷,可以对一个磁盘创建,也可以一次创建多个,以空格隔开:

    # pvcreate /dev/ram0 /dev/ram1
      Physical volume "/dev/ram0" successfully created
      Physical volume "/dev/ram1" successfully created
    

    接下来可以将已经创建好的物理卷,选用需要的物理卷来创建卷组:

    # vgcreate TEST /dev/ram0 /dev/ram1
      Volume group "TEST" successfully created

    创建成功后,可以使用vgdisplay命令来查看卷组的情况:(可以指定卷组名称,之查看卷组情况,也可以使用vgdisplay查看所有的卷组,卷组名有大小写之分)

    # vgdisplay TEST
      --- Volume group ---
      VG Name               TEST
      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               24.00 MiB
      PE Size               4.00 MiB
      Total PE              6
      Alloc PE / Size       0 / 0   
      Free  PE / Size       6 / 24.00 MiB
      VG UUID               zejODC-HyXC-iD5p-5bUI-cKx3-BX8j-SMz50P
    

    最后创建逻辑卷,就是从卷组中划出一部分或者全部,来创建一个逻辑卷:

    # lvcreate -l 6 -n test_lv TEST
      Logical volume "test_lv" created.
    
    # lvcreate -L 24M -n test_lv TEST
      Logical volume "test_lv" created.

    以上两条命令的效果一致,都是从TEST卷组中划分出一个大小为24M,名为test_lv的逻辑卷。

    参数说明:
        -l 是按PE的数量计算大小,也就是物理块数量,一个卷组有多少个块可以划分,可以在vgdisplay的Free PE一项中查看;
        -L 是按照Size的大小划分,也就是K、M、G、T等,比如说200M,就是创建一个200M的逻辑卷,可以和-l替换;
        -n 是要创建的逻辑卷的名称;
        最后,要指定,从哪个卷组中划分

    可以使用以下命令查看已经划分的逻辑卷的情况,如:只查看TEST卷组下创建的逻辑卷

    # lvdisplay TEST
      --- Logical volume ---
      LV Path                /dev/TEST/test_lv
      LV Name                test_lv
      VG Name                TEST
      LV UUID                g5BnqX-Etn6-TTc7-Jnfk-Mtt3-VmqL-441LLJ
      LV Write Access        read/write
      LV Creation host, time o11204x1.ntos.com, 2019-09-05 14:18:31 +0800
      LV Status              available
      # open                 0
      LV Size                24.00 MiB
      Current LE             6
      Segments               2
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     256
      Block device           249:3
    

    对已有逻辑卷的修改与删除

    操作过程中,常会出现很多对已经存在的逻辑卷的扩充,删除,重指定大小等操作

    E.G.1  从TEST卷组中删除test_lv的逻辑卷

    # lvremove test_lv TEST
      Volume group "test_lv" not found
      Cannot process volume group test_lv
    Do you really want to remove active logical volume test_lv? [y/n]: y
      Logical volume "test_lv" successfully removed

    E.G.2 重命名逻辑卷

    # lvrename TEST test_lv lv_test
      Renamed "test_lv" to "lv_test" in volume group "TEST"
    
    # lvdisplay TEST
      --- Logical volume ---
      LV Path                /dev/TEST/lv_test
      LV Name                lv_test
      VG Name                TEST
      LV UUID                g5BnqX-Etn6-TTc7-Jnfk-Mtt3-VmqL-441LLJ
      LV Write Access        read/write
      LV Creation host, time o11204x1.ntos.com, 2019-09-05 14:18:31 +0800
      LV Status              available
      # open                 0
      LV Size                48.00 MiB
      Current LE             12
      Segments               4
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     256
      Block device           249:3
    

    E.G.3 修改test_lv逻辑卷的大小

    增加大小一定要确定,卷组中有足够的空间可以给逻辑卷扩展,否则扩展会失败

    --减小大小
    # lvresize -l -4 /dev/TEST/lv_test
      WARNING: Reducing active logical volume to 8.00 MiB.
      THIS MAY DESTROY YOUR DATA (filesystem etc.)
    Do you really want to reduce TEST/lv_test? [y/n]: y
      Size of logical volume TEST/lv_test changed from 24.00 MiB (6 extents) to 8.00 MiB (2 extents).
      Logical volume lv_test successfully resized.
    
    --增加大小
    # lvresize -L +16M /dev/TEST/lv_test
      Size of logical volume TEST/lv_test changed from 8.00 MiB (2 extents) to 24.00 MiB (6 extents).
      Logical volume lv_test successfully resized.
    

    E.G.4 扩展逻辑卷并修改系统文件的大小

    特别说明,扩展的时候,常使用lvextend命令,lvresize也可以实现:

    --若当前卷组大小不足以扩展逻辑卷,步骤如下
    --查看为划分卷组的物理卷
    # pvdisplay   
      --- Physical volume ---
      PV Name               /dev/ram1
      VG Name               TEST
      PV Size               16.00 MiB / not usable 4.00 MiB
      Allocatable           yes (but full)
      PE Size               4.00 MiB
      Total PE              3
      Free PE               0
      Allocated PE          3
      PV UUID               elLt5N-HXME-ZsAJ-uGCm-SjYo-VZ3D-Upl2X8
       
      "/dev/ram2" is a new physical volume of "16.00 MiB"
      --- NEW Physical volume ---
      PV Name               /dev/ram2
      VG Name               
      PV Size               16.00 MiB
      Allocatable           NO
      PE Size               0   
      Total PE              0
      Free PE               0
      Allocated PE          0
      PV UUID               sP7aAI-e3iL-ys2l-lmEv-p2p3-mQzH-hNMQ33
    
    --扩展卷组
    # vgextend TEST /dev/ram2
      Volume group "TEST" successfully extended
    # pvdisplay 
    --- Physical volume ---
      PV Name               /dev/ram2
      VG Name               TEST
      PV Size               16.00 MiB / not usable 4.00 MiB
      Allocatable           yes 
      PE Size               4.00 MiB
      Total PE              3
      Free PE               3
      Allocated PE          0
      PV UUID               sP7aAI-e3iL-ys2l-lmEv-p2p3-mQzH-hNMQ33
    
    # vgdisplay TEST
      --- Volume group ---
      VG Name               TEST
      System ID             
      Format                lvm2
      Metadata Areas        3
      Metadata Sequence No  9
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                1
      Open LV               0
      Max PV                0
      Cur PV                3
      Act PV                3
      VG Size               36.00 MiB
      PE Size               4.00 MiB
      Total PE              9
      Alloc PE / Size       6 / 24.00 MiB
      Free  PE / Size       3 / 12.00 MiB
      VG UUID               zejODC-HyXC-iD5p-5bUI-cKx3-BX8j-SMz50P
    
    --卷组多出了12M 3个PE的大小,此时可以给逻辑卷扩展最多12M的空间
    # lvextend -L +12M /dev/TEST/lv_test
      Size of logical volume TEST/lv_test changed from 24.00 MiB (6 extents) to 36.00 MiB (9 extents).
      Logical volume lv_test successfully resized.
    
    # lvextend -L +12M /dev/TEST/lv_test -r --也只直接扩展并充值文件系统大小

    当逻辑卷扩展完成后,若该逻辑卷已经挂载到文件系统上,那么,我们还需要修改文件系统的大小,扩展磁盘大小时,可以保留原磁盘中的内容,但是,如果要回收部分磁盘空间,那么,磁盘则需要格式化。

    挂载文件系统并修改文件系统信息的步骤如下:

    --现在逻辑卷大小为36M,挂载到文件系统
    # lvdisplay TEST
      --- Logical volume ---
      LV Path                /dev/TEST/lv_test
      LV Name                lv_test
      VG Name                TEST
      LV UUID                g5BnqX-Etn6-TTc7-Jnfk-Mtt3-VmqL-441LLJ
      LV Write Access        read/write
      LV Creation host, time o11204x1.ntos.com, 2019-09-05 14:18:31 +0800
      LV Status              available
      # open                 1
      LV Size                36.00 MiB
      Current LE             9
      Segments               3
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     256
      Block device           249:3
    
    # mkfs.ext3 /dev/TEST/lv_test
    # mount /dev/TEST/lv_test /lvtest
    # df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lvroot
                           14G  5.6G  7.4G  44% /
    tmpfs                 767M   72K  767M   1% /dev/shm
    /dev/sda1             976M   84M  825M  10% /boot
    /dev/mapper/vg_data-lvdata
                           20G  9.0G  9.6G  49% /u01
    /dev/mapper/TEST-lv_test
                           35M  443K   33M   2% /lvtest
    
    --扩展逻辑卷大小到48M
    # vgdisplay TEST
      --- Volume group ---
      VG Name               TEST
      System ID             
      Format                lvm2
      Metadata Areas        4
      Metadata Sequence No  18
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                1
      Open LV               1
      Max PV                0
      Cur PV                4
      Act PV                4
      VG Size               48.00 MiB
      PE Size               4.00 MiB
      Total PE              12
      Alloc PE / Size       9 / 36.00 MiB
      Free  PE / Size       3 / 12.00 MiB
      VG UUID               zejODC-HyXC-iD5p-5bUI-cKx3-BX8j-SMz50P
    
    # lvextend -L 48M /dev/TEST/lv_test
      Size of logical volume TEST/lv_test changed from 36.00 MiB (9 extents) to 48.00 MiB (12 extents).
      Logical volume lv_test successfully resized.
    
    # lvdisplay TEST
      --- Logical volume ---
      LV Path                /dev/TEST/lv_test
      LV Name                lv_test
      VG Name                TEST
      LV UUID                g5BnqX-Etn6-TTc7-Jnfk-Mtt3-VmqL-441LLJ
      LV Write Access        read/write
      LV Creation host, time o11204x1.ntos.com, 2019-09-05 14:18:31 +0800
      LV Status              available
      # open                 1
      LV Size                48.00 MiB
      Current LE             12
      Segments               4
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     256
      Block device           249:3
    
    --此时文件系统的大小并没有增加
    # df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lvroot
                           14G  5.6G  7.4G  44% /
    tmpfs                 767M   72K  767M   1% /dev/shm
    /dev/sda1             976M   84M  825M  10% /boot
    /dev/mapper/vg_data-lvdata
                           20G  9.0G  9.6G  49% /u01
    /dev/mapper/TEST-lv_test
                           35M  443K   33M   2% /lvtest
    
    --更新文件系统的大小
    --原磁盘上有一个1.log的文件
    # ls
    1.log
    
    --推出磁盘的占用,解挂磁盘
    # umount /lvtest
    
    --更新文件系统磁盘大小
    # resize2fs /dev/TEST/lv_test
    resize2fs 1.43-WIP (20-Jun-2013)
    Resizing the filesystem on /dev/TEST/lv_test to 49152 (1k) blocks.
    The filesystem on /dev/TEST/lv_test is now 49152 blocks long.
    
    --重新挂载
    # mount /dev/TEST/lv_test /lvtest
    # df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/vg_root-lvroot
                           14G  5.6G  7.4G  44% /
    tmpfs                 767M   72K  767M   1% /dev/shm
    /dev/sda1             976M   84M  825M  10% /boot
    /dev/mapper/vg_data-lvdata
                           20G  9.0G  9.6G  49% /u01
    /dev/mapper/TEST-lv_test
                           47M  586K   44M   2% /lvtest
    
    --磁盘上的文件仍然存在
    # ls
    1.log

     

    展开全文
  • linux 分区格式化挂载 物理卷 逻辑卷
  • 一、什么是LVM逻辑卷 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现,目前最新版本为:稳定版1.0.5,开发版 ...

    一、什么是LVM逻辑卷

    LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现,目前最新版本为:稳定版1.0.5,开发版 1.1.0-rc2,以及LVM2开发版。

    Linux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间。普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。而遇到出现某个分区空间耗尽时,解决的方法通常是使用符号连接(软链接),或者使用调整分区大小的工具(分区重规划),但这只是暂时解决办法,没有从根本上解决问题。随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小。

     

    二、为什么使用LVM

    每个Linux使用者在安装Linux时都会遇到这样的困境:在为系统分区时,如何精确评估和分配各个硬盘分区的容量?

    因为系统管理员不但要考虑到当前某个分区需要的容量,还要预见该分区以后可能需要的容量的最大值。因为如果估 计不准确,当遇到某个分区不够用时管理员可能甚至要备份整个系统、清除硬盘、重新对硬盘分区,然后恢复数据到新分区。

    虽然有很多动态调整磁盘的工具可以使用,例如PartitionMagic等等,但是它并不能完全解决问题,因为某个分区可能会再次被耗尽;另外一个方面这需要 重新引导系统才能实现,对于很多关键的服务器,停机是不可接受的,而且对于添加新硬盘,希望一个能跨越多个硬盘驱动器的文件系统时,分区调整程序就不能解 决问题。

    因此完美的解决方法应该是在零停机前提下可以自如对文件系统的大小进行调整,可以方便实现文件系统跨越不同磁盘和分区。幸运的是Linux提供的逻辑盘卷管理(LVM,LogicalVolumeManager)机制就是一个完美的解决方案。

     

    三、LVM的工作方式

    逻辑卷管理器(LogicalVolumeManager)本质上是一个虚拟设备驱动是在内核中块设备和物理设备之间添加的一个新的抽象层次

    传统的分区方式是直接对硬盘设备分区,而lvm是对逻

    如图所示。它可以将几块磁盘(物理卷,PhysicalVolume)组合起来形成一个存储池或者卷组(VolumeGroup)。

    LVM可以每次从卷组中划分出不同大小的逻辑卷(LogicalVolume)创建新的逻辑设备。底层的原始的磁盘不再由内核直接控制,而由LVM层来控制。

    对于上层应用(系统软件,应用软件)来说卷组替代了磁盘块成为数据存储的基本单元。LVM管理着所有物理卷的物理盘区,维持着逻辑盘区和物理盘区之间的映射。LVM逻辑设备向上层应用提供了和物理磁盘相同的功能,如文件系统的创建和数据的访问等。但LVM逻辑设备不受物理约束的限制,逻辑卷不必是连续的空间,它可以跨越许多物理卷,并且可以在任何时候任意的调整大小。相比物理磁盘来说,更易于磁盘空间的管理。 

     

    从用户态应用来看,LVM逻辑卷相当于一个普通的块设备,对其的读写操作和普通的块设备完全相同。而从物理设备层来看,LVM相对独立于底层的物理设备,并且屏蔽了不同物理设备之间的差异。因而在LVM层上实现数据的连续保护问题,可以不需要单独考虑每一种具体的物理设备,避免了在数据复制过程中因物理设备之间的差异而产生的问题。从LVM的内核实现原理上看,LVM是在内核通用块设备层到磁盘设备驱动层的请求提交流之间开辟的另外一条路径,即在通用块设备层到磁盘设备驱动层之间插入了LVM管理映射层用于截获一定的请求进行处理,如图所示。 [

    用户通过lvm提供接口,依靠内核创建一系列LVM逻辑卷,所有对lvm逻辑卷的读写操作最终都会由LVM在通用块设备层下方截获下来,进行更进一步的处理。这里的进一步处理主要指的是完成写请求的映射,是将请求的数据根据实际情况进行一些拆分和重定位操作,从而可以将请求和数据分发到实际的物理设备中去。

     

    四、LVM管理工具集

     

     

     

    五、新建一个逻辑卷

     

    1.任务

    本例要求准备一个磁盘,并且做好分区,我准备了一个10G大小的磁盘,并且做了一个主分区/dev/vda1 5G.使用分区 /dev/vda1 构建 LVM 存储,相关要求如下:

    1. 新建一个名为 systemvg 的卷组
    2. 在此卷组中创建一个名为 vo 的逻辑卷,大小为180MiB
    3. 将逻辑卷 vo 格式化为 EXT4 文件系统
    4. 将逻辑卷 vo 挂载到 /vo 目录,并在此目录下建立一个测试文件 votest.txt,内容为“I AM KING.”

    [Linux磁盘分区管理]https://blog.csdn.net/ck784101777/article/details/101797858

     

    2.使用到的命令

    LVM创建工具的基本用法:

    1. vgcreate 卷组名 物理设备.. ..
    2. lvcreate -L 大小 -n 逻辑卷名 卷组名

     

    3.创建卷组

    1)新建名为systemvg的卷组

    创建卷组很简单,直接将分好区的磁盘作为卷组即可,此处卷组名为systemvg

    1. [root@server0 ~]# vgcreate systemvg /dev/vda1
    2. Physical volume "/dev/vdb1" successfully created
    3. Volume group "systemvg" successfully created

    2)确认结果

    命令vgscan查看卷组详情,可查看卷组名和文件类型

    1. [root@server0 ~]# vgscan
    2. Reading all physical volumes. This may take a while...
    3. Found volume group "systemvg" using metadata type lvm2

     

    2.创建逻辑卷

    1)新建名为vo的逻辑卷

    指定大小为180MiB(可写成-L 180m 或者-L 0.18G) -n指定逻辑卷名,最后跟上卷组名,表示用哪块卷组为此逻辑卷分配空间

    1. [root@server0 ~]# lvcreate -L 180MiB -n vo systemvg
    2. Logical volume "vo" created

    2)确认结果

    1. [root@server0 ~]# lvscan
    2. ACTIVE '/dev/systemvg/vo' [180.00 MiB] inherit

     

    3,.格式化及挂载使用

    1)格式化逻辑卷/dev/systemvg/vo

    格式化成ext4文件类型

    1. [root@server0 ~]# mkfs.ext4 /dev/systemvg/vo
    2. .. ..
    3. Allocating group tables: done
    4. Writing inode tables: done
    5. Creating journal (4096 blocks): done
    6. Writing superblocks and filesystem accounting information: done

    2)挂载逻辑卷/dev/systemvg/vo

    创建的逻辑卷名的路径为 /dev/卷组名/逻辑卷名

    1. [root@server0 ~]# mkdir /vo                                //创建挂载点
    2. [root@server0 ~]# mount /dev/systemvg/vo   /vo             //挂载
    3. [root@server0 ~]# df -hT /vo/                         //检查结果
    4. Filesystem Type Size Used Avail Use% Mounted on
    5. /dev/mapper/systemvg-vo ext4 171M 1.6M 157M 1% /vo

     

     

    六、调整现有磁盘的分区,使用逻辑分区做逻辑卷

    实验内容:

    本例要求沿用前一天案例,对磁盘/dev/vda的分区表进行调整,要求如下:不更改原有分区,利用剩余空间新增三个分区,大小依次为:500MiB、2000MiB、512MiB

    然后再基于刚建立的 2000MiB 分区构建新的 LVM 存储:

    1. 新的逻辑卷命名为 database,大小为50个物理扩展单元(Physical Extent),属于 datastore 卷组
    2. 在 datastore 卷组中的所有逻辑卷,其物理扩展单元(Physical Extent)的大小为16MiB
    3. 使用 EXT3 文件系统对逻辑卷 database 格式化,此逻辑卷应该在开机时自动挂载到 /mnt/database 目录

     

    实验前需知:

    1)创建卷组时,可以通过-s选项指定PE的大小。

    2)在给新建的逻辑卷分配空间时,空间大小只能是PE大小的倍数。

    3) 使用fdisk进行磁盘分区,分区的规则规定1-3为主分区,4为扩展分区

     我已经创建了3个主分区,当我创建了3个主分区后,系统会要求我创建扩展分区,简单介绍一下扩展分区和逻辑分区的关系,

    当我们创建了足够的分区后(3个主分区,1个扩展分区),接下来系统会提示你All primary partitions are in use,Adding logical partition(所有主分区已经用光,添加逻辑分区),然后会让你创建一个扩展分区,但是扩展分区是不能直接用的,他是以逻辑分区的方式来使用的,所以说扩展分区可分成若干逻辑分区。他们的关系是包含的关系,所有的逻辑分区都是扩展分区的一部分

    总结起来就是:创建扩展分区,再通过创建逻辑分区使用扩展分区

    如图,紫色区域是主分区,黄色区域为扩展区分区,红色区域为存在于扩展分区中的逻辑分区

    【Linux系统磁盘管理】https://blog.csdn.net/ck784101777/article/details/101797858

     

     

    步骤一:调整现有磁盘分区

    1)新建扩展分区(使用剩余可用空间) 

    1. [root@server0 ~]# fdisk /dev/vda
    2.  
    3. Command (m for help): p                                 //确认原有分区表,有3个主分区
    4. .. ..
    5. Device Boot Start End Blocks Id System
    6. /dev/vda1 2048 411647 204800 8e Linux LVM
    7. /dev/vda2 411648 4507647 2048000 83 Linux
    8. /dev/vda3 4507648 6555647 1024000 83 Linux
    9.  
    10. Command (m for help): n                                     //新建分区
    11. Partition type:
    12. p primary (3 primary, 0 extended, 1 free)
    13. e extended
    14. Select (default e): e                                   //类型指定为e(扩展分区)
    15. Selected partition 4                                     //只一个可用编号,自动选取
    16. First sector (6555648-20971519, default 6555648):         //起始位置默认
    17. Using default value 6555648
    18. Last sector, +sectors or +size{K,M,G} (6555648-20971519, default 20971519):
    19. Using default value 20971519                             //结束位置默认
    20. Partition 4 of type Extended and of size 6.9 GiB is set
    21.  
    22. Command (m for help): p
    23. .. ..
    24. Device Boot Start End Blocks Id System
    25. /dev/vda1 2048 411647 204800 8e Linux LVM
    26. /dev/vda2 411648 4507647 2048000 83 Linux
    27. /dev/vda3 4507648 6555647 1024000 83 Linux
    28. /dev/vda4 6555648 20971519 7207936 5 Extended

     

     

    2)在扩展分区中新建3个逻辑分区

    在这里我们需要创建三个逻辑分区

    创建第1个逻辑分区(由于主分区编号已用完,分区类型自动选l逻辑分区):

    1. Command (m for help): n
    2. All primary partitions are in use
    3. Adding logical partition 5                             //分区编号5
    4. First sector (6557696-20971519, default 6557696):         //起始位置默认
    5. Using default value 6557696
    6. Last sector, +sectors or +size{K,M,G} (6557696-20971519, default 20971519): +500M
    7.                                                               //结束位置默认
    8. Partition 5 of type Linux and of size 500 MiB is set

    创建第2个逻辑分区:

    1. Command (m for help): n
    2. All primary partitions are in use
    3. Adding logical partition 6                             //分区编号6
    4. First sector (7583744-20971519, default 7583744):         //起始位置默认
    5. Using default value 7583744
    6. Last sector, +sectors or +size{K,M,G} (7583744-20971519, default 20971519): +2000M
    7.                                                     //结束位置默认
    8. Partition 6 of type Linux and of size 2 GiB is set

    创建第3个逻辑分区:

    1. Command (m for help): n
    2. All primary partitions are in use
    3. Adding logical partition 7                             //分区编号7
    4. First sector (11681792-20971519, default 11681792):     //起始位置默认
    5. Using default value 11681792
    6. Last sector, +sectors or +size{K,M,G} (11681792-20971519, default 20971519): +512M
    7.                                                     //结束位置默认
    8. Partition 7 of type Linux and of size 512 MiB is set

     

    根据预计的用途调整分区类型(可选):

    1. Command (m for help): t                                 //修改
    2. Partition number (1-7, default 7): 5                     //第5个分区
    3. Hex code (type L to list all codes): 8e                 //类型为8e(LVM)
    4. Changed type of partition 'Linux' to 'Linux LVM'
    5.  
    6. Command (m for help): t                                 //修改
    7. Partition number (1-7, default 7): 6                     //第6个分区
    8. Hex code (type L to list all codes): 8e                 //类型为8e(LVM)
    9. Changed type of partition 'Linux' to 'Linux LVM'
    10.  
    11. Command (m for help): t                                 //修改
    12. Partition number (1-7, default 7): 7                     //第7个分区
    13. Hex code (type L to list all codes): 82                 //类型为82(交换分区)
    14. Changed type of partition 'Linux' to 'Linux swap / Solaris'

    确认分区结果并保存:

    1. Command (m for help): p
    2. .. ..
    3. Device Boot Start End Blocks Id System
    4. /dev/vdb1 2048 411647 204800 8e Linux LVM
    5. /dev/vdb2 411648 4507647 2048000 83 Linux
    6. /dev/vdb3 4507648 6555647 1024000 83 Linux
    7. /dev/vdb4 6555648 20971519 7207936 5 Extended
    8. /dev/vdb5 6557696 7581695 512000 8e Linux LVM
    9. /dev/vdb6 7583744 11679743 2048000 8e Linux LVM
    10. /dev/vdb7 11681792 12730367 524288 82 Linux swap / Solaris
    11.  
    12. Command (m for help): w                                 //保存退出
    13. The partition table has been altered!
    14.  
    15. Calling ioctl() to re-read partition table.
    16.  
    17. WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
    18. The kernel still uses the old table. The new table will be used at
    19. the next reboot or after you run partprobe(8) or kpartx(8)
    20. Syncing disks.                                         //提示重启

    3)刷新分区表

    1. [root@server0 ~]# partprobe /dev/vdb
    2. [root@server0 ~]# reboot

     

     

    步骤二:新建卷组、逻辑卷

    1)新建卷组datastore,指定PE大小为16Mi

    【什么是PE】https://blog.csdn.net/ck784101777/article/details/98172012

    1. [root@server0 ~]# vgcreate -s 16MiB datastore /dev/vdb6
    2. Volume group "datastore" successfully created
    3. [root@server0 ~]# vgscan                                 //确认新建的卷组
    4. Reading all physical volumes. This may take a while...
    5. Found volume group "systemvg" using metadata type lvm2
    6. Found volume group "datastore" using metadata type lvm2

    2)新建逻辑卷database,大小设置为50个PE

    指定逻辑卷大小的方式有两种,一是-L 后跟大小(M,G,KB),二是 -l 后跟PE数量

    上面创建卷组时指定一个pe大小为16m,所以这里总大小为16*50=800

    1. [root@server0 ~]# lvcreate -l 50 -n database datastore
    2. Logical volume "database" created
    3. [root@server0 ~]# lvscan                                 //确认新建的逻辑卷
    4. ACTIVE '/dev/systemvg/vo' [180.00 MiB] inherit
    5. ACTIVE '/dev/datastore/database' [800.00 MiB] inherit

     

     

    步骤三:格式化及使用逻辑卷

    1)格式化逻辑卷/dev/datastore/database

    1. [root@server0 ~]# mkfs.ext3 /dev/datastore/database
    2. .. ..
    3. Allocating group tables: done
    4. Writing inode tables: done
    5. Creating journal (4096 blocks): done
    6. Writing superblocks and filesystem accounting information: done

    2)配置开机挂载

    1. [root@server0 ~]# mkdir /mnt/database                     //创建挂载点
    2. [root@server0 ~]# vim /etc/fstab
    3. .. ..
    4. /dev/datastore/database /mnt/database ext3 defaults 0 0

    3)验证挂载配置

    1. [root@server0 ~]# mount -a
    2. [root@server0 ~]# df -hT /mnt/database/                 //确认挂载点设备
    3. Filesystem Type Size Used Avail Use% Mounted on
    4. /dev/mapper/datastore-database ext3 772M 828K 715M 1% /mnt/database

     

     

    六、扩展卷组大小,扩展逻辑卷的大小

     

    实验内容:

    本实验需要准备一张逻辑卷,大小随意,我上面的实验中创建了一个逻辑卷vo,大小180M,我将使用此逻辑卷完成实验

    1. 原文件系统中的内容必须保持完整
    2. 必要时可使用其他磁盘的分区来扩展
    3. 注意:分区大小很少能完全符合要求的大小,所以大小在270MiB和300MiB之间都是可以接受的(PE调整到1即可解决)

     

    实验前需知:

    对于已经格式化好的逻辑卷,在扩展大小以后,必须通知内核新大小,可以通过以下工具来通知内核

    2)如果此逻辑卷上的文件系统是EXT3/EXT4类型,需要使用resize2fs工具;

    3)如果此逻辑卷上的文件系统是XFS类型,需要使用xfs_growfs。

     

    实现此案例需要按照如下步骤进行。

    步骤一:确认逻辑卷vo的信息

    1)找出逻辑卷所在卷组

    查看一下有多少个逻辑卷

    1. [root@server0 ~]# lvscan
    2. ACTIVE '/dev/systemvg/vo' [180.00 MiB] inherit
    3. ACTIVE '/dev/datastore/database' [800.00 MiB] inherit

    2)查看该卷组的剩余空间是否可满足扩展需要

    终点需要关注的内容我用红色标记出来了,第一个是卷组总大小,第二个是PE大小,第三个是当前逻辑卷卷大小(用PE表示或M表示)

    此例中卷组systemvg的总大小都不够300MiB、剩余空间才16MiB,因此必须先扩展卷组。只有剩余空间足够,才可以直接扩展逻辑卷大小。

    1. [root@server0 ~]# vgdisplay systemvg
    2. --- Volume group ---
    3. VG Name systemvg
    4. System ID
    5. Format lvm2
    6. Metadata Areas 1
    7. Metadata Sequence No 2
    8. VG Access read/write
    9. VG Status resizable
    10. MAX LV 0
    11. Cur LV 1
    12. Open LV 0
    13. Max PV 0
    14. Cur PV 1
    15. Act PV 1
    16. VG Size 196.00 MiB                         //卷组总大小
    17. PE Size 4.00 MiB
    18. Total PE 49
    19. Alloc PE / Size 45 / 180.00 MiB
    20. Free PE / Size 4 / 16.00 MiB                     //剩余空间大小
    21. VG UUID czp8IJ-jihS-Ddoh-ny38-j521-5X8J-gqQfUN

     

    步骤二:扩展卷组

    1)将提前准备的分区/dev/vdb5添加到卷组systemvg

    我们要准备一个分区,可以是主分区或逻辑分区

    1. [root@server0 ~]# vgextend systemvg /dev/vdb5
    2. Physical volume "/dev/vdb5" successfully created
    3. Volume group "systemvg" successfully extended

    2)确认卷组新的大小

    1. [root@server0 ~]# vgdisplay systemvg
    2. --- Volume group ---
    3. VG Name systemvg
    4. .. ..
    5. VG Size 692.00 MiB                         //总大小已变大
    6. PE Size 4.00 MiB
    7. Total PE 173
    8. Alloc PE / Size 45 / 180.00 MiB
    9. Free PE / Size 128 / 512.00 MiB                 //剩余空间已达512MiB
    10. VG UUID czp8IJ-jihS-Ddoh-ny38-j521-5X8J-gqQfUN

     

    步骤三:扩展逻辑卷大小

    1)将逻辑卷/dev/systemvg/vo的大小调整为300MiB

    我们已经将卷组的大小扩充了,现在我们要扩展逻辑卷的大小,-L 扩容大,注意,这里的扩容是扩容到300M而不是在原基础上添加300M

    1. [root@server0 ~]# lvextend -L 300MiB /dev/systemvg/vo
    2. Extending logical volume vo to 300.00 MiB
    3. Logical volume vo successfully resized

    2)确认调整结果

    1. [root@server0 ~]# lvscan
    2. ACTIVE '/dev/systemvg/vo' [300.00 MiB] inherit
    3. ACTIVE '/dev/datastore/database' [800.00 MiB] inherit

    3)刷新文件系统大小

    确认逻辑卷vo上的文件系统类型:

    1. [root@server0 ~]# blkid /dev/systemvg/vo
    2. /dev/systemvg/vo: UUID="d4038749-74c3-4963-a267-94675082a48a" TYPE="ext4"

    选择合适的工具刷新大小:

    1. [root@server0 ~]# resize2fs /dev/systemvg/vo
    2. resize2fs 1.42.9 (28-Dec-2013)
    3. Resizing the filesystem on /dev/systemvg/vo to 307200 (1k) blocks.
    4. The filesystem on /dev/systemvg/vo is now 307200 blocks long.

    确认新大小(约等于300MiB):

    1. [root@server0 ~]# mount /dev/systemvg/vo /vo/
    2. [root@server0 ~]# df -hT /vo
    3. Filesystem Type Size Used Avail Use% Mounted on
    4. /dev/mapper/systemvg-vo ext4 287M 2.1M 266M 1% /vo
    展开全文
  • LVM逻辑卷管理

    2015-03-05 23:03:57
    介绍LVM的基本内容,并简单讲解如何进行管理和其它操作
  • Centos7 逻辑卷 物理卷 卷组 实践

    千次阅读 2019-01-25 15:20:09
    第一章: 相关概念 ...2.物理(Physical Volume,PV):指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM...

    第一章: 相关概念

    1.物理存储介质(PhysicalStorageMedia):指系统的物理存储设备==>磁盘,如:/dev/hda、/dev/sda等,是存储系统最底层的存储单元。

    2.物理卷(Physical Volume,PV):指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

    3.卷组(Volume Group,VG):是由一个或多个物理卷所组成的存储池,在卷组上能创建一个或多个逻辑卷。

    4.逻辑卷(Logical Volume,LV):类似于非LVM系统中的硬盘分区,它建立在卷组之上,是一个标准的块设备,在逻辑卷之上可以建立文件系统。

    第二章 实践与例子

    1 创建物理卷

    物理卷(Physical Volume,PV):就是指硬盘分区,也可以是整个硬盘或已创建的软RAID,是LVM的基本存储设备。在创建逻辑卷之前需要先创建物理卷,然后将多个物理卷组合创建卷组,最后在卷组的基础上创建逻辑卷。

    将空白硬盘(或者分区)加入主机,系统识别到新的硬盘sdb后,使用pvcreate对硬盘创建PV: 
    代码实现:

    # lsblk  /dev/sdb
    NAME MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    vdc  253:32   0  500G  0 disk 
    
    #fdisk /dev/sdb
    ....
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1            2048    20973567    10485760   83  Linux
    Command (m for help): t
    Selected partition 1
    Hex code (type L to list all codes): 8e           # 修改系统ID为 Linux LVM
    Changed type of partition 'Linux' to 'Linux LVM'
    
    Command (m for help): p
    
    Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0x6200a0ac
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1            2048    20973567    10485760   8e  Linux LVM
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    
    //注,如果是第一次建立的新磁盘,则应该先分区。命令顺序如下:
    
    # fdisk /dev/sdb
    >n
    然后选择p(主分区)
    >p
    然后一路回车
    >t 
    后面的命令和上面一样了。
    
    
     # 创建物理卷
    # pvcreate /dev/sdb1        
      Physical volume "/dev/sdb1" successfully created.
    # pvdisplay
      "/dev/sdb1" is a new physical volume of "10.00 GiB"
      --- NEW Physical volume ---
      PV Name               /dev/sdb1
      VG Name               
      PV Size               10.00 GiB
      Allocatable           NO
      PE Size               0   
      Total PE              0
      Free PE               0
      Allocated PE          0
      PV UUID               xT6409-MGxH-M7Dy-TvZz-Fl55-qarO-Bb1n3U



    需要注意的是,如果针对空闲分区创建PV,需要重新指定分区的系统ID。在上面的代码中Hex code (type L to list all codes): 8e指定分区的系统ID为Linux LVM。空白为分区磁盘直接使用pvcreate /dev/sdb命令,系统ID自动转成Linux LVM。

    2 创建卷组

    卷组(Volume Group,VG):是由一个或多个物理卷所组成的存储池,在卷组上能创建一个或多个逻辑卷。现在使用vgcreate命令对上文创建的PV(单个物理卷)创建卷组。 
    代码实现:

    [root@Centos7T ~]#vgcreate vg0 /dev/sdb1     # 创建卷组vg0,指定物理块PE大小10M,并将pv:/dev/sdb1加入vg0.
      Volume group "vg0" successfully created
    [root@Centos7T ~]#vgdisplay             # 查看所有卷组的信息.后面接具体卷组名,可查看指定卷组信息
      --- Volume group ---
      VG Name               vg0
      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               9.99 GiB
      PE Size               4.00 MiB
      Total PE              1023
      Alloc PE / Size       0 / 0   
      Free  PE / Size       1023 / 9.99 GiB
      VG UUID               46Z4tB-d71l-nfir-t6sB-cZPo-SBfl-eFCDIj
    [root@Centos7T ~]#pvdisplay          # 查看所当前物理卷的信息.后面可接具体物理卷设备,可查看指定物理卷信息
      --- Physical volume ---
      PV Name               /dev/sdb1
      VG Name               vg0              # 已加入卷组vg0
      PV Size               10.00 GiB / not usable 10.00 MiB
      Allocatable           yes
      PE Size               10.00 MiB        # pe大小
      Total PE              1023             # 当前物理卷的pe总数
      Free PE               1023             # 当前物理卷的未被划分逻辑卷的pe总数
      Allocated PE          0
      PV UUID               xT6409-MGxH-M7Dy-TvZz-Fl55-qarO-Bb1n3U

    3 创建逻辑卷

    逻辑卷(Logical Volume,LV):类似于非LVM系统中的硬盘分区,它建立在卷组之上,是一个标准的块设备,在逻辑卷之上可以建立文件系统。可以使用lvcreate命令创建逻辑卷 
    代码实现:

    # lvcreate -n lv0 -l 100%vg vg0     # 使用vg0的全部空间创建逻辑卷lv0
      Logical volume "lv0" created.
    # lvdisplay
      --- Logical volume ---
      LV Path                /dev/vg0/lv0
      LV Name                lv0
      VG Name                vg0
      LV UUID                zGNz6W-N4QC-m3ZF-ey3h-mP7i-gFJ3-DjGMX1
      LV Write Access        read/write
      LV Creation host, time Centos7.magedu.com, 2017-08-19 21:27:34 +0800
      LV Status              available
      # open                 0
      LV Size                9.99 GiB
      Current LE             1023
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:0

    # lsblk -f /dev/sdb
    NAME        FSTYPE      LABEL UUID                                   MOUNTPOINT
    sdb                                                                  
    └─sdb1      LVM2_member       xT6409-MGxH-M7Dy-TvZz-Fl55-qarO-Bb1n3U
      └─vg0-lv0

    此时会在/dev目录下生成一个新的设备文件:

    # ll /dev/vg0/lv0
    lrwxrwxrwx. 1 root root 7 Aug 19 21:27 /dev/vg0/lv0 -> ../dm-0     # 软链接文件

    #ll /dev/dm-0
    brw-rw----. 1 root disk 253, 0 Aug 19 21:27 /dev/dm-0

    4 创建文件系统

    在逻辑卷lv0创建完成后话需要创建文件系统并挂载到制定目录才能够使用,当然还需要将挂载信息写入/etc/fstab文件 
    代码实现:

    # mkfs.xfs /dev/vg0/lv0           # 创建文件系统
    meta-data=/dev/vg0/lv0           isize=512    agcount=4, agsize=654720 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0, sparse=0
    data     =                       bsize=4096   blocks=2618880, 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
    # lsblk /dev/sdb -f
    NAME        FSTYPE      LABEL UUID                                   MOUNTPOINT
    sdb                                                                  
    └─sdb1      LVM2_member       xT6409-MGxH-M7Dy-TvZz-Fl55-qarO-Bb1n3U
      └─vg0-lv0 xfs               549cfbaa-a6dc-4161-a765-5f55af78131a   
    # lsblk /dev/vg0/lv0 -f
    NAME    FSTYPE LABEL UUID                                 MOUNTPOINT
    vg0-lv0 xfs          549cfbaa-a6dc-4161-a765-5f55af78131a
    # mkdir /mnt/lv0 && mount /dev/vg0/lv0 /mnt/lv0     # 将逻辑卷挂载到制定目录
    [root@Centos7T ~]#df -T             # 查看挂载点
    Filesystem          Type     1K-blocks    Used Available Use% Mounted on
    /dev/sda2           xfs       52403200 4605416  47797784   9% /
    /dev/sda1           xfs        1038336  172116    866220  17% /boot
    /dev/sda5           xfs       52403200  376288  52026912   1% /app
    /dev/sr0            iso9660    8086368 8086368         0 100% /run/media/root/CentOS 7 x86_64
    /dev/mapper/vg0-lv0 xfs       10465280   32944  10432336   1% /mnt/lv0
    # blkid /dev/vg0/lv0
    /dev/vg0/lv0: UUID="549cfbaa-a6dc-4161-a765-5f55af78131a" TYPE="xfs"
    #df -T /dev/vg0/lv0
    Filesystem          Type 1K-blocks  Used Available Use% Mounted on
    /dev/mapper/vg0-lv0 xfs   10465280 32944  10432336   1% /mnt/lv0
    # echo "UUID=549cfbaa-a6dc-4161-a765-5f55af78131a /mnt/lv0                 xfs    defaults        0 0" >> /etc/fstab
    # cat /etc/fstab | egrep "UUID"
    UUID=806ef114-dff2-4c17-aff7-c95bc67faf40 /                       xfs     defaults        0 0
    UUID=3df87bb6-2f6f-4d3f-af94-5ec47d2a9796 /app                    xfs     defaults        0 0
    UUID=1e7ba91a-85c8-442b-b105-bc61c00ddbee /boot                   xfs     defaults        0 0
    UUID=cc0e9678-d369-4bb9-9039-fd2f322df8b4 swap                    swap    defaults        0 0
    UUID=549cfbaa-a6dc-4161-a765-5f55af78131a /mnt/lv0                 xfs    defaults        0 0

    至此,逻辑卷创建完毕并可投入使用。

    5 扩展逻辑卷

    任何分区在使用过程中难免会遇到空间不足的情况,逻辑卷也不例外。但我们可以很方便的多逻辑卷进行扩展,不论是使用新的空白磁盘还是已有的空白分区。其大致实现原理为:对空白分区创建物理卷,然后将物理卷加入到需要扩展逻辑卷所在的卷组,最后扩大逻辑卷空间。如果逻辑卷所在的卷组还有空闲的空间(PE)可被使用且足够大,则甚至不需要另外的分区或者磁盘。本文还是以新的分区为例扩展逻辑卷lv0. 
    代码实现: 
    修改系统ID并创建PV

    [root@Centos7T ~]#lsblk -f /dev/sdc
    NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
    sdc                                                      
    └─sdc1 xfs          6ef26358-ce07-4b0c-b28b-07caa90838bd
    [root@Centos7T ~]#fdisk /dev/sdc
    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.


    Command (m for help): p

    Disk /dev/sdc: 32.2 GB, 32212254720 bytes, 62914560 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0xe20e9d16

       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1            2048    62914559    31456256   83  Linux

    Command (m for help): t
    Selected partition 1
    Hex code (type L to list all codes): 8e
    Changed type of partition 'Linux' to 'Linux LVM'

    Command (m for help): p

    Disk /dev/sdc: 32.2 GB, 32212254720 bytes, 62914560 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0xe20e9d16

       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1            2048    62914559    31456256   8e  Linux LVM

    Command (m for help): w
    The partition table has been altered!

    Calling ioctl() to re-read partition table.
    Syncing disks.
    [root@Centos7T ~]#pvcreate /dev/sdc1          # 在指定分区上创建物理卷
    WARNING: xfs signature detected on /dev/sdc1 at offset 0. Wipe it? [y/n]: y
      Wiping xfs signature on /dev/sdc1.
      Physical volume "/dev/sdc1" successfully created.
    [root@Centos7T ~]#pvs
      PV         VG  Fmt  Attr PSize  PFree
      /dev/sdb1  vg0 lvm2 a--   9.99g     0
      /dev/sdc1      lvm2 ---  30.00g 30.00g

    将PV加入到指定VG

    [root@Centos7T ~]#vgextend vg0 /dev/sdc1          # 将物理卷加入已有的卷组
      Volume group "vg0" successfully extended
    [root@Centos7T ~]#vgs
      VG  #PV #LV #SN Attr   VSize  VFree
      vg0   2   1   0 wz--n- 39.98g 29.99g            # VFREE为30G,即为新增物理卷的空间
    [root@Centos7T ~]#pvdisplay /dev/sdc1
      --- Physical volume ---
      PV Name               /dev/sdc1
      VG Name               vg0
      PV Size               30.00 GiB / not usable 9.00 MiB
      Allocatable           yes
      PE Size               10.00 MiB
      Total PE              3071
      Free PE               3071
      Allocated PE          0
      PV UUID               Ez6ZFl-xjWR-gQHp-O3Yj-vTza-2OCE-h7Jccy

    可知,将新建的PV加入到vg0后,vg0也有了30G的可用空间。同时/dev/sdc1的PE大小自动与/dev/sdb1同步为10M。 
    扩展逻辑卷LV

    [root@Centos7T ~]#lvs
      LV   VG  Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      lv0  vg0 -wi-ao---- 9.99g                                                    

    [root@Centos7T ~]#lvextend -l 100%free /dev/vg0/lv0      # 扩展逻辑卷,使用卷组的全部可用空间
      Size of logical volume vg0/lv0 changed from 9.99 GiB (1023 extents) to 29.99 GiB (3071 extents).
      Logical volume vg0/lv0 successfully resized.
    [root@Centos7T ~]#lvs
      LV   VG  Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      lv0  vg0 -wi-ao---- 29.99g                                       
    [root@Centos7T ~]#lvdisplay
      --- Logical volume ---
      LV Path                /dev/vg0/lv0
      LV Name                lv0
      VG Name                vg0
      LV UUID                zGNz6W-N4QC-m3ZF-ey3h-mP7i-gFJ3-DjGMX1
      LV Write Access        read/write
      LV Creation host, time Centos7.magedu.com, 2017-08-19 21:27:34 +0800
      LV Status              available
      # open                 1
      LV Size                29.99 GiB
      Current LE             3071
      Segments               2
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:0

    [root@Centos7T ~]#lsblk -f /dev/sd{b,c}
    NAME        FSTYPE      LABEL UUID                                   MOUNTPOINT
    sdb                                                                  
    └─sdb1      LVM2_member       xT6409-MGxH-M7Dy-TvZz-Fl55-qarO-Bb1n3U
      └─vg0-lv0 xfs               549cfbaa-a6dc-4161-a765-5f55af78131a   /mnt/lv0
    sdc                                                                  
    └─sdc1      LVM2_member       Ez6ZFl-xjWR-gQHp-O3Yj-vTza-2OCE-h7Jccy
      └─vg0-lv0 xfs               549cfbaa-a6dc-4161-a765-5f55af78131a   /mnt/lv0

    逻辑卷扩展成功。

    5 删除逻辑卷

    本文由于更多是演示,删除逻辑卷会卷组、物理卷一并彻底删除。但实际生产中可能只是单独删除逻辑卷,卷组、物理卷还会保留。当然,实际生产中很少需要删除逻辑卷。在删除逻辑卷之前,所有有用的资料都需要备份转移。 
    代码实现:

    [root@Centos7T ~]#sed -i '/lv0/d' /etc/fstab && umount /mnt/lv0/      # 删除配置信息
    [root@Centos7T ~]#cat /etc/fstab | egrep "UUID"
    UUID=806ef114-dff2-4c17-aff7-c95bc67faf40 /                       xfs     defaults        0 0
    UUID=3df87bb6-2f6f-4d3f-af94-5ec47d2a9796 /app                    xfs     defaults        0 0
    UUID=1e7ba91a-85c8-442b-b105-bc61c00ddbee /boot                   xfs     defaults        0 0
    UUID=cc0e9678-d369-4bb9-9039-fd2f322df8b4 swap                    swap    defaults        0 0
    [root@Centos7T ~]#df -T
    Filesystem     Type     1K-blocks    Used Available Use% Mounted on
    /dev/sda2      xfs       52403200 4605388  47797812   9% /
    /dev/sda1      xfs        1038336  172116    866220  17% /boot
    /dev/sda5      xfs       52403200  376288  52026912   1% /app
    /dev/sr0       iso9660    8086368 8086368         0 100% /run/media/root/CentOS 7 x86_64
    [root@Centos7T ~]#lvs
      LV   VG  Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      lv0  vg0 -wi-a----- 29.99g
    [root@Centos7T ~]#lvremove /dev/vg0/lv0         # 移除逻辑卷
    Do you really want to remove active logical volume vg0/lv0? [y/n]: y
      Logical volume "lv0" successfully removed
    [root@Centos7T ~]#lvs
    [root@Centos7T ~]#vgs
      VG  #PV #LV #SN Attr   VSize  VFree
      vg0   2   0   0 wz--n- 39.98g 39.98g
    [root@Centos7T ~]#vgremove vg0                  # # 移除卷组
      Volume group "vg0" successfully removed
    [root@Centos7T ~]#vgs
    [root@Centos7T ~]#pvs
      PV         VG Fmt  Attr PSize  PFree
      /dev/sdb1     lvm2 ---  10.00g 10.00g
      /dev/sdc1     lvm2 ---  30.00g 30.00g
    [root@Centos7T ~]#pvremove /dev/sdb1 /dev/sdc1      # 移除物理卷
      Labels on physical volume "/dev/sdb1" successfully wiped.
      Labels on physical volume "/dev/sdc1" successfully wiped.
    [root@Centos7T ~]#pvs
    [root@Centos7T ~]#lsblk -f /dev/sd{b,c}
    NAME   FSTYPE      LABEL UUID                                   MOUNTPOINT
    sdb                                                             
    └─sdb1                                                          
    sdc                                                             
    └─sdc1 LVM2_member       Ez6ZFl-xjWR-gQHp-O3Yj-vTza-2OCE-h7Jccy

    至此,逻辑卷删除完成。当然,/dev/sdc1显示LVM2_member(实际上sdb1也是的),这是由于我们前面将/dev/sdc1的系统ID改为8e导致的,重新将系统ID改回83即可。
     

    展开全文
  • CentOS 7.2采用LVM管理逻辑卷时,可实现在线扩展逻辑卷。本文为没有lvm使用经验的同学提供了一个实际操作扩展逻辑卷的案例。文中详细列出了通过LVM扩展逻辑卷的步骤,并对各条命令进行了解释,提供了详细的界面操作...
  • 创建LVM分区 (1)利用fdisk命令在/dev/sdb上建立LVM类型的分区,如下所示: 利用同样的方法创建LVM类型的分区/dev/sdb2、/dev/sdb3和/dev/sdb4。
  • 1、物理设备是用于保留逻辑卷中所存储数据的存储设备。它们是块设备,可以是磁盘分区、整个磁盘、RAID阵列或SAN磁盘。设备必须初始化为LVM物理卷,才能与LVM结合使用。整个“设备”将用作一个物理卷。 2、物理卷...
  • 文档中包含在Linux系统中创建逻辑卷管理(LVM)相关的命令和逻辑卷基础知识。
  • 针对生产一线在线扩容的需求,对磁盘进行扩容。Linux使用LVM(逻辑卷)管理方法进行扩容,有需要的进行查看。刚写文章,弄的不好,请小伙伴多多提建议进行改进
  • linux分区之逻辑卷

    2016-03-09 16:14:55
    linux分区之逻辑卷,详细讲解了linux分区的概念,并以逻辑卷为重点,举例演示了逻辑卷的创建、合并、删除等等实例。
  • LVM(Logicl Volume Manager),逻辑卷管理器,通过使用逻辑卷管理器对硬盘存储设备进行管理,可以实现硬盘空间的动态划分和调整。文中介绍了LVM的一般操作过程及常用命令。
  • Linux逻辑卷

    千次阅读 2018-11-14 23:51:46
    一、什么是逻辑卷 磁盘一经分区之后,再想改变磁盘中这个分区的大小就很难了。假如当这个磁盘的空间不够用了,是没有办法扩大这个分区的。所以使用逻辑卷。 什么是逻辑卷? 物理卷(pv):物理磁盘分区。在进行...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 95,786
精华内容 38,314
关键字:

逻辑卷