• Linux xfs_growfs命令在 CentOS/RHEL 中扩展 XFS 文件系统


    fs_growfs 命令

    使用xfs_growfs命令增加 XFS 文件系统的大小。必须挂载 XFS 文件系统,并且底层设备上必须有可用空间。xfs_growfs 实用程序最常用于逻辑卷。xfs_growfs 命令的语法如下:

    # xfs_growfs [options] mount-point

    以下选项可用于 xfs_growfs 命令:

    • -d:将文件系统的数据部分扩展到底层设备的最大大小。
    • -D [size] : 指定扩展文件系统数据部分的大小。[size] 参数以文件系统块的数量表示。
    • -L [size]:指定日志区域的新大小。这不会扩展大小,而是指定日志区域的新大小。因此,此选项可用于缩小日志区域的大小。您不能缩小文件系统的数据部分的大小。
    • -m [maxpct]:指定文件系统中可分配为 inode 的最大空间百分比的新值。对于 mkfs.xfs 命令,此选项是通过–i maxpct=[value]选项指定的。

    注意:目前无法缩小或减少 xfs 文件系统。因此,必须确保设备尺寸不大于预期尺寸。

    扩展 XFS 文件系统

    1. 验证 XFS 文件系统的当前大小

    在增加文件系统之前检查文件系统详细信息:

    # xfs_growfs -n /dev/vg_test/lv_test
    meta-data=/dev/mapper/vg_test-lv_test isize=512    agcount=4, agsize=32000 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0
    data     =                       bsize=4096   blocks=128000, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=855, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0

    -n选项实际上并没有延伸XFS文件系统,但只是打印当前的文件系统的详细信息。Aslo 检查“df -h”命令输出以查看挂载点的当前大小。

    # df -h
    /dev/mapper/vg_test-lv_test  497M   26M  472M   6% /data
    2.扩展底层设备(lvextend,grow LUN,expand partition)。

    在我们扩展 XFS 文件系统之前,我们需要扩展底层 LVM 卷。如果可能,您可以扩展 LVM VG 中的现有物理卷。出于本文的目的,我们将使用一个新的 PV 来扩展 LV。

    1. 识别新磁盘并创建物理卷。

    # pvcreate /dev/sdc

    2. 使用新 PV 扩展卷组 vg_test。

    # vgextend vg_test /dev/sdc

    3. 验证卷组的新大小。

    # vgdisplay vg_test
      --- Volume group ---
      VG Name               vg_test
      System ID             
      Format                lvm2
      Metadata Areas        2
      Metadata Sequence No  3
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                1
      Open LV               1
      Max PV                0
      Cur PV                2
      Act PV                2
      VG Size               39.99 GiB
      PE Size               4.00 MiB
      Total PE              10238
      Alloc PE / Size       125 / 500.00 MiB
      Free  PE / Size       10113 / 39.50 GiB
      VG UUID               wrd9eB-aZo3-HCmD-Rlgr-NcGP-vS2Z-cm2CeQ

    4. 使用“lvresize”命令将逻辑卷扩展到所需的大小。

    # lvresize -L +35g /dev/vg_test/lv_test
      Size of logical volume vg_test/lv_test changed from 500.00 MiB (125 extents) to 35.49 GiB (9085 extents).
      Logical volume vg_test/lv_test successfully resized.
    3. 扩展 XFS 文件系统
    # xfs_growfs /dev/vg_test/lv_test
    meta-data=/dev/mapper/vg_test-lv_test isize=512    agcount=4, agsize=32000 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0
    data     =                       bsize=4096   blocks=128000, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=855, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 128000 to 9303040

    注意数据块从 128000 变成了 9303040。

    4. 验证

    1. 您可以使用“xfs_info”命令查看 XFS 卷详细信息,如下所示。请注意数据量的块。

    # xfs_info /dev/vg_test/lv_test
    meta-data=/dev/mapper/vg_test-lv_test isize=512    agcount=291, agsize=32000 blks
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=0 spinodes=0
    data     =                       bsize=4096   blocks=9303040, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
    log      =internal               bsize=4096   blocks=855, version=2
             =                       sectsz=512   sunit=0 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0

    在“df -h”命令输出中验证 XFS 文件系统的新大小。

    # df -hP /data
    Filesystem                   Size  Used Avail Use% Mounted on
    /dev/mapper/vg_test-lv_test   36G   35M   36G   1% /data

    正如您在上面的输出中看到的,/data 挂载点大小已从 500MB 增加到 ~36GB。

  • 相关阅读:
    必须使用串口擦除Flash后才能继续连接,另外使用串口3进行通讯时,整合后串口负责的ES8266-01S连接阿里云平台的相关代码也处于崩溃状态,请问这两者之间有没有直接联系,如何解决?
    ASP.NET Core Web项目连接MySQL数据库
    Java&Springboot&MYSQL装修选购网站99192-计算机毕业设计项目选题推荐(附源码)
    LeetCode(23)找出字符串中第一个匹配项的下标【数组/字符串】【简单】
    PCL点云滤波处理D435i深度图用于octomap
    怎么用一句话证明你在游戏公司里的最底层?
    [前端]前端项目,重启项目端口号改变的问题
    区间DP day42
    uni-app的来龙去脉,技术要点及技术难点,语法结构及应用场景,其实前端也很难,顶级的前端比后端都重要,感觉第一,理性第二
    Qt的网络连接方式
  • 原文地址:https://blog.csdn.net/i12344/article/details/138028079