2000-12-09 15:27:35 +00:00
|
|
|
.\" Copyright (c) 2000 Christoph Herrmann, Thomas-Henning von Kamptz
|
|
|
|
.\" Copyright (c) 1980, 1989, 1993 The Regents of the University of California.
|
|
|
|
.\" All rights reserved.
|
2001-07-15 07:53:42 +00:00
|
|
|
.\"
|
2000-12-09 15:27:35 +00:00
|
|
|
.\" This code is derived from software contributed to Berkeley by
|
|
|
|
.\" Christoph Herrmann and Thomas-Henning von Kamptz, Munich and Frankfurt.
|
2001-07-15 07:53:42 +00:00
|
|
|
.\"
|
2000-12-09 15:27:35 +00:00
|
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
|
|
.\" modification, are permitted provided that the following conditions
|
|
|
|
.\" are met:
|
|
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
|
|
.\" must display the following acknowledgment:
|
|
|
|
.\" This product includes software developed by the University of
|
|
|
|
.\" California, Berkeley and its contributors, as well as Christoph
|
|
|
|
.\" Herrmann and Thomas-Henning von Kamptz.
|
|
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
|
|
.\" may be used to endorse or promote products derived from this software
|
|
|
|
.\" without specific prior written permission.
|
2001-07-15 07:53:42 +00:00
|
|
|
.\"
|
2000-12-09 15:27:35 +00:00
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
.\" SUCH DAMAGE.
|
|
|
|
.\"
|
2000-12-12 20:03:17 +00:00
|
|
|
.\" $TSHeader: src/sbin/growfs/growfs.8,v 1.3 2000/12/12 19:31:00 tomsoft Exp $
|
2000-12-09 15:27:35 +00:00
|
|
|
.\" $FreeBSD$
|
|
|
|
.\"
|
|
|
|
.Dd September 8, 2000
|
|
|
|
.Dt GROWFS 8
|
2000-12-13 11:33:19 +00:00
|
|
|
.Os
|
2000-12-09 15:27:35 +00:00
|
|
|
.Sh NAME
|
|
|
|
.Nm growfs
|
2002-05-16 04:10:46 +00:00
|
|
|
.Nd grow size of an existing ufs filesystem
|
2000-12-09 15:27:35 +00:00
|
|
|
.Sh SYNOPSIS
|
2000-12-13 11:33:19 +00:00
|
|
|
.Nm
|
2000-12-09 15:27:35 +00:00
|
|
|
.Op Fl Ny
|
|
|
|
.Op Fl s Ar size
|
|
|
|
.Ar special
|
|
|
|
.Sh DESCRIPTION
|
2000-12-12 20:03:17 +00:00
|
|
|
.Nm
|
2001-07-15 07:53:42 +00:00
|
|
|
extends the
|
2000-12-09 15:27:35 +00:00
|
|
|
.Xr newfs 8
|
|
|
|
program.
|
2001-08-08 21:45:42 +00:00
|
|
|
Before starting
|
2000-12-09 15:27:35 +00:00
|
|
|
.Nm
|
2001-07-15 07:53:42 +00:00
|
|
|
the disk must be labeled to a bigger size using
|
2000-12-09 15:27:35 +00:00
|
|
|
.Xr disklabel 8 .
|
2001-08-08 21:45:42 +00:00
|
|
|
If you are using volumes you must enlarge them by using
|
2000-12-09 15:27:35 +00:00
|
|
|
.Xr vinum 8 .
|
2000-12-12 20:03:17 +00:00
|
|
|
.Nm
|
2002-05-16 04:10:46 +00:00
|
|
|
extends the size of the filesystem on the specified special file.
|
2000-12-09 15:27:35 +00:00
|
|
|
Currently
|
2001-07-15 07:53:42 +00:00
|
|
|
.Nm
|
2002-05-16 04:10:46 +00:00
|
|
|
can only enlarge unmounted filesystems.
|
|
|
|
Do not try enlarging a mounted filesystem, your system may panic and you will
|
|
|
|
not be able to use the filesystem any longer.
|
2001-08-10 10:15:41 +00:00
|
|
|
Most of the
|
2000-12-09 15:27:35 +00:00
|
|
|
.Xr newfs 8
|
2001-08-08 21:45:42 +00:00
|
|
|
options can not be changed by
|
2001-08-10 10:15:41 +00:00
|
|
|
.Nm .
|
2002-05-16 04:10:46 +00:00
|
|
|
In fact, you can only increase the size of the filesystem.
|
2001-07-15 07:53:42 +00:00
|
|
|
Use
|
2000-12-09 15:27:35 +00:00
|
|
|
.Xr tunefs 8
|
|
|
|
for other changes.
|
2000-12-12 20:03:17 +00:00
|
|
|
.Pp
|
|
|
|
The following options are available:
|
2000-12-09 15:27:35 +00:00
|
|
|
.Bl -tag -width indent
|
|
|
|
.It Fl N
|
2001-08-08 21:45:42 +00:00
|
|
|
.Dq Test mode .
|
2002-05-16 04:10:46 +00:00
|
|
|
Causes the new filesystem parameters to be printed out without actually
|
|
|
|
enlarging the filesystem.
|
2000-12-09 15:27:35 +00:00
|
|
|
.It Fl y
|
2000-12-13 11:33:19 +00:00
|
|
|
.Dq Expert mode .
|
2002-02-14 01:21:07 +00:00
|
|
|
Usually
|
2001-07-15 07:53:42 +00:00
|
|
|
.Nm
|
2001-08-08 21:45:42 +00:00
|
|
|
will ask you if you took a backup of your data before and will do some tests
|
2001-08-10 10:15:41 +00:00
|
|
|
whether
|
2001-07-15 07:53:42 +00:00
|
|
|
.Ar special
|
2001-08-10 10:15:41 +00:00
|
|
|
is currently mounted or whether there are any active snapshots on the file
|
2001-08-08 21:45:42 +00:00
|
|
|
system specified.
|
2000-12-13 11:33:19 +00:00
|
|
|
This will be suppressed.
|
2000-12-12 20:03:17 +00:00
|
|
|
So use this option with great care!
|
2000-12-09 15:27:35 +00:00
|
|
|
.It Fl s Ar size
|
2001-08-08 21:45:42 +00:00
|
|
|
Determines the
|
2000-12-12 20:03:17 +00:00
|
|
|
.Ar size
|
2002-05-16 04:10:46 +00:00
|
|
|
of the filesystem after enlarging in sectors.
|
2000-12-12 20:03:17 +00:00
|
|
|
This value defaults to the size of the raw partition specified in
|
2001-07-15 07:53:42 +00:00
|
|
|
.Ar special
|
2000-12-09 15:27:35 +00:00
|
|
|
(in other words,
|
|
|
|
.Nm
|
2002-05-16 04:10:46 +00:00
|
|
|
will enlarge the filesystem to the size of the entire partition).
|
2000-12-09 15:27:35 +00:00
|
|
|
.El
|
|
|
|
.Sh EXAMPLES
|
|
|
|
.Dl growfs -s 4194304 /dev/vinum/testvol
|
|
|
|
.Pp
|
2001-08-08 21:45:42 +00:00
|
|
|
will enlarge
|
2000-12-12 20:03:17 +00:00
|
|
|
.Pa /dev/vinum/testvol
|
2001-07-15 07:53:42 +00:00
|
|
|
up to 2GB if there is enough space in
|
2000-12-12 20:03:17 +00:00
|
|
|
.Pa /dev/vinum/testvol .
|
2000-12-09 15:27:35 +00:00
|
|
|
.Sh BUGS
|
2001-08-08 21:45:42 +00:00
|
|
|
.Nm
|
|
|
|
works starting with
|
2000-12-13 11:33:19 +00:00
|
|
|
.Fx
|
2001-08-08 21:45:42 +00:00
|
|
|
3.x.
|
|
|
|
There may be cases on
|
|
|
|
.Fx
|
|
|
|
3.x only, when
|
2000-12-09 15:27:35 +00:00
|
|
|
.Nm
|
2002-05-16 04:10:46 +00:00
|
|
|
does not recognize properly whether or not the filesystem is mounted and
|
2001-08-08 21:45:42 +00:00
|
|
|
exits with an error message.
|
|
|
|
Then please use
|
2000-12-09 15:27:35 +00:00
|
|
|
.Nm
|
2000-12-12 20:03:17 +00:00
|
|
|
.Fl y
|
2002-05-16 04:10:46 +00:00
|
|
|
if you are sure that the filesystem is not mounted.
|
2000-12-09 15:27:35 +00:00
|
|
|
It is also recommended to always use
|
2000-12-12 20:03:17 +00:00
|
|
|
.Xr fsck 8
|
2001-08-08 21:45:42 +00:00
|
|
|
after enlarging (just to be on the safe side).
|
2000-12-09 15:27:35 +00:00
|
|
|
.Pp
|
2001-08-08 21:45:42 +00:00
|
|
|
For enlarging beyond certain limits, it is essential to have some free blocks
|
2000-12-12 20:03:17 +00:00
|
|
|
available in the first cylinder group.
|
2001-08-08 21:45:42 +00:00
|
|
|
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
|
|
|
|
.Fx
|
|
|
|
3.x this will cause problems with
|
2001-08-10 10:15:41 +00:00
|
|
|
.Xr fsck 8
|
2001-08-08 21:45:42 +00:00
|
|
|
afterwards.
|
|
|
|
So
|
2001-08-10 10:15:41 +00:00
|
|
|
.Xr fsck 8
|
2001-08-08 21:45:42 +00:00
|
|
|
needs to be patched if you want to use
|
|
|
|
.Nm
|
|
|
|
for
|
|
|
|
.Fx
|
2001-08-10 10:15:41 +00:00
|
|
|
3.x.
|
|
|
|
This patch is already integrated in
|
2001-08-08 21:45:42 +00:00
|
|
|
.Fx
|
2001-08-10 10:15:41 +00:00
|
|
|
starting with
|
|
|
|
.Fx 4.4 .
|
2001-08-08 21:45:42 +00:00
|
|
|
To avoid an unexpected relocation of that structure it is possible to use
|
2000-12-13 22:19:05 +00:00
|
|
|
.Nm ffsinfo
|
2000-12-12 20:03:17 +00:00
|
|
|
.Fl c Ar 0
|
2001-08-08 21:45:42 +00:00
|
|
|
on the first cylinder group to verify that
|
2000-12-12 20:03:17 +00:00
|
|
|
.Em nbfree
|
2000-12-09 15:27:35 +00:00
|
|
|
in the CYLINDER SUMMARY (internal cs) of the CYLINDER GROUP
|
2000-12-12 20:03:17 +00:00
|
|
|
.Em cgr0
|
|
|
|
has enough blocks.
|
2002-05-16 04:10:46 +00:00
|
|
|
As a rule of thumb for default filesystem parameters one block is needed for
|
|
|
|
every 2 GB of total filesystem size.
|
2001-08-08 21:45:42 +00:00
|
|
|
.Pp
|
2001-08-10 10:15:41 +00:00
|
|
|
Normally
|
2001-08-08 21:45:42 +00:00
|
|
|
.Nm
|
|
|
|
writes this critical structure to disk and reads it again later for doing more
|
|
|
|
updates.
|
2002-02-06 21:45:48 +00:00
|
|
|
This read operation will provide unexpected data when using
|
2001-08-08 21:45:42 +00:00
|
|
|
.Fl N .
|
2002-02-06 21:45:48 +00:00
|
|
|
Therefore, this part can not really be simulated and will be skipped in test
|
2001-08-08 21:45:42 +00:00
|
|
|
mode.
|
2000-12-09 15:27:35 +00:00
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr disklabel 8 ,
|
2000-12-13 11:33:19 +00:00
|
|
|
.Xr dumpfs 8 ,
|
|
|
|
.Xr ffsinfo 8 ,
|
2000-12-09 15:27:35 +00:00
|
|
|
.Xr fsck 8 ,
|
|
|
|
.Xr newfs 8 ,
|
2001-07-15 07:53:42 +00:00
|
|
|
.Xr tunefs 8 ,
|
2000-12-13 11:33:19 +00:00
|
|
|
.Xr vinum 8
|
2000-12-09 15:27:35 +00:00
|
|
|
.Sh AUTHORS
|
2000-12-13 11:33:19 +00:00
|
|
|
.An Christoph Herrmann Aq chm@FreeBSD.org
|
|
|
|
.An Thomas-Henning von Kamptz Aq tomsoft@FreeBSD.org
|
2000-12-09 15:27:35 +00:00
|
|
|
.An The GROWFS team Aq growfs@Tomsoft.COM
|
|
|
|
.Sh HISTORY
|
|
|
|
The
|
|
|
|
.Nm
|
2000-12-13 11:33:19 +00:00
|
|
|
command first appeared in
|
2001-08-01 12:15:21 +00:00
|
|
|
.Fx 4.4 .
|