From owner-svn-src-all@FreeBSD.ORG Sun Jul 22 20:55:42 2012 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B70CA106566B; Sun, 22 Jul 2012 20:55:42 +0000 (UTC) (envelope-from phk@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id A16E68FC0C; Sun, 22 Jul 2012 20:55:42 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q6MKtgJD025590; Sun, 22 Jul 2012 20:55:42 GMT (envelope-from phk@svn.freebsd.org) Received: (from phk@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q6MKtg46025588; Sun, 22 Jul 2012 20:55:42 GMT (envelope-from phk@svn.freebsd.org) Message-Id: <201207222055.q6MKtg46025588@svn.freebsd.org> From: Poul-Henning Kamp Date: Sun, 22 Jul 2012 20:55:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r238704 - head/tools/tools/sysbuild X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Jul 2012 20:55:42 -0000 Author: phk Date: Sun Jul 22 20:55:42 2012 New Revision: 238704 URL: http://svn.freebsd.org/changeset/base/238704 Log: Derive FREEBSD_PART from /etc/fstab, and make it full device name. Give suggestion for next steps when done. Inspired by patches from: Flemming "F3" Jacobsen Modified: head/tools/tools/sysbuild/sysbuild.sh Modified: head/tools/tools/sysbuild/sysbuild.sh ============================================================================== --- head/tools/tools/sysbuild/sysbuild.sh Sun Jul 22 20:08:38 2012 (r238703) +++ head/tools/tools/sysbuild/sysbuild.sh Sun Jul 22 20:55:42 2012 (r238704) @@ -31,7 +31,7 @@ set -e exec < /dev/null -if [ `uname -m` = "i386" ] ; then +if [ `uname -m` = "i386" -o `uname -m` = "amd64" ] ; then TARGET_PART=`df / | sed ' 1d s/[ ].*// @@ -41,25 +41,24 @@ if [ `uname -m` = "i386" ] ; then s,s3a,s2a, '` - # Where our build-bits are to be found - FREEBSD_PART=`echo $TARGET_PART | sed 's/s[12]a/s3/'` -elif [ `uname -m` = "amd64" ] ; then - TARGET_PART=`df / | sed ' - 1d - s/[ ].*// - s,/dev/,, - s,s1a,s3a, - s,s2a,s1a, - s,s3a,s2a, - '` - - # Where our build-bits are to be found - FREEBSD_PART=`echo $TARGET_PART | sed 's/s[12]a/s3/'` + FREEBSD_PART=`sed -n \ + -e 's/#.*//' \ + -e '/[ ]\/freebsd[ ]/!d' \ + -e 's/[ ].*//p' \ + /etc/fstab` + + # Calculate a suggested gpart command + TARGET_DISK=`expr ${TARGET_PART} : '\(.*\)s[12]a$' || true` + TARGET_SLICE=`expr ${TARGET_PART} : '.*s\([12]\)a$' || true` + GPART_SUGGESTION="gpart set -a active -i $TARGET_SLICE /dev/$TARGET_DISK" + unset TARGET_DISK TARGET_SLICE else TARGET_PART=unknown FREEBSD_PART=unknown + GPART_SUGGESTION=unknown fi + # Relative to /freebsd PORTS_PATH=ports SRC_PATH=src @@ -405,7 +404,7 @@ log_it Unmount everything ( cleanup ) umount /freebsd/distfiles || true umount ${SBMNT}/freebsd/distfiles || true - umount /dev/${FREEBSD_PART} || true + umount ${FREEBSD_PART} || true umount ${SBMNT}/freebsd || true umount ${SBMNT}/dev || true umount ${SBMNT} || true @@ -414,7 +413,7 @@ log_it Unmount everything log_it Prepare running image mkdir -p /freebsd -mount /dev/${FREEBSD_PART} /freebsd +mount ${FREEBSD_PART} /freebsd ####################################################################### @@ -525,9 +524,9 @@ log_it Move filesystems if [ "x${REMOTEDISTFILES}" != "x" ] ; then umount /freebsd/distfiles fi -umount /dev/${FREEBSD_PART} || true +umount ${FREEBSD_PART} || true mkdir -p ${SBMNT}/freebsd -mount /dev/${FREEBSD_PART} ${SBMNT}/freebsd +mount ${FREEBSD_PART} ${SBMNT}/freebsd if [ "x${REMOTEDISTFILES}" != "x" ] ; then mount ${REMOTEDISTFILES} ${SBMNT}/freebsd/distfiles fi @@ -560,6 +559,10 @@ log_it before_ports before_ports ) +log_it fixing fstab +sed "/[ ]\/[ ]/s;^[^ ]*[ ];/dev/${TARGET_PART} ;" \ + /etc/fstab > ${SBMNT}/etc/fstab + log_it build ports pwd cp $0 ${SBMNT}/root @@ -573,10 +576,6 @@ else fi cp ${SBMNT}/tmp/_sb_log /tmp -log_it fixing fstab -sed "/[ ]\/[ ]/s;^[^ ]*[ ];/dev/${TARGET_PART} ;" \ - /etc/fstab > ${SBMNT}/etc/fstab - log_it create all mountpoints grep -v '^[ ]*#' ${SBMNT}/etc/fstab | while read a b c @@ -615,3 +614,6 @@ cp ${SBMNT}/tmp/_sb_log /tmp log_it "Check these messages (if any):" grep '^Stop' ${SBMNT}/_* || true log_it DONE +echo "Now you probably want to:" +echo " $GPART_SUGGESTION" +echo " shutdown -r now"