xfs_growfs(8)
π NAME π
xfs_growfs β expand an XFS filesystem β¨ (yes bestie, we're making your filesystem BIGGER)
πΈ SYNOPSIS πΈ
xfs_growfs [ -dilnrx ] [ -D size ] [ -e rtextsize ] [ -L size ] [ -m maxpct ] [ -t mtab ] [ -R size ] [ mount-point | block-device ]
xfs_growfs -V
π¦ DESCRIPTION π¦
Okay so xfs_growfs expands an existing XFS filesystem (peep xfs(5) for the lore π).
The mount-point argument is the pathname of the directory where the filesystem is mounted. The block-device argument is the device name of a mounted XFS filesystem.
Heads up: the filesystem must be mounted for it to be grown (go read mount(8), iykyk).
The existing contents of the filesystem are left completely undisturbed β no cap β and the added space becomes available for additional file storage. It's giving glow-up, not makeover π
β¨ OPTIONS β¨
-d|-D sizeβ says the data section of the filesystem should be resized. If you pass-D size, the data section gets changed to that size; otherwise with just-dthe data section grows to the largest size possible. The size is expressed in filesystem blocks. A filesystem with only 1 AG cannot be shrunk further, and a filesystem cannot be shrunk to the point where it would only have 1 AG. [NOTE: Only shrinking the last AG without removing it is implemented]-eβ lets you specify the real-time extent size. Inmkfs.xfs(8)this is specified with-r extsize=nnnn.-iβ the new log is an internal log (inside the data section). [NOTE: This option is not implemented] π«-l|-L sizeβ says the log section of the filesystem should be grown, shrunk, or moved. If you pass-L size, the log section is changed to be that size, if possible. The size is expressed in filesystem blocks. The size of an internal log must be smaller than the size of an allocation group (this value is printed atmkfs(8)time). If neither-inor-xis given with-l, the log continues to be internal or external as it was before. [NOTE: These options are not implemented] π-mβ specify a new value for the maximum percentage of space in the filesystem that can be allocated as inodes. Inmkfs.xfs(8)this is specified with-i maxpct=nn.-nβ says no change to the filesystem is to be made. The filesystem geometry is printed, and argument checking is performed, but no growth occurs. See the output examples below. (Basically a vibe check, not a surgery π©Ί)-r|-R sizeβ says the real-time section of the filesystem should be grown. If you pass-R size, the real-time section is grown to that size; otherwise with just-rthe real-time section grows to the largest size possible. The size is expressed in filesystem blocks. The filesystem does not need to have contained a real-time section before thexfs_growfsoperation. π-tβ specifies an alternate mount table file (default is/proc/mountsif it exists, else/etc/mtab). This is used when working with filesystems mounted without writing to the/etc/mtabfile β refer tomount(8)for further details.-Vβ prints the version number and exits. Themount-pointargument is not required with-V. π
xfs_growfs is most often used in conjunction with logical volumes (see md(4) and lvm(8) on Linux). BUT it can also be used on a regular disk partition, for example if a partition has been enlarged while retaining the same starting block. Slay π
π PRACTICAL USE π
Filesystems normally occupy all of the space on the device where they reside. So in order to grow a filesystem, it is necessary to provide added space for it to occupy. Therefore there must be at least one spare new disk partition available. Adding the space is often done through the use of a logical volume manager. π§
tl;dr: no spare space = nothing to grow into. She can't expand into the void, bestie π
π SEE ALSO π
mkfs.xfs(8), xfs_info(8), md(4), lvm(8), mount(8).
k bye ily, this page lives in the System Manager's Manual and it's literally called xfs_growfs(8) ππ¦β¨
π¦ where this page comes from
- alpine 3.23: xfsprogs-doc 6.17.0-r0 Β· LGPL-2.1-or-later
- alpine 3.24: xfsprogs-doc 7.0.1-r0 Β· LGPL-2.1-or-later
- arch rolling: xfsprogs 7.2.0-1
- arch rolling: xfsprogs 7.2.1-1 Β· GPL-2.0-only AND LGPL-2.1-only
- centos-stream 10: xfsprogs 6.16.0-1.el10 Β· GPL-1.0-or-later AND LGPL-2.1-or-later
- fedora 44: xfsprogs 6.18.0-2.fc44 Β· GPL-1.0-or-later AND LGPL-2.1-or-later
- fedora 44: xfsprogs 6.18.0-2.fc44 Β· GPL-1.0-or-later AND LGPL-2.1-or-later
- fedora 44: xfsprogs 7.1.1-1.fc44 Β· GPL-1.0-or-later AND LGPL-2.1-or-later
- fedora 44: xfsprogs 7.1.1-1.fc44 Β· GPL-1.0-or-later AND LGPL-2.1-or-later
- nixos 26.05: xfsprogs 6.19.0
- nixpkgs unstable: xfsprogs 7.2.1
- opensuse-leap 16.0: xfsprogs 6.19.0-160000.3.1 Β· GPL-2.0-or-later
- opensuse-leap 16.0: xfsprogs 6.19.0-160000.3.1 Β· GPL-2.0-or-later
- opensuse-leap 16.0: xfsprogs 6.19.0-160000.3.1 Β· GPL-2.0-or-later
- opensuse-leap 16.0: xfsprogs 6.19.0-160000.3.1 Β· GPL-2.0-or-later
- ubuntu resolute: xfsprogs 6.18.0-3 Β· GPL-2.0-only
- ubuntu stonking: xfsprogs 6.19.0-1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms