• LVM基本管理


    LVM 是什么

    LVM 全称 Logical Volume Manager 是一个基于Linux内核开放的逻辑卷管理器,用来管理磁盘等存储设备。

    LVM 通过将底层的物理磁盘抽象封装,然后以逻辑卷的形式呈现给上层应用。在传统的磁盘管理机制中,文件系统直接挂载到磁盘分区上,无法跨磁盘创建文件系统。而LVM作为中间层,将文件系统和物理磁盘解耦,使得文件系统无需关注具体的物理磁盘,从而可以跨越物理磁盘的限制。

    图1:LVM示意图

    LVM 的优缺点

    优点:

    • 可以动态扩展文件系统的大小;
    • 文件系统可以跨硬盘;

    缺点:

    • 一块物理磁盘的损坏会影响整个卷组;
    • 存储性能收到一定影响;

    LVM 中的基本概念

    Physical Volume 物理卷 (PV)

    Unix块设备节点,可用作LVM的存储。例如:一个硬盘,一个MBR或GPT分区,一个环回文件,一个设备映射设备(例如dm-crypt)。它承载一个LVM头。

    Volume Group 卷组(VG)

    一组PV,用作LV的容器。从VG为LV分配PEs。

    Logical Volume 逻辑卷(LV)

    “虚拟/逻辑分区”,它存在于VG中,由PEs组成。LVs是类似于物理分区的Unix块设备,例如,它们可以直接用文件系统进行格式化。

    Physical Extent 物理区段(PE)

    可以分配给LV的PV中最小的连续区段(默认为4MB)。可以将PEs看作PV的一部分,可以分配给任何LV。

    常用命令概述

     

     查看显示类命令

    pvs,vgs,lvs,pvdisplay,vgdisplay,lvdisplay

    这类命令最常用,在做所有操作之前,都要先通过这类命令查看现状,这类命令直接执行即可,一般不需要加参数。s是查看简单信息,display是查看详细信息。

    创建扩展类命令

    安装操作系统时如果选择使用LVM分区的话,会有创建好的PV、VG、LV,常用的操作就是创建PV,加入现有VG,然后创建新的LV或者扩展现有LV。

    # pvcreate /dev/sdb1
    创建PV;其中/dev/sdb1可以是分区也可以是磁盘

    # vgcreate data-vg /dev/sdb1
    创建VG;其中data-vg是要创建的VG,/dev/sdb1是要加入该VG的PV

    # vgextend centos-vg /dev/sdb1
    扩展VG;其中centos-vg是要扩展的VG,/dev/sdb1是要加入该VG的PV

    # lvcreate -L 100G -n data_lv centos-vg
    创建LV;其中100G为LV大小,data_lv为LV名称,centos-vg为LV所在VG

    # lvextend -L 100G /dev/centos-vg/home_lv
    扩展LV;其中100G表示扩展到100G,也可以通过+100G表示增加100G,/dev/centos-vg/home_lv为需要扩展的LV,此时不能也不需要指定VG,只能在原VG上进行扩展,如果VG剩余空间不足,应首先扩展VG

    缩减命令很少使用,项目上尽量避免。需要注意的是,xfs格式不能进行缩减操作

    基本操作

     

    图2:基本操作流程图

     需要注意的点:

    1.如果是新建分区来创建PV,那么在创建完分区后需要重读分区表来让系统识别到新创建的分区。具体命令如下:

    # partprobe

     2.扩展LV时的-L参数后面指定的参数表示扩展到,如果想实现增加多少的效果,需要在数字前加符号“+”

     3./etc/fstab是操作系统启动时的关键文件,该文件的编辑一定要谨慎,必须保证正确性,出错会导致操作系统无法正常启动。

    基本操作示例:

    对新增加的磁盘分区(当然也可以不分区,将整个硬盘创建PV)
    # fdisk /dev/sdc

    将分区sdc1创建PV
    # pvcreate /dev/sdc1

    查看创建的PV信息
    # pvs

    将新创建的PV加入到现有的VG centos-vg中
    # vgextend centos-vg /dev/sdc1

    查看VG信息
    # vgs
    此时剩余空间应该已经增加了PV提供的大小

    扩展现有LV,增加100G容量
    # lvextend -L +100G /dev/centos-vg/home_lv

    扩展文件系统
    xfs_growfs 针对xfs格式,只支持增大
    resize2fs 针对ext2/ext3/ext4格式,增大减小都可以
    # xfs_growfs /dev/centos-vg/home_lv

    创建新LV
    # lvcreate -L 100G -n data_lv centos-vg

    格式化LV
    # mkfs.xfs /dev/centos-vg/data_lv
    # mkfs.ext4 /dev/centos-vg/data_lv
    根据需要将LV格式化成指定的格式

    挂载到文件系统
    # mount /dev/centos-vg/data_lv /data/

    查看挂载情况
    # df -h

    配置/etc/fstab
    # vi /etc/fstab
    /dev/centos-vg/data_lv /data        xfs     defaults        0 0
    配置完成后,可以将新增加的挂载点卸载,然后使用mount -a通过该配置文件进行全部挂载,以检验新增加配置的正确性

     swap分区的调整

    调整 swap lv 大小为 32G
    # swapoff /dev/mapper/centos-swap
    # lvresize -L 32G /dev/mapper/centos-swap
    # mkswap /dev/mapper/centos-swap
    # swapon /dev/mapper/centos-swap
    # free -g
  • 相关阅读:
    MFC画图(画线、画矩形、画刷画笔的使用)
    VC保证应用程序只有一个实例在运行
    MFC字体(一)(控件文字字体)
    获得当前程序路径
    CDC,CPaintDC,CClientDC,CWindowDC
    vc写csv文件
    【MFC学习】之CFileDialog
    MFC集合类的使用
    MFC字体(二)(控件字体颜色)
    键盘事件响应
  • 原文地址:https://www.cnblogs.com/rayso/p/12167587.html
Copyright © 2020-2023  润新知