Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!news.uoknor.edu!ns1.nodak.edu!netnews.nwnet.net!pnl-oracle!osi-east2.es.net!fastrac.llnl.gov!lll-winken.llnl.gov!ames!agate!howland.reston.ans.net!EU.net!ieunet!news.ieunet.ie!jkh
From: jkh@whisker.hubbard.ie (Jordan K. Hubbard)
Newsgroups: comp.os.386bsd.questions
Subject: Re: How to upgrade to FreeBSD-1.1
Date: 23 Feb 1994 21:56:19 GMT
Organization: Jordan Hubbard
Lines: 101
Distribution: world
Message-ID: <JKH.94Feb23215619@whisker.hubbard.ie>
References: <CLMJ28.Gtw@informatik.uni-rostock.de> <Ja6q+fU.dysonj@delphi.com>
NNTP-Posting-Host: whisker.hubbard.ie
In-reply-to: John Dyson's message of Tue, 22 Feb 94 20:03:08 -0500
>In the moment I'm supping FreeBSD-current. Is ther any sign to notice that
>FreeBSD-current is the FreeBSD-1.1 version or is it a continuous flow.
>I want to avoid ftping the whole distrib again from freebsd.cdrom.com!
>Who has experiences and can help?
Well, something like this script might help you:
#!/bin/sh
#
# Larry Wall Memorial upgrade shell script, version 3.14159262
#
# By: Jordan K. Hubbard
#
# For upgrading from FreeBSD 1.0.2 to 1.1 with a full source distribution.
#
IN_UPGRADE=/var/run/upgrading
if [ "`id -u`" != "0" ]; then
echo "Sorry, this procedure must be done as root!"
exit 1
fi
if [ ! -d /usr/src/sbin/mount_procfs ]; then
echo "These don't look like the FreeBSD BETA 1.1 sources in"
echo "/usr/src. Please make sure /usr/src is a _FULL_ copy of"
echo "FreeBSD 1.1 BETA before running this installation procedure!"
exit 1
fi
if [ ! -f $IN_UPGRADE ]; then
echo ""
echo "This script upgrades you from FreeBSD 1.0.2 to FreeBSD 1.1"
echo ""
echo -n "Shall we perform the upgrade now? (yes/no) "
read ans
if [ "$ans" != "yes" ]; then
echo "Upgrade aborted at user request."
exit 1
fi
echo "Good! Let's get to it.."
cd /usr/src/share/mk
make install
cd /usr/src/include
make install
cd /usr/src/usr.sbin/config
make all install
cd /usr/src/sbin/mount_procfs
make all install
if ! grep -q /proc /etc/fstab; then
cp /etc/fstab /etc/fstab.1.0
echo "Adding proc to /etc/fstab - old fstab backed up as /etc/fstab.1.0."
echo "proc /proc procfs rw 0 0" >> /etc/fstab
fi
cd /usr/src/sys/i386/conf
echo "I see the following configuration files:"
echo ""
ls | sed -e '/.*.i386/D'
echo ""
echo -n "What is the name of your configuration file? "
read config
if [ ! -f $config ]; then
echo "No such configuration file! Giving up.."
exit 1
fi
echo "Backing old config file up as " ${config}.1.0
cp $config ${config}.1.0
sed -e 's/^controller.*fd0/controller fdc0/' -e 's/at fd0/at fdc0/' -e 's/controller.*wd\([0-9]\)/controller wdc\1/' -e 's/at wd\([0-9]\)/at wdc\1/' < ${config}.1.0 >$config
config $config
cd /sys/compile/$config
make depend all || echo; echo; echo "Make failed! I can't go on!" ; exit 1
touch $IN_UPGRADE
if [ ! -f $IN_UPGRADE ]; then
echo "Argh! Unable to checkpoint myself! Get help!"
exit 1
fi
mv /386bsd /386bsd.old
mv 386bsd /
mkdir /proc
echo ""
echo "Ok, the new kernel moved into place. Now reboot the machine and"
echo "run this script again (as root) when it comes back up."
echo ""
exit 0
else
echo "Hi! Nice to see you back again! Let's continue where we left"
echo "off, shall we? The following will take awhile, so you may wish"
echo "to get yourself a couple of gallons of coffee, or perhaps a good book."
echo ""
cd /usr/src
make bootstrapld || echo ; echo; echo "Argh! Make bootstrapld failed! Please report this!"; exit 1
make world || echo; echo; echo "The world failed to build! Bad news! Please report this!"; exit 1
pwd_mkdb -p /etc/master.passwd
echo ""
echo "Sweet Success! You should now reboot your system one more time"
echo "to be running FreeBSD 1.1 BETA!"
echo ""
rm $IN_UPGRADE
exit 0
fi
--
Jordan K. Hubbard FreeBSD core team Electric Bivalves Anonymous
On the net, no one can hear you scream.