Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 Jun 2015 00:46:50 +0000 (UTC)
From:      Colin Percival <cperciva@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r284009 - in stable/10: etc/rc.d share/man/man7
Message-ID:  <201506050046.t550ko6w028457@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: cperciva
Date: Fri Jun  5 00:46:49 2015
New Revision: 284009
URL: https://svnweb.freebsd.org/changeset/base/284009

Log:
  MFC r273955,274060,274164: Add /etc/rc.d/growfs script.

Added:
  stable/10/etc/rc.d/growfs
     - copied, changed from r273955, head/etc/rc.d/growfs
  stable/10/share/man/man7/growfs.7
     - copied unchanged from r273955, head/share/man/man7/growfs.7
Modified:
  stable/10/etc/rc.d/Makefile
  stable/10/share/man/man7/Makefile
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/etc/rc.d/Makefile
==============================================================================
--- stable/10/etc/rc.d/Makefile	Fri Jun  5 00:39:34 2015	(r284008)
+++ stable/10/etc/rc.d/Makefile	Fri Jun  5 00:46:49 2015	(r284009)
@@ -37,6 +37,7 @@ FILES=	DAEMON \
 	geli \
 	geli2 \
 	gptboot \
+	growfs \
 	gssd \
 	${_hcsecd} \
 	hostid \

Copied and modified: stable/10/etc/rc.d/growfs (from r273955, head/etc/rc.d/growfs)
==============================================================================
--- head/etc/rc.d/growfs	Sun Nov  2 00:11:25 2014	(r273955, copy source)
+++ stable/10/etc/rc.d/growfs	Fri Jun  5 00:46:49 2015	(r284009)
@@ -35,9 +35,7 @@
 # and have it work on essentially any size drive.
 #
 # TODO: Figure out where this should really be ordered.
-# I suspect it should go just after fsck but before mountcritlocal
-# but it's hard to tell for sure because of the bug described
-# below.
+# I suspect it should go just after fsck but before mountcritlocal.
 # 
 
 . /etc/rc.subr
@@ -49,20 +47,20 @@ rcvar="growfs_enable"
 
 growfs_start ()
 {
-    echo "Growing root partition to fill device"
-    rootdev=$(df / | tail -n 1 | awk '{ sub("/dev/", "", $1); print $1 }')
-    if [ x"$rootdev" = x"${rootdev%/*}" ]; then
-	# raw device
-	rawdev="$rootdev"
-    else
-	rawdev=$(glabel status | awk '$1 == "'"$rootdev"'" { print $3 }')
-	if [ x"$rawdev" = x"" ]; then
-	    echo "Can't figure out device for: $rootdev"
-	    return
+	echo "Growing root partition to fill device"
+	rootdev=$(df / | tail -n 1 | awk '{ sub("/dev/", "", $1); print $1 }')
+	if [ x"$rootdev" = x"${rootdev%/*}" ]; then
+		# raw device
+		rawdev="$rootdev"
+	else
+		rawdev=$(glabel status | awk '$1 == "'"$rootdev"'" { print $3 }')
+		if [ x"$rawdev" = x"" ]; then
+			echo "Can't figure out device for: $rootdev"
+			return
+		fi
 	fi
-    fi
 
-    sysctl -b kern.geom.conftxt | awk '
+	sysctl -b kern.geom.conftxt | awk '
 {
 	lvl=$1
 	device[lvl] = $3
@@ -91,7 +89,7 @@ growfs_start ()
 		exit 0
 	}
 }' dev="$rawdev"
-    growfs -y /dev/"$rootdev"
+	growfs -y /dev/"$rootdev"
 }
 
 load_rc_config $name

Modified: stable/10/share/man/man7/Makefile
==============================================================================
--- stable/10/share/man/man7/Makefile	Fri Jun  5 00:39:34 2015	(r284008)
+++ stable/10/share/man/man7/Makefile	Fri Jun  5 00:46:49 2015	(r284009)
@@ -14,6 +14,7 @@ MAN=	adding_user.7 \
 	environ.7 \
 	ffs.7 \
 	firewall.7 \
+	growfs.7 \
 	hier.7 \
 	hostname.7 \
 	intro.7 \

Copied: stable/10/share/man/man7/growfs.7 (from r273955, head/share/man/man7/growfs.7)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/share/man/man7/growfs.7	Fri Jun  5 00:46:49 2015	(r284009, copy of r273955, head/share/man/man7/growfs.7)
@@ -0,0 +1,64 @@
+.\" Copyright 2014 John-Mark Gurney
+.\" All rights reserved.
+.\"
+.\" 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.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd November 1, 2014
+.Dt GROWFS 7
+.Os
+.Sh NAME
+.Nm growfs
+.Nd start up script to grow the root file-system.
+.Sh DESCRIPTION
+The following options in
+.Pa /etc/rc.conf
+control the behavior of
+.Nm :
+.Bl -tag -width ".Va growfs_enable" -offset indent
+.It Va growfs_enable
+.Pq Dq Li NO
+If set to
+.Dq Li YES ,
+the first time the machine boots, the root file-system will be automatically
+expanded, if possible, to fill up all available space after it.
+.El
+.Pp
+To expand the root file-system with-out rebooting, run the following command:
+.Dl % /etc/rc.d/growfs onestart
+.Sh IMPLEMENTATION NOTES
+The script requires that
+.Pa awk
+be present and on the path.
+This usually means that
+.Pa /usr
+should be mounted prior to running the script.
+.Sh FILES
+.Pa /etc/rc.conf
+.Sh EXIT STATUS
+.Ex -std
+.Sh SEE ALSO
+.Xr rc.conf 5
+.Sh AUTHORS
+The man page and script were written by
+.An John-Mark Gurney Aq Mt jmg@FreeBSD.org .



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201506050046.t550ko6w028457>