zoukankan      html  css  js  c++  java
  • Linux LVM 逻辑分区

    LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,它由Heinz Mauelshagen在Linux 2.4内核上实现。
    普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。而遇到出现某个分区空间耗尽时,解决的方法通常是使用符号链接,或者使用调整分区大小的工具,但这只是暂时解决办法,没有从根本上解决问题。随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小。

    LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的存储卷,在存储卷上建立文件系统。

    一、LVM 相关名词解释:

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

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

    3、卷组(Volume Group,VG)
    类似于非LVM系统中的物理磁盘,其由一个或多个物理卷PV组成。可以在卷组上创建一个或多个LV(逻辑卷)。

    4、逻辑卷(Logical Volume,LV)
    类似于非LVM系统中的磁盘分区,逻辑卷建立在卷组VG之上。在逻辑卷LV之上可以建立文件系统(比如/home或者/usr等)。

    5、物理块(Physical Extent,PE)
    每一个物理卷PV被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。所以物理卷(PV)由大小等同的基本单元PE组成。

    二、创建一个LVM系统;

    1、创建分区
    使用分区工具(如:fdisk等)创建LVM分区,方法和创建其他一般分区的方式是一样的,区别仅仅是LVM的分区类型为8e。

    2、创建物理卷
    创建物理卷的命令为pvcreate,利用该命令将希望添加到卷组的所有分区或者磁盘创建为物理卷。
    将整个磁盘创建为物理卷的:

    # pvcreate /dev/sdb

    将单个分区创建为物理卷的:

    # pvcreate /dev/hda5

    3、创建卷组
    创建卷组  vgcreate,
    将使用 pvcreate 建立的物理卷创建为一个完整的卷组:

    # vgcreate web_data /dev/hda5 /dev/sdb

    vgcreate
    第一个参数是指定该卷组的逻辑名:web_data
    后面参数是指定希望添加到该卷组的所有分区和磁盘。

    vgcreate 在创建卷组web_data以外,还设置使用大小为4MB的PE(默认为4MB),这表示卷组上创建的所有逻辑卷都以4MB为增量单位来进行扩充或缩减。由于内核原因,PE大小决定了逻辑卷的最大大小,4MB的PE决定了单个逻辑卷最大容量为256GB,若希望使用大于256G的逻辑卷则创建卷组时指定更大的PE。PE大小范围为8KB到512MB,并且必须总是2的倍数(使用-s指定,具体请参考manvgcreate)。(centos 6.2系统已发现没有这种限制)

    4、激活卷组
    为了立即使用卷组而不是重新启动系统,可以使用vgchange来激活卷组:

    # vgchange -ay web_data

    5、添加新的物理卷到卷组中
    当系统安装了新的磁盘并创建了新的物理卷,而要将其添加到已有卷组时,就需要使用vgextend命令:

    # vgextend web_data /dev/hdc1

    /dev/hdc1 表示是新的物理卷。

    6、从卷组中删除一个物理卷
    要从一个卷组中删除一个物理卷,首先要确认要删除的物理卷没有被任何逻辑卷正在使用,就要使用pvdisplay命令察看一个该物理卷信息:
    如果某个物理卷正在被逻辑卷所使用,就需要将该物理卷的数据备份到其他地方,然后再删除。删除物理卷的命令为vgreduce:

    # vgreduce web_data /dev/hda1

    7、创建逻辑卷
    创建逻辑卷的命令为 lvcreate

    # lvcreate -L 500 -n test web_data

    该命令就在卷组web_data上 创建名字为test
    -L 大小为 500M (大小格式还有 G)
    并且设备入口为 /dev/web_data/test(web_data为卷组名,test为逻辑卷名)。

    如果希望创建一个使用全部卷组的逻辑卷,则需 要首先察看该卷组的PE数,然后在创建逻辑卷时指定:

    # vgdisplay web_data | grep "TotalPE"
    TotalPE45230
    # lvcreate -l45230 web_data -n test

    8、加载文件系统格式

    mkfs.ext4 /dev/web_data/test
    或者:
    mkfs -t ext4 /dev/web_data/test

    resize2fs 针对的是ext2、ext3、ext4 文件系统
    xfs_growfs 针对的是 xfs 文件系统

    扩展增大减小 逻辑卷:

    ext2/ext3/ext4 文件系统的调整命令是resize2fs(增大和减小都支持)
    
    lvextend
    -L 100G /dev/web_data/test //增大至100G lvextend -L +20G /dev/web_data/test //增加20G lvreduce -L 50G /dev/web_data/test //减小至50G lvreduce -L -20G /dev/web_data/test //减小20G resize2fs /dev/web_data/test //执行调整 xfs 文件系统的调整命令是xfs_growfs(只支持增大)
    lvextend
    -L 100G /dev/web_data/test //增大至100G lvextend -L +20G /dev/web_data/test //增加20G xfs_growfs /dev/web_data/test //执行调整

    创建挂载目录

    #mkdir /data/wwwroot
    #mount /dev/web_data/test /data/wwwroot
    
    如果希望系统启动时自动加载文件系统
    编辑 /etc/fstab 添加: /dev/web_data/test /data/wwwroot ext4 defaults 1 2

    9、删除一个逻辑卷
    删除逻辑卷以前首先需要将其卸载,然后 lvremove 删除:

    取消挂载
    # umount /dev/web_data/test 移除逻辑卷 # lvremove /dev/web_data/test
  • 相关阅读:
    MongoDB Java 学习笔记 (Java操作MongoDB)
    SQL中CONVERT转化函数的用法
    C# winform滚动字幕
    修改msconfig->引导->高级选项-》最大内存为512M
    把CheckedListBoxControl设置为单选框
    base.AutoScaleMode = AutoScaleMode.Font; 方法“InitializeComponent”内的代码由设计器生成,不应手动修改。请移除任何更改,然后尝试重新打开设计器”。
    winform 上传文件
    C#winform MDI子窗体打开时内容显示不全
    C# 网页信息采集(数据访问)
    RTO & RPO
  • 原文地址:https://www.cnblogs.com/sharesdk/p/10185994.html
Copyright © 2011-2022 走看看