growfs(8)
NAME
growfs - grow size of an existing ufs file system
SYNOPSIS
growfs [-Ny] [-s size] special
DESCRIPTION
- The growfs utility extends the newfs(8) program. Before
- starting growfs
the disk must be labeled to a bigger size using bsdlabel(8). - If you wish
to grow a file system beyond the boundary of the slice it - resides in, you
must re-size the slice using fdisk(8) before running growfs. - If you are
using volumes you must enlarge them by using vinum(8). The - growfs utility extends the size of the file system on the specified
- special file.
Currently growfs can only enlarge unmounted file systems. - Do not try
enlarging a mounted file system, your system may panic and - you will not
be able to use the file system any longer. Most of the - newfs(8) options
cannot be changed by growfs. In fact, you can only increase - the size of
the file system. Use tunefs(8) for other changes. - The following options are available:
- -N ``Test mode''. Causes the new file system parame
- ters to be
- printed out without actually enlarging the file sys
- tem.
- -y ``Expert mode''. Usually growfs will ask you if you
- took a
- backup of your data before and will do some tests
- whether special
is currently mounted or whether there are any active - snapshots on
the file system specified. This will be suppressed. - So use this
option with great care! - -s size
- Determines the size of the file system after enlarg
- ing in sectors. This value defaults to the size of the raw
- partition specified in special (in other words, growfs will en
- large the file
system to the size of the entire partition).
EXAMPLES
- growfs -s 4194304 /dev/vinum/testvol
- will enlarge /dev/vinum/testvol up to 2GB if there is enough
- space in
/dev/vinum/testvol.
SEE ALSO
HISTORY
The growfs utility first appeared in FreeBSD 4.4.
AUTHORS
Christoph Herrmann <chm@FreeBSD.org>
Thomas-Henning von Kamptz <tomsoft@FreeBSD.org>
The GROWFS team <growfs@Tomsoft.COM>
BUGS
- The growfs utility works starting with FreeBSD 3.x. There
- may be cases
on FreeBSD 3.x only, when growfs does not recognize properly - whether or
not the file system is mounted and exits with an error mes - sage. Then
please use growfs -y if you are sure that the file system is - not mounted.
It is also recommended to always use fsck(8) after enlarging - (just to be
on the safe side). - For enlarging beyond certain limits, it is essential to have
- some free
blocks available in the first cylinder group. If that space - is not
available in the first cylinder group, a critical data - structure has to
be relocated into one of the new available cylinder groups. - On FreeBSD
3.x this will cause problems with fsck(8) afterwards. So - fsck(8) needs
to be patched if you want to use growfs for FreeBSD 3.x. - This patch is
already integrated in FreeBSD starting with FreeBSD 4.4. To - avoid an
unexpected relocation of that structure it is possible to - use ffsinfo -g
0 -l 4 on the first cylinder group to verify that nbfree in - the CYLINDER
SUMMARY (internal cs) of the CYLINDER GROUP cgr0 has enough - blocks. As a
rule of thumb for default file system parameters one block - is needed for
every 2 GB of total file system size. - Normally growfs writes this critical structure to disk and
- reads it again
later for doing more updates. This read operation will pro - vide unexpected data when using -N. Therefore, this part cannot re
- ally be simulated and will be skipped in test mode.
- BSD September 8, 2000