I've been trying to get OpenBSD 4.4 up and running on an old'ish PowerBook I had to rebuild recently. This is one of the last 15" G4 series PowerBooks Apple made. The basic specs are the 1.0 GHz G4 PowerPC processor, 1GB of RAM, DVI, 1gbps Ethernet, 80GB drive, etc. (If you wish, you can stop reading the story part of this post here. Go to the last paragraph if you are simply checking how I got OpenBSD to work as a second OS on the PowerBook.) Running Leopard (OS X 10.5) was frustrating, as it was slow (especially compared to my newer Intel based MacBook Pro) and I really don't have a use for OS X unless it runs fast on a portable machine. At the end of the day, I am using this machine to check email, surf the net and muck around with OpenBSD related issues I have with a small server farm I'm responsible for managing. Considering the machine is in fantastic condition, it would be sad to let it sit on a desk somewhere and collect dust. The problem was that I have spent the last two days trying to get OpenBSD 4.4 running and while the installation went as smooth as would be expected (I rarely have problems with OpenBSD's install process), regardless of whether or not I left the drive formatted MBR or HFS style (i.e. using a boot map that is typical for Intel/AMD machines vs. using Apple's Open Firmware style boot sector), I just could not get OpenBSD to boot. That was, until I read the directions more closely...
There is one very important file Open Firmware wants to see/read when you try to boot the OpenBSD partition: ofwboot. I tried getting OpenBSD installed one of two ways: a) as a secondary OS after OS X (just in case...) and/or b) as the only and primary OS. I don't understand enough about the boot process and trying to boot a PowerBook off a drive formatted with a Master Boot Record instead of the Apple Partition Map. I tried to get it to work and couldn't. I quit trying after the second attempt/second install. Although I don't plan on using OS X, I did want to keep it on the machine in case any firmware updates were necessary or if I simply wanted to quickly boot to the OS Apple provides for the machine (i.e. for pragmatic reasons). On four different occasions, I installed OpenBSD and whenever I tried to run the command 'boot hd:,ofwboot' (or its various forms) I locked up the laptop or got an error message. Because I was doing this on the side of doing other things, I didn't take the time to write down the errors. In the end, they were irrelevant. I did not follow a simple message found in the install files and/or in various documentation available on the web. Open Firmware needs ofwboot at the root of the OS X partition at the beginning of the drive to boot OpenBSD. I didn't watch and read after the installation was done that it wasn't necessarily the case that ofwboot was on the HFS/Mac/OS X partition.
Finally, it occurred to me to look at the root of my OS X install. And to my amazement... ofwboot was not there. Copy using Finder, run 'cp' from the terminal... it didn't matter. I copied ofwboot from the install CD for 4.4 to the root of the OS X drive and restarted in Open Firmware (option+Command+O+F), typed 'boot hd:,ofwboot' and voila. OpenBSD boots just fine. I can't get the Airport card to work with the bwi firmware you can download from http://www.nazgul.ch/bwi/bwi-firmware-1.4.tgz (it locks up the PB every time I try to run 'dhclient bwi'), but I'll work on that later. OpenBSD (macppc) works out of the box and even X runs just dandy.

Leave a comment