Subject: Upgrade experiences (i386)
To: 'port-i386@NetBSD.ORG' <port-i386@NetBSD.ORG>
From: Gunnar Helliesen <>
List: port-i386
Date: 12/30/1997 14:07:27
I've just upgraded my 486 at home from 1.2.1 to 1.3_BETA (Dec. 23) and
have some comments...

First of all: sysinst is an adequate tool for the job with one very big
exception: It needs to capture error messages! (I know this has been
discussed before.)

I used the upgrade option and after fsck'ing my filesystems it did some
copying or moving of files which failed. I can't tell you which files or
what went wrong because the error messages flashed by so quickly I
couldn't read them.

The big problem with the process, as I see it, is the INSTALL document.
IMHO changes/additions have to be made to it before 1.3 is ready for

Here's an example: I had fetched the tar sets from the 'net and stored
them on a local disk. I only have the one disk (with three partitions: a
for root, b for swap and e for /usr) so I put them in /usr/distrib. When
I started the upgrade process I thought I would install from local disk
but then I got unsure. Where to mount it? If I selected the "install
from disk" option would sysinst mount the disk (partition) on /mnt2?
What would happen then when it tried to upgrade the binaries in /usr? I
assume sysinst mounts the target disk with root on /mnt and usr on
/mnt/usr? The latter would fail as usr was already mounted on /mnt2. Or
maybe not, but the INSTALL doc doesn't say. Maybe I could have used the
"escape to shell" option, mounted the disk on /mnt and /mnt/usr myself,
selected the "install from directory" option, specified /mnt/usr/distrib
and that would have worked just fine. Or would that wreak havoc with the
MBR upgrade and/or fsck as the disk was already mounted? Again the
INSTALL doc doesn't say.

I guess I'm asking for more hand-holding, at least if we're going to get
more novice users away from the Linux camp... ;-)

In the end I chickened out, transferred the files to another machine and
installed via NFS. Worked like a charm.

A minor issue: The INSTALL doc says to cd into /dev and run MAKEDEV
after the upgrade. However, sysinst seems to do this at the end of the
upgrade process. At least it says it does.

I love this one (from the INSTALL doc):

"Finally, you will want to delete old binaries that were part
of the version of NetBSD that you upgraded from and have since
been removed from the NetBSD distribution."


I sure will! Some hints, please? I know about the nfsd binaries in
/sbin, anything else? I know it's impossible to list everything from
every possible version the user might be upgrading from, but the
"biggies" from the last release would be nice...

The INSTALL doc (and sysinst) says to backup critical files before doing
the upgrade, again some hints would be nice. It came as a surprise to me
when root's crontab file was nuked... OTOH, the upgrade of /etc was
nice, preserving the old /etc directory.

I see that the startup of xdm is now added as an option to rc.conf. This
is nice, however there is no "automagic" inclusion of the X libraries
for ldconfig. This could confuse the novice user who has installed X,
enabled it in rc.conf and wonders why xdm complains about missing files
and dies. Or an experienced NetBSD user who is used to having this in
rc.local (which is executed after xdm is started in rc). Maybe a hint
about could be included as a comment in rc.conf alongside the
xdm option. Maybe all this is moot if the user installs X via the
pkgtool or whatever it's called, I wouldn't know.

Sorry if all this sounds a bit negative, that's not how it's meant. I
liked sysinst and it did a good job of upgrading my system. I'm just
glad I ran it on my test machine first before I attempted to upgrade the
production system at work. ;-)

All in all 1.3 looks like a winner to me.

To all those involved in the continued refinement of NetBSD and the
upcoming 1.3 release: A BIG thank you!


Gunnar Helliesen   | Bergen IT Consult AS  | NetBSD/VAX on a uVAX II
Systems Consultant | Bergen, Norway        | '86 Jaguar Sovereign 4.2   | | '73 Mercedes 280 (240D)