Linux LVM扩容

作者: SkTj | 来源:发表于2018-10-25 10:35 被阅读0次

    linux下 lvm 磁盘扩容

    打算给系统装一个oracle,发现磁盘空间不足。在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区。为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这样做。

    参于LVM基本介绍与常用命令请参考:http://www.cnblogs.com/jackruicao/p/6258812.html

    image

    LVM结构图

    扩容之前的磁盘状况

    [root@localhost ~]# df -h

    文件系统 容量 已用 可用已用%%挂载点

    /dev/mapper/VolGroup-lv_root 5.3G 2.5G 2.6G 50% /

    tmpfs 538M 0 538M 0% /dev/shm

    /dev/sda1 485M 30M 430M 7% /boot

    [root@localhost ~]# fdisk -l

    Disk /dev/sda: 8589 MB, 8589934592 bytes

    ...............

    Device Boot Start End Blocks Id System

    /dev/sda1 * 1 64 512000 83 Linux

    Partition 1 does not end on cylinder boundary.

    /dev/sda2 64 1045 7875584 8e Linux LVM

    Disk /dev/mapper/VolGroup-lv_root: 5779 MB, 5779750912 bytes

    ........

    Disk /dev/mapper/VolGroup-lv_swap: 2281 MB, 2281701376 bytes

    .........

    此次扩容的方案为:

    1、加1个5G的空间给/

    2、加1个10G的空间给/oracle

    (一) ****在****VM****中加一个****15G****的磁盘

    image

    重启后#fdisk –l可以看到新的磁盘已经认出来了。

    Disk /dev/sdb: 16.1 GB, 16106127360 bytes

    ............................

    Disk /dev/sdb doesn't contain a valid partition table

    (二)创建物理卷****(PV)

    pvcreate /dev/sdb

    查看系统PV的情况:

    [root@localhost ~]# pvdisplay

    --- Physical volume ---

    PV Name /dev/sda2 //原有硬盘上的PV

    **VG Name ** VolGroup

    PV Size 7.51 GiB / not usable 3.00 MiB

    Allocatable yes (but full)

    PE Size 4.00 MiB

    Total PE 1922

    Free PE 0

    Allocated PE 1922

    PV UUID SGH1dY-4tp2-Nr1a-w93Z-V4LA-pQBh-VGzzTH

    "/dev/sdb" is a new physical volume of "15.00 GiB"

    --- NEW Physical volume ---

    PV Name /dev/sdb

    **VG Name ** //新建的PV的VG name是空的,下一步就是把PV加入VG

    PV Size ** 15.00 GiB**

    Allocatable NO

    PE Size 0

    Total PE 0

    Free PE 0

    Allocated PE 0

    PV UUID 8TZUlz-YyUp-RBvf-lSzm-7MgG-DSZS-qNqX1Z

    查看原VG的情况

    [root@localhost ~]# vgdisplay

    --- Volume group ---

    VG Name VolGroup //注意记录此名字,扩容时将新的pv加入指定的名字

    System ID

    Format lvm2

    Metadata Areas 1

    Metadata Sequence No 3

    VG Access read/write

    VG Status resizable

    MAX LV 0

    Cur LV 2

    Open LV 2

    Max PV 0

    Cur PV 1

    Act PV 1

    VG Size 7.51 GiB

    PE Size 4.00 MiB

    Total PE 1922

    AllocPE / Size 1922 / 7.51 GiB

    Free PE / Size 0 / 0

    VG UUID FnUsmX-s284-GeRK-hJNJ-BbIG-Vpe7-OuFZE1

    (三)****#****扩展卷组****,****将****/dev/sdb****物理卷添加到****VolGroup****卷组中

    [root@localhost ~]# vgextend VolGroup /dev/sdb

    Volume group "VolGroup" successfully extended

    再查看VG情况,可以看到VG大小变化,空余空间。

    [root@localhost ~]# vgdisplay

    --- Volume group ---

    VG Name VolGroup

    System ID

    Format lvm2

    Metadata Areas 2

    Metadata Sequence No 4

    VG Access read/write

    VG Status resizable

    MAX LV 0

    Cur LV 2

    Open LV 2

    Max PV 0

    Cur PV 2

    Act PV 2

    VG Size 22.50 GiB

    PE Size 4.00 MiB

    Total PE 5761

    AllocPE / Size 1922 / 7.51 GiB

    Free PE / Size 3839 / 15.00 GiB

    VG UUID FnUsmX-s284-GeRK-hJNJ-BbIG-Vpe7-OuFZE1

    (四)将新的****VG****空间划入****LV****(扩容****lv_root****)

    直接扩展5G给/root分区,不用umount,也不需要重启

    lvextend -L +5G /dev/mapper/VolGroup-lv_root

    Extending logical volume lv_root to 10.38 GiB

    Logical volume lv_root successfully resized

    也可以使用命令

    lvextend -l +30%FREE /dev/mapper/VolGroup-lv_root

    此时,如果有df命令查看的话,会发现root空间并没有增加的.还需要执行以下两步操作才可以.

    #****检查/root****逻辑卷

    e2fsck -f /dev/mapper/VolGroup-lv_root

    #****重新定义分区大小

    resize2fs /dev/mapper/VolGroup-lv_root

    image

    查看/目录大小

    image

    可以看到/目录已经从原来的5.3G扩容到了11G。

    (五)****LV****卷空间分配(新增****lv_oracle****)

    在VG中还有新增的10G没有用,可以将VG中的空余空间划分为LV,并将新的LV挂载在目录下。

    vgs

    VG #PV #LV #SN Attr VSize VFree

    VolGroup 2 2 0 wz--n- 22.50g10.00g

    //可以通过#vgs命令查看vg信息统计,可以看到VFree还有10G。

    将VG空余的空间化分为LV

    #lvcreate -L 10G -n lv_oracle VolGroup

    image

    图四

    //****少了一点点空间…

    //****可以用-l 分,它是按pv块数来分的。一个pv默认是4M,可是从vgdisplay中去查vg中还剩多少pv以及总数是多少。

    image

    图五

    //****查到剩余2559个PE,于是执行

    # lvcreate -l 2559 -n lv_oracle VolGroup

    Logical volume "lv_oracle" created

    提示创建成功后,用vgs和lvs命令分别查看。

    image

    图六

    (五)挂载LV到目录下

    接下来就是要把lv_oracle挂到/oracle,目录下

    cd /

    mkdir oracle

    chmod 777 /oracle

    创建/oracle目录并修改权限

    # vi /etc/fstab

    可以看到目前挂载分区的情况

    image

    图七

    //我们可以参照/的分区把oracle的加上去。加入这行:

    /dev/mapper/VolGroup-lv_oracle /oracle ext4 defaults 0 0

    然后把lv_oracle格式化成ext4

    #mkfs.ext4 /dev/mapper/VolGroup-lv_oracle

    image

    图八

    将lv_oracle mount到目录/oracle上

    mount /dev/mapper/VolGroup-lv_oracle /oracle之后查看一下分区情况

    image

    图九

    可以重启系统检查一下是否正常。

    image

    图十

    df –h

    挂载正常,可以收工了。

    相关文章

      网友评论

        本文标题:Linux LVM扩容

        本文链接:https://www.haomeiwen.com/subject/yfjqtqtx.html