Welcome to the fake int13h Finger Service V1.0!
Description: Evil unix genius.
Project: Running NetBSD on the most obsolete kit I can find
Last Updated: 15/11/06
Continuing from yesterdays update...
Everything I'm about to do here can be found in much greater detail at NetBSD.org. Plus that document has the added bonus of being right! ;)
Ok, there are two methods for installing NetBSD on 68K macs. The first is the traditional method, using the binary packages on a local mac or CD filesystem. This is supposedly the easiest and quickest however I found the supplied MKFS app unreliable and the installer was plagued by SCSI Write #5 / Read #5 errors. So on the basis that I couldn't be arsed with mucking about finding a solution I chose option 2, which is the sysinstall method.
This method pretty much requires a supported network card to be present in your mac. An outdated but still generally accurate list of supported devices can be found here. Basically if your card is based on the 8390 chipset or a variant of then you are 'golden'. If you don't have one of these supported cards then go get one, a unix machine without a network connection is completely and utter pointless, even by my standards of pointlessness. Anyway, on with the install.
In order to start the sysinstall procedure you need to boot an installer kernel. There are two key words in that sentence. Boot is provided by the BSD_Mac86k_Booter application. The Kernel comes from the mac68k instkernel directory on the netbsd.org ftp. There are two kernels on offer netbsd-install.gz and netbsd-installSBC.gz, netbsd-installSBC.gz has alternate SCSI support which you should not use unless you have trouble with the standard kernel. Anway, transfer the booter and the kernel to the mac hard disk using the method detailed in Part 1.
Let the 'fun' begin
Firing up the booter app appears to give you a lot of options, most of which can be completely ignored. Open the Options menu and select booting. Under kernel loction just set the Mac OS file location to your install kernel and ok that bad boy. Then hit the squigly apple function key thingy along with b to boot (or use Boot Now from the option menu). If you have trouble booting due to memory errors then under Mac OS assign a shitload of memory to the booter app. If you can't allocate more than 8MB then check that Mode32 is in your active extensions and that 32 bit addressing is enabled (ensure virtual memory is disabled too) in your memory control panel. It takes an ice age to boot the kernel due to it's compressed nature... anyway once it's booted your into the sysinstall process this is where stuff gets interesting.
About now you should be staring at the sysinstall menu, at this point choosing option a: Install NetBSD to Hard Disk seems like the right answer, and it is... so we will. You'll then get informed that partitioning and stuff will happen and you can cancel whatever and blah blah blah... just press yes to continue. You'll then be asked what packages you want to install, unless you're really picky just install 'em all. Next up it'll ask about installing NetBSD on your disk, from the two options offered we only want to use part of the disk. This bring us to the partitioning menu. Using the menu select the A/UX partition (sd0a) we made in Part 1 and change its type to NetBSD root. Select the next partition (sd0b) which should be the swap partition we made and change its type to NetBSD swap.
Just like that... although bad Tommy Cooper impressions are optional
Now you are given the option of backing out of the install before anything is changes, we say to hell with your warnings and continue. At which point it starts doing some rather exciting newfs type stuffs.
Or it does if the installer works. If your newfs fails, restart the installation process. At the point where it questions you on continuing press Ctrl-Z. This suspends the installer to the background. Now run /sbin/newfs /dev/rsd0a, once that has completed mount /dev/sd0a /targetroot then fg the installer and choose continue.
Once that's done then it's all about the installing! Obviously we want progress bars... you need to see how slowly it extracts the packages. Anyway, it will prompt you to specify a location of the packages for it to install. SCSI CD-ROMs are supported at this point but that seems like a lot work... so we'll opt for the FTP method. The network device we want to use should be ae0 and the media type should be manual (your milage may vary on that one). I'm not using DHCP but if you are you can select it at this point. Excuse me whilst I enter my network information....Then it's on to the ping test, don't worry about failing. As long as you can ping the mac from another machine all is well (Go on, test it!) and the install lets you continue anyway. Next up is entering the location from which you will install your packages from. Make sure you use a local mirror for the host entry (ftp.uk.netbsd.org in my case). The base directory should be set to /pub/NetBSD/NetBSD-3.1 and the sets directory should be /mac68k/binary/sets. Enter any proxy settings you may need and hit get distribution. Now depending on your connection speed there may be a varying number of ice-ages until it finishes.
An indeterminate amount of hours later Oooh, it's done!
At this point I assume you put the final network settings in so can hit yes to this most welcome of required human intervention (That was a long wait). You might as well choose to delete the distribution sets unless you have another machine you'd like to install... and you enjoy pain. Now we head back to sysinstall to configure some important thingies. Like the system time and location, also the password encryption system. I would strongly recommend using DES even though it's the least secure. 16Mhz 68030's and blowfish are not good bed fellows. Which leads us on to the root password. For all that is good and right with the world please put one in, and make sure it's a good one. Next up is shell selection, shells are like arseholes everyone has a favourite...or summink, anyway I'm chosing ksh. And with that we cue the music!
Exit the sysinstall and type reboot. A few seconds later and *BANG*... you're into the debugger.
Don't panic, you'll be seeing this a lot (After every reboot or shutdown in fact.). NetBSD and the Mac's realtime clock don't really get along too well. Unfortunately this means you'll have to set the system time after every restart, but that's ok because you have a time server right? Anyway, cycle the power and head yourself back into Mac OS.
Check the memory control panel for 32bit extensions and that virtual memory is disabled (Yes, you'll need to do that after every NetBSD reboot too), and restart. The open the NetBSD booter app, the default settings are excactly what we require so just hit squiggle-b (or Boot now from the options menu).
Log yourself in and get ready for some configuration fun. I won't tell you how to suck any more eggs; however you want to turn off as many services as you can, although I'd recommend leaving sshd running. My minimum requirements to make this usable are gnu make, screen, lwm / ratpoison / minimal window manager of your choice. After that the world is your oyster... the machine lacks horsepower but NetBSD gives it a lot of torque. A reasonable webserver should be possible for instance. Remember pkgsrc and distcc are your friends. Have fun, I know I did.
Of course this leaves the question... what to do next? Anybody got a toaster?