• LVM 逻辑卷扩容


    当lv空间不够用时,就需要我们对lv进行的扩容。

    扩容分两种情况:(lv的有点,支持在线扩容)

    • VG有充足的空间,可直接对LV进行扩容;

    • VG空间不足,需要先对VG进行扩容,然后再对LV进行扩容

    这里有一块新添加的磁盘sdb

    $  lsblk
    NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sdb               8:16   0   20G  0 disk
    sr0              11:0    1  792M  0 rom
    sda               8:0    0   40G  0 disk
    ├─sda2            8:2    0   39G  0 part
    │ ├─centos-swap 253:1    0  3.9G  0 lvm  [SWAP]
    │ └─centos-root 253:0    0 35.1G  0 lvm  /
    └─sda1            8:1    0    1G  0 part /boot
    

    分区并格式化

    分区

    $  fdisk /dev/sdb
    欢迎使用 fdisk (util-linux 2.23.2)。
    
    更改将停留在内存中,直到您决定将更改写入磁盘。
    使用写入命令前请三思。
    
    Device does not contain a recognized partition table
    使用磁盘标识符 0xf5b2b652 创建新的 DOS 磁盘标签。
    
    命令(输入 m 获取帮助):n
    Partition type:
       p   primary (0 primary, 0 extended, 4 free)
       e   extended
    Select (default p):
    Using default response p
    分区号 (1-4,默认 1):
    起始 扇区 (2048-41943039,默认为 2048):
    将使用默认值 2048
    Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
    将使用默认值 41943039
    分区 1 已设置为 Linux 类型,大小设为 20 GiB
    
    命令(输入 m 获取帮助):
    命令(输入 m 获取帮助):w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    正在同步磁盘。
    

    格式化

    [root@ ~]#: mkfs.xfs /dev/sdb1
    meta-data=/dev/sdb1              isize=512    agcount=4, agsize=1310656 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0, sparse=0
    data     =                       bsize=4096   blocks=5242624, 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
    

    创建PV

    $ pvcreate /dev/sdb1
    WARNING: xfs signature detected on /dev/sdb1 at offset 0. Wipe it? [y/n]: y
      Wiping xfs signature on /dev/sdb1.
      Physical volume "/dev/sdb1" successfully created.
    

    查看

    $ pvs
      PV         VG     Fmt  Attr PSize   PFree
      /dev/sda2  centos lvm2 a--  <39.00g   4.00m
      /dev/sdb1         lvm2 ---  <20.00g <20.00g
    

    扩容VG

    $ vgextend centos /dev/sdb1
      Volume group "centos" successfully extended
    

    查看

    $  vgs
      VG     #PV #LV #SN Attr   VSize  VFree
      centos   2   2   0 wz--n- 58.99g 20.00g
    

    --------------------------------VG空间足够的情况下从这里开始做即可--------------------------------

    扩容LV

    $  lvs
      LV   VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      root centos -wi-ao---- <35.12g
      swap centos -wi-ao----  <3.88g
    
    $  lvextend -l +100%FREE /dev/mapper/centos-root
      Size of logical volume centos/root changed from <35.12 GiB (8990 extents) to <55.12 GiB (14110 extents).
      Logical volume centos/root successfully resized.
    

    扩容

    查看分区格式

    如果分区格式是ext,用resize2fs扩容;
    如果分区格式是xfs,用xfs_growfs扩容。

    命令如下:

    $ df -Th |grep /dev/mapper/centos-root
    /dev/mapper/centos-root xfs        56G  1.3G   54G    3% /
    
    • 然后运行resize2fs命令 对容量重新扩容
    $ resize2fs /dev/mapper/centos-root
    
    • xfs格式的分区用xfs_growfs 命令对容量重新扩容。
    $  xfs_growfs /dev/mapper/centos-root
    meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=28311552 blks
             =                       sectsz=4096  attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0
    data     =                       bsize=4096   blocks=113246208, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=55296, version=2
             =                       sectsz=4096  sunit=1 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 113246208 to 932805632
    

    扩容成功

    $  df -Th
    文件系统                类型      容量  已用  可用 已用% 挂载点
    devtmpfs                devtmpfs  3.8G     0  3.8G    0% /dev
    tmpfs                   tmpfs     3.9G     0  3.9G    0% /dev/shm
    tmpfs                   tmpfs     3.9G  8.6M  3.9G    1% /run
    tmpfs                   tmpfs     3.9G     0  3.9G    0% /sys/fs/cgroup
    /dev/mapper/centos-root xfs        56G  1.3G   54G    3% /
    /dev/sda1               xfs      1014M  194M  821M   20% /boot
    tmpfs                   tmpfs     781M     0  781M    0% /run/user/0
    
  • 相关阅读:
    @当你输入一个网址的时候,实际会发生什么?
    @Java魔法类——unsafer应用解析
    !@面试官:说说双亲委派模型?
    @JAVA字符串格式化
    @double精度比float低吗?
    @java类中资源加载顺序
    !@阿里资深架构师浅谈一个Java类的生命周期
    @String对象的那些事,几行代码就解释得清清楚楚
    @final、finally、finalize有什么区别?
    @35个Java代码优化的细节,你知道几个?
  • 原文地址:https://www.cnblogs.com/Aaron-23/p/13255482.html
Copyright © 2020-2023  润新知