summaryrefslogtreecommitdiffstats
path: root/release/scripts
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2003-03-31 12:29:31 +0000
committerru <ru@FreeBSD.org>2003-03-31 12:29:31 +0000
commite8c81cd0b97a8f1052bc052a294b947db3861e47 (patch)
tree1bc048f8158125d7eee872dc96b6e322af9f046b /release/scripts
parentfa43c2f973280f8203411998257bcc92da926937 (diff)
downloadFreeBSD-src-e8c81cd0b97a8f1052bc052a294b947db3861e47.zip
FreeBSD-src-e8c81cd0b97a8f1052bc052a294b947db3861e47.tar.gz
Unmount the file system and detach an underlying memory disk even
if the script fails somewhere in the middle. Prodded by: phk
Diffstat (limited to 'release/scripts')
-rw-r--r--release/scripts/doFS.sh12
1 files changed, 6 insertions, 6 deletions
diff --git a/release/scripts/doFS.sh b/release/scripts/doFS.sh
index 8d870fb..08d97a6 100644
--- a/release/scripts/doFS.sh
+++ b/release/scripts/doFS.sh
@@ -58,6 +58,9 @@ dofs_vn () {
dd of=${FSIMG} if=/dev/zero count=${FSSIZE} bs=1k 2>/dev/null
vnconfig -s labels -c /dev/r${VNDEVICE} ${FSIMG}
+
+ trap "umount ${MNT}; vnconfig -u /dev/r${VNDEVICE}" EXIT
+
disklabel -w ${BOOT} ${VNDEVICE} ${FSLABEL}
newfs -i ${FSINODE} -o space -m 0 /dev/r${VNDEVICE}c
@@ -73,9 +76,6 @@ dofs_vn () {
set `df -ki ${MNT} | tail -1`
- umount ${MNT}
- vnconfig -u /dev/r${VNDEVICE} 2>/dev/null || true
-
echo "*** Filesystem is ${FSSIZE} K, $4 left"
echo "*** ${FSINODE} bytes/inode, $7 left"
break;
@@ -102,6 +102,9 @@ dofs_md () {
echo "No /dev/$MDDEVICE" 1>&2
exit 1
fi
+
+ trap "umount ${MNT}; mdconfig -d -u ${MDDEVICE}" EXIT
+
disklabel ${MACHINE} -w ${BOOT} ${MDDEVICE} ${FSLABEL}
newfs -i ${FSINODE} -o space -m 0 /dev/${MDDEVICE}c
@@ -117,9 +120,6 @@ dofs_md () {
set `df -ki ${MNT} | tail -1`
- umount ${MNT}
- mdconfig -d -u ${MDDEVICE} 2>/dev/null || true
-
echo "*** Filesystem is ${FSSIZE} K, $4 left"
echo "*** ${FSINODE} bytes/inode, $7 left"
break;
OpenPOWER on IntegriCloud