• CentOS 6.7 配置LVM (逻辑卷管理)


    LVM 简介

    LVM是逻辑盘卷组管理 (Logical Volume Manager) 的简称. LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性,在一定程度上解决普通磁盘分区带来空间不够使用的问题.

    逻辑卷组管理概念

    PV (Physical Volume) - 物理卷   

    物理卷在逻辑卷管理中的最低层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘或者raid设备

    VG (Volume Group) - 卷组

    卷组建立在物理卷之上,一个卷组至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中.一个逻辑卷管理系统工程中可以只有一个卷组,也可以有多个卷组.

    LV (Logical Volume) - 逻辑卷

    逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立以后可以动态地扩展和缩小空间.

    LVM关系图如下:

    wps7D77.tmp

    准备配置LVM

    实验系统的版本为 CentOS6.7

    首先检测系统中是否安装了 LVM管理工具

    wps7DC6.tmp

    在虚拟机中添加一块磁盘,作为练习LVM的专用硬盘

    wps7EE0.tmp

    继续在 /dev/sdb 硬盘上创建三个分区,类型为 Linux LVM. 可以

    wps7F0F.tmp

    {通过 t 命令 , 将指定分区分区调整为 8e (lvm)}

    wps7F10.tmp

    开始创建 PV

    # pvcreate /dev/sdb{5,6}  

    wps7F11.tmp

    创建完成后可以通过 # pvs #pvscan 查看简略信息  #pvdisplay 查看详细信息

    # pvs

    wps7F22.tmp

    # pvscan

    wps7F23.tmp

    # pvdisplay

    wps7F24.tmp

    创建 VG 卷组

    创建名称为 myvg , 将 /dev/sdb5,/dev/sdb6 组合为一个

    wps7F25.tmp

    创建 vg 卷组后也可以通过 # vgs # vgscan 查看简略信息  # vgdisplay 查看详细信息

    # vgs

    wps7F36.tmp

    # vgscan

    wps7F37.tmp

    # vgdisplay

    wps7F47.tmp

    创建 LV 卷组

    # lvcreate –L 50M –n testlv myvg

    在 myvg 卷组中,创建一个名称为 testlv 的逻辑卷组,大小为 50M

    wps7F67.tmp

    # mkfs.ext4 /dev/myvg/testlv

    将 /dev/myvg/testlv 格式化为 ext4 格式

    wps7F68.tmp

    # mount /dev/myvg/testlv  

    格式化完成后,将 /dev/myvg/testlv 挂载,并查看

    wps7F69.tmp

    # df –Th

    wps7F6A.tmp

    # vim /etc/fstab

    将 testlv 设置为开机自动挂载

    wps7F6B.tmp

    LV 的扩容

    # df –lh   查看当前逻辑卷的大小为 47M , 需要扩展空间到 1G

    wps7F7C.tmp

    首先扩展物理边界

    在扩展 lv 之前,需要先确定 vg 有足够的空间

    # vgs  查看当前 vg 的大小,可用

    wps7F7D.tmp

    # lvextend –L 1G /dev/myvg/testlv

    -L 1G 表示为将 /dev/myvg/testlv 扩展到 1G  

    -L +1G 表示为将 /dev/myvg/testlv 添加 1G 的空间

    wps7F8E.tmp

    # lvs   查看 testlv 大小,物理边界扩展成功,此时若通过 # df –lh 命令查看  /dev/myvg/testlv , 会发现大小没有改变 , 所以还需要对文件系统进行扩容 (扩展逻辑边界)

    wps7F9E.tmp

    继续扩展逻辑边界

    # resize2fs –p /dev/myvg/testlv 

    wps7F9F.tmp

    # df –lh  查看 /dev/myvg/testlv 的大小 , 扩展完成

    wps7FA0.tmp

    LV 的缩减

    # df –lh

    首先需要查看将要缩减的 lv , 已经使用了多少空间 . 要确定缩减后的空间大于已经使用的空间

    wps7FA1.tmp

    # umount /mnt

    缩减 lv 需要离线操作 , 则卸载

    wps7FB2.tmp

    # e2fsck –f /dev/myvg/testlv

    强制检测文件系统的完整性

    wps7FC2.tmp

    # resize2fs /dev/myvg/testlv 30M

    将 /dev/myvg/testlv 缩减至 30M

    wps7FC3.tmp

    # lvreduce –L 30M /dev/myvg/testlv

    两个步骤的缩减大小必须保持一致.  -L 30M 表示将 testlv 缩减至30M. –L –30M 表示将 testlv 缩减 30M 的空间

    wps7FC4.tmp

    # mount /dev/myvg/testlv  挂载完成后,查看 testlv 的大小

    wps7FC5.tmp

    VG 的缩减

    # pvs   

    wps7FC6.tmp

    # umount /mnt   缩减 vg 的大小需要先卸载

    wps7FC7.tmp

    # pvmove  缩减 vg 就是移除 pv 的过程 , 需要提前将要移除的 pv 上的数据移动

    如下图,将要移除 /dev/sdb5,那么先执行 pvmove /dev/sdb5 命令,将sdb5硬盘上的数据移动

    wps7FD8.tmp

    # vgreduce myvg /dev/sdb5

    从 myvg 中挪走 /dev/sdb5 , 并且查看 /dev/sdb5 已经不属于 myvg 卷组

    wps7FD9.tmp

    # pvremove /dev/sdb5

    将 /dev/sdb5 彻底移除

    wps7FDA.tmp

    VG 的扩容

    # pvs

    在当前系统中在添加一个 pv

    wps7FDB.tmp

    # pvcreate /dev/sdb7

    将 /dev/sdb7 设置为 pv

    wps7FDC.tmp

    # vgextend myvg /dev/sdb7

    wps7FDD.tmp

    # pvs

    通过 pvs 查看 , 添加成功

    wps7FDE.tmp

    创建快照卷  (可以在线创建,无需卸载)

    lvcreate

         -s  : 指明为创建快照卷

         -p : 指明权限 r | w

    注意 : 

    1. 生命周期为整个数据时长 : 在这段时长内,数据的增长不能超出快照卷大小.

    2. 快照卷应该是只读的.

    3. 跟原卷在同一卷组内.

    当前挂载挂载后目录的内容如下

    wps7FDF.tmp

    wps7FF0.tmp

    # lvcreate –L 50M –n testsnap –s –p r /dev/myvg/testlv

    -L 50 M   指定快照大小最多为 50M

    -s   指明为创建快照

    -p r    指定为快照权限为 只读

    -n    指定创建的快照名称为 testsnap

    wps7FF1.tmp

    # lvs       查看刚才创建的快照

    wps7FF2.tmp

    在 /mnt 目录下创建 a b c 三个文件

    wps7FF3.tmp

    # mount /dev/myvg/testsnap /tmp

    将刚才创建的快照挂载到 /tmp 目录下查看,并没有后来创建的 a b c 三个文件,因为a b c文件是创建快照卷以后touch的

    wps7FF4.tmp

    # tar –zcf /root/testsnap.tar.gz *  

    将创建的快照挂载后,在挂载目录中所有文件打包备份

    wps7FF5.tmp

    # umount /tmp    # lvremove /dev/myvg/testsnap

    卸载已经挂载的快照,并将其删除

    wps7FF6.tmp

    # rm –rf *

    将 /mnt 下的所有文件删除,准备恢复数据

    wps7FF7.tmp

    # tar /root/testsnap.tar.gz –C /mnt

    将备份好的数据指定路径,解压到 /mnt 下

    wps7FF8.tmp

    当原数据大于创建快照时指定的快照大小时,快照将会彻底失效.

  • 相关阅读:
    Codeforces ECR 83 C. Adding Powers (位运算)
    Codeforces Round #636div3 D. Constant Palindrome Sum (划分区间,差分)
    Codeforces Round #603 C. Everyone is a Winner!
    Centos7 下搭建SVN + Apache 服务器 风行天下
    完整部署CentOS7.2+OpenStack+kvm 云平台环境(1)基础环境搭建 风行天下
    云计算的理解 风行天下
    Python之路3【知识点】白话Python编码和文件操作 风行天下
    C#中TreeView组件使用方法初步
    复制文件时explorer.exe出错解决方法
    C# 里TreeView绑定数据库实现分类
  • 原文地址:https://www.cnblogs.com/wcwen1990/p/6656259.html
Copyright © 2020-2023  润新知