Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Upgrading a 90s laptop from 5.1 to 10 -- no FD or CDROM



joelp%sdf.org@localhost writes:

> The days are short and work has slowed down. 'Tis the season to get the
> old hardware out!

I know what you mean.

> I have a '98 Toshiba Satellite Pro laptop running a 2010 build of NetBSD
> 5.1. It runs great including X11. No tmux though :(
>
> So how do I get NetBSD 10 on this? There are some challenges.
>
> I have a pcmcia 3Com NIC and so internet access (IPv6 only!). But the FD
> adapter and the CDROM bay both died years ago.
>
> I can plug in a pcmcia CF card and mount it. The old BIOS can't boot from
> that though. There's also a single USB revision 1.0 port.
>
> Take the old HD out and try to put a boot image on it?

I have been doing inplace upgrades on systems for years, almost entirely
successfully.  My scripts are in pkgsrc/sysutils/etcmanage, which in
addition to etcmanage has BUILD-NetBSD and INSTALL-NetBSD.  This will
seem like a lot, but I find once I'm set up, updating is very easy and
reliable.

  - set up etcmanage.  It seems to take people a while to get their head
    around it but the point is that on update, if there is a file in
    /etc which is unmodified relative to what some previous
    install/update did, then it will be made to match the new install.
    And if not, it will be left alone.  Then the human can
    review/merge/fix.  You need it on the machine to be updated and sort
    of the release build machine.

  - Read BUILD-NetBSD and INSTALL-NetBSD.  They are not mysterious.

  - Run BUILD-NetBSD someplace to build.  It's basically a vanilla
    build.sh, but it prepares etcmanage checksums suitable for
    bootstrapping.  etcmanage lacks support for xz sets, simply due to
    round tuits and the "USE_XZ_SETS=no" workaround working very well.

  - Bring the sets to the computer to be updated.  Bring them all; do
    not bring a kernel and try that.  Instead, get all the bits safely
    there so when you do install the kernel and reboot the rest will be
    there already.  Backup /netbsd to /netbsd.ok.  Run "INSTALL-NetBSD
    installkernel" and reboot.  If it is ok, run "INSTALL-NetBSD
    installuser".  Then "postinstall -s /usr/netbsd-etc fix", as the
    installuser step.  Note that installuser will unpack the etc and
    xetc sets to /usr/netbsd-etc, and the rest to /.

  - When things are ok clean out /stand (old modules).

  - beware that 5->10 is almost certainly not going to work.   I have
    generally been doing N->N+1 on most machines, but had occasion to do
    5->9.  I found that the 9 kernel would not boot.   I then tried 7,
    and 5->7 worked, and 7->9 worked.   The downside is just boot
    netbsd.ok, so it's not that bad, but I would go to 7 first, and then
    to 9 or 10.

I advise learning all this especially etcamange on a faster machine on
which it is easier to deal with problems.  I don't really expect much,
but still.

I did the 5->7->9 upgrade on a remote machine where I lacked console
access.  That was of course scary, and it only succeeded because I
tested the steps on duplicate hardware.  Had there not been a 5->9
hiccup it would have been fine

You are doing local, so beware that a 7 kernel might not work with 5
userland to configure networking, perhaps firewall.  It's coming to me
that my issue was that 5 ifconfig could not set up networking with a 9
kernel.  So it's possible you could do 5->9 since you can type on it.

Of course, you can do this all by hand.  I find it more reliable to have
debugged the scripts and then use them.

BTW 5 was amazing.  It was a release that ran forever absent power/hw
issues. I know that's the netbsd way but it seemed extra solid.

> total memory = 81660 KB
> avail memory = 75672 KB

That's tight.  I do wonder how the newer systems will go.  You may want
to build a slimmed-down kernel.  You might even want MODULAR but I'm not
sure that's really baked enough for production.  It may well be; I just
haven't tried it.

> apm0 at mainbus0: Advanced Power Management BIOS: Power Management spec V1.2

I dimly think apm might have been deleted.  Probably doesn't matter.


Home | Main Index | Thread Index | Old Index