aboutsummaryrefslogtreecommitdiff
path: root/release/doFS.sh
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>1996-01-13 23:31:46 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>1996-01-13 23:31:46 +0000
commita91fd1190db43be78ce265ae0a6efe301ce7cdec (patch)
tree3052c12c9ededf1e5c69b88f6b37573020756058 /release/doFS.sh
parent7c1156970aa9b77c592d2f8dbfb627b63614c810 (diff)
downloadsrc-a91fd1190db43be78ce265ae0a6efe301ce7cdec.tar.gz
src-a91fd1190db43be78ce265ae0a6efe301ce7cdec.zip
Shrink BOOTMFS kernel further. Make doFS.sh more intelligent.
boot4.flp should work fine as far as I can tell.
Notes
Notes: svn path=/head/; revision=13418
Diffstat (limited to 'release/doFS.sh')
-rw-r--r--release/doFS.sh20
1 files changed, 17 insertions, 3 deletions
diff --git a/release/doFS.sh b/release/doFS.sh
index eade2d10ee12..1c09de90d858 100644
--- a/release/doFS.sh
+++ b/release/doFS.sh
@@ -48,11 +48,11 @@ do
-s ${RD}/trees/bin/usr/mdec/bootfd \
/dev/r${VNDEVICE} ${FSLABEL}
- newfs -u 0 -t 0 -i ${FSINODE} -m 0 -T ${FSLABEL} /dev/r${VNDEVICE}a
+ newfs -u 0 -c 8 -t 0 -i ${FSINODE} -m 0 -T ${FSLABEL} /dev/r${VNDEVICE}a
mount /dev/${VNDEVICE}a ${MNT}
- ( cd ${FSPROTO} && find . -print | cpio -dump ${MNT} )
+ ( set -e && cd ${FSPROTO} && find . -print | cpio -dump ${MNT} )
set `df -i /mnt | tail -1`
@@ -69,11 +69,25 @@ do
echo ">>> Filesystem is ${FSSIZE} K, $4 left"
echo ">>> ${FSINODE} bytes/inode, $7 left"
+ echo ">>> `expr ${FSSIZE} \* 1024 / ${FSINODE}`"
+ if [ $4 -gt 64 ] ; then
+ echo "Reducing size"
+ FSSIZE=`expr ${FSSIZE} - $4 + 8`
+ continue
+ fi
+ if [ $7 -gt 64 ] ; then
+ echo "Increasing bytes per inode"
+ FSINODE=`expr ${FSINODE} + 8192`
+ continue
+ fi
if [ $4 -gt 8 ] ; then
- FSSIZE=`expr ${FSSIZE} - $4 + 7`
+ echo "Reducing size"
+ FSSIZE=`expr ${FSSIZE} - 4`
+ FSINODE=`expr ${FSINODE} - 1024`
continue
fi
if [ $7 -gt 32 ] ; then
+ echo "Increasing bytes per inode"
FSINODE=`expr ${FSINODE} + 8192`
continue
fi