如何在 Linux 中扩展 XFS 根分区

在某些情况下,/ 分区在 Linux 中磁盘空间不足。即使压缩和删除旧的日志文件也无济于事,因此在这种情况下,我们别无选择,只能扩展 / 文件系统。在本文中,我们将演示如何在 Linux 系统中扩展不是LVM逻辑卷中的xfs根分区。

首先我们必须向系统磁盘扩展额外的空间,然后使用growpartxfs_growfs 命令扩展根分区(或文件系统)。

本文使用的VMware Workstation,并且安装的操作系统是Centos8,磁盘空间为20GB。/ 根分区大小为17GB。

检查 / 分区大小

运行df -Th /查看当前根分区的大小:

[root@localhost ~]# df -Th /
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/nvme0n1p2 xfs    17G  1.6G   16G  10% /

使用 lsblk 和 fdisk 命令验证操作系统磁盘的大小:

[root@localhost ~]# lsblk /dev/nvme0n1
[root@localhost ~]# fdisk -l /dev/nvme0n1

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


以上输出显示 OS 磁盘的大小为 17 GB。

安装系统的磁盘扩容

增加操作系统磁盘的大小,我将操作系统磁盘大小从 20 GB 更改为 40 GB。

本文使用的是VMware Workstation,需要将操作系统关机,然后执行磁盘扩容。

分区扩展之前是20GB。

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


下面将系统磁盘扩展到40GB。

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


可以看到,已经扩展完成,下一步就启动系统吧。

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区

基于 xfs 文件系统扩展根分区

要扩展根分区,我们需要使用growpartxfs_growfs命令。我们需要安装该命令:

[root@localhost ~]# yum -y install cloud-utils-growpart gdisk

扩容完成之后,接下来查看一下磁盘容量:

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


以上输出确认操作系统磁盘大小现在为 40 GB,现在让我们使用以下命令扩展根分区。

在/dev/sda 磁盘的第二个分区上运行growpart 命令(我们使用2 作为分区号,因为我们的 / 分区在磁盘上的第二个分区)。

[root@localhost ~]# growpart /dev/nvme0n1 2
CHANGED: partition=2 start=1026048 old: size=35651584 end=36677632 new: size=82859999 end=83886047

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


检验一下:

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


注意,如果想要使用growpart命令扩容 / 分区,该分区后面不能有其他分区,不然无法扩容。会提示如下信息:

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


如果 / 分区下面有一个swap分区,只能删掉swap分区,然后执行growpart来扩容 / 根分区。

使用df -Th 看一下 / 分区是否已扩容:

[root@localhost ~]# df -hT /
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/nvme0n1p2 xfs    17G  1.7G   16G  10% /

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


发现分区没有扩容。下面需要用到xfs_growfs命令来扩容xfs分区:

[root@localhost ~]# xfs_growfs /
meta-data=/dev/nvme0n1p2         isize=512    agcount=4, agsize=1114112 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=4456448, 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
data blocks changed from 4456448 to 10357499

如何在 Linux 中扩展 XFS 根分区如何在 Linux 中扩展 XFS 根分区


下面使用df -Th 看一下 / 分区是否已扩容:

[root@localhost ~]# df -hT /
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/nvme0n1p2 xfs    40G  1.8G   38G   5% /

总结

本文使用了growpartxfs_growfs命令来扩容了磁盘和xfs分区。

猜你喜欢

转载自blog.csdn.net/yaxuan88521/article/details/121454891