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