svn commit: r235005 - head/usr.sbin/pc-sysinstall/backend

Josh Paetzel jpaetzel at FreeBSD.org
Fri May 4 15:31:36 UTC 2012


Author: jpaetzel
Date: Fri May  4 15:31:35 2012
New Revision: 235005
URL: http://svn.freebsd.org/changeset/base/235005

Log:
  Use a unique zpool name during install, in the case of having another
  PC-BSD / FreeBSD zpool on the system for another install.
  
  Submitted by:	kmoore
  Obtained from:	PC-BSD
  MFC after:	3 days
  Sponsored by:	iXsystems

Modified:
  head/usr.sbin/pc-sysinstall/backend/functions.sh

Modified: head/usr.sbin/pc-sysinstall/backend/functions.sh
==============================================================================
--- head/usr.sbin/pc-sysinstall/backend/functions.sh	Fri May  4 15:27:18 2012	(r235004)
+++ head/usr.sbin/pc-sysinstall/backend/functions.sh	Fri May  4 15:31:35 2012	(r235005)
@@ -216,7 +216,7 @@ fetch_file()
 
   fetch -s "${FETCHFILE}" >${SIZEFILE}
   SIZE="`cat ${SIZEFILE}`"
-  SIZE="`expr ${SIZE} / 1024`"
+  SIZE=$((SIZE/1024))
   echo "FETCH: ${FETCHFILE}"
   echo "FETCH: ${FETCHOUTFILE}" >>${LOGOUT}
 
@@ -276,11 +276,22 @@ get_zpool_name()
   else
     # Need to generate a zpool name for this device
     NUM=`ls ${TMPDIR}/.zpools/ | wc -l | sed 's| ||g'`
-    NEWNAME="${BASENAME}${NUM}"
+
+    # Is it used in another zpool?
+    while
+    z=1
+    do
+      NEWNAME="${BASENAME}${NUM}"
+      zpool import | grep -q "${NEWNAME}"
+      if [ $? -ne 0 ] ; then break ; fi
+      NUM=$((NUM+1))
+    done
+
+    # Now save the new tank name
     mkdir -p ${TMPDIR}/.zpools/`dirname $DEVICE`
     echo "$NEWNAME" >${TMPDIR}/.zpools/${DEVICE} 
     echo "${NEWNAME}"
-    return
+    return 0
   fi
 };
 


More information about the svn-src-all mailing list