As promised, here’s the story of how I eventually got Ubuntu Linux 5.10 Breezy Badger (the latest version as of this writing) up and running on my Powerbook G3 Wallstreet, a faithful old friend that’s been with me since 2002. Before I proceed I should mention that my two most valuable sources for this whole project were the Ubuntu Installation/OldWorldMacs wiki and Flexion.org’s Powerbook G3 (OldWorld) Ubuntu Install article. Read the full article (with over 50 comments and counting) after the jump.
I first tried to install Breezy on this machine a couple of months ago. I had previously had good experiences installing Ubuntu on a couple of older Windows PC’s and a New World ROM PowerMac G4/400 Gigabit Ethernet. However, the Powerbook install was complicated by the fact that it is an Old World ROM Mac. As such, you cannot install a Linux bootloader (such as yaboot) into the firmware the way you can with a New World ROM Mac, and you cannot boot the Mac directly from the Ubuntu Breezy PPC Install disc (download, 650MB ISO).
Read: installing Ubuntu Linux on New World ROM Macs (basically any Mac from the iMac onward) is very, very simple indeed. Just insert the Ubuntu Linux PPC disc in the drive, restart the Mac while pressing the “C” key, and the Linux installer just boots automagically. After installation, New World ROM Macs can boot Linux directly without having to first boot OS 9. Very slick.
Not so with Old World ROM Macs. On my Wallstreet, I had to partition the drive, install OS 9, and install/configure an appropriate Old World-compatible bootloader before being able to even boot from the Ubuntu PPC install disc. Following are the steps I took and the materials I needed:
- Powerbook G3/250MHZ/192MB/4GB/13.3″ display Wallstreet with Orinoco WaveLAN wireless PCMCIA card
- a broadband internet connection
- Mac OS 9 Install CD (you can use Mac OS 8.1 onward)
- Ubuntu Linux 5.10 PowerPC Install ISO, burned to CD (download, 650MB ISO image)
- a copy of BootX, an Old World ROM-compatible Linux bootloader (download, 1.7MB)
1. Insert the Mac OS 9 Install CD into the Powerbook’s CD-ROM drive and restart while pressing the “C” key to boot from the CD.
2. When booted from the CD, launch Drive Setup from the Install CD’s Utilities folder. Create two partitions on the Mac’s hard drive; one just large enough to hold a minimal installation of OS 9, and the rest for Ubuntu Linux. In my case I created one 300MB HFS partition and named it “OS 9”. The rest of the Powerbook’s remaining 3.5GB leave unallocated for now — this will be utilized and properly formatted by the Guided Partitioning in the Ubuntu installer later on.
3. After partitioning, quit Drive Setup and install Mac OS 9 on the 300MB HFS partition. Instead of an Easy Install, custom install just the core system plus the Internet applications; you’ll need a browser to download BootX later on in the process.
4. After installation, reboot into OS 9, fire up Internet Explorer, and download BootX from the link above. Unstuff the BootX.sit file with Stuffit Expander included with OS 9. If you’re using OS 8.x, you’ll also need to update your Stuffit Expander version to be able to unstuff BootX. BootX consists of a Control Panel and a System Extension. Drag and drop these on top of the OS 9 System Folder. The Finder puts the files in their proper places.
5. Insert the Ubuntu 5.10 Breezy Install disc. Create a folder called “Linux Kernels” on the top level of the System Folder. From the Breezy disc’s Copy the file “vmlinux” from the Ubuntu Breezy disc’s /install/ppc folder to the System Folder/Linux Kernels folder. Copy the “initrd.gz” file from the Breezy CD’s boot folder to the top level of the System Folder. Rename the file to “image.ramdisk.gz”.
6. Now launch BootX from Apple Menu -> Control Panels. Verify that System Folder/Linux Kernels/vmlinux is the selected Linux kernel. Click the Options button, choose the “Use Specified RAM Disk” option, and select System Folder/image.ramdisk.gz as the RAM disk.
After specifying these settings in BootX, you’ll want to click the Save To Prefs button to, um, save your BootX settings to its Preferences file and have it use the same preferences each time you boot Linux.
A word about video kernel arguments: if you google around, you’ll find a lot of discussion about Powerbook G3 Wallstreet video issues with Linux. Most guides you find online recommend specifying kernel arguments in BootX to get video to display properly in Linux. For example, this one was suggested as a proper video mode for my model of Powerbook G3 wallstreet (it didn’t work in my case):
This single issue can become very confusing to the newbie, and was nearly enough of an obstacle in my experience to cause me to abort the whole project. This is because there appear to be over a dozen different possible video kernel arguments for the Powerbook G3 Wallstreet, and none appeared to work in my particular case. Fortunately in my case, I was able to install and operate Ubuntu Linux successfully without having to specify any video kernel arguments — the worst video issues I got were a few vertical lines of distortion during the installation process. Once Linux was installed, X and Gnome displayed just fine at 1024×768 pixels and thousands of colors, the default display settings for this model of Powerbook G3 Wallstreet. For the record, I found this site the most useful in terms of getting to understand the whole issue of Powerbook G3 video kernel arguments.
7. Now comes the moment of truth — reboot the Mac, watch the extensions march, and BootX should soon interrupt the OS 9 boot process and offer the choice to continue booting OS 9, or switch to Linux. If you don’t make a selection, whichever is the default selection will be chosen for you in a few seconds.
Choose Linux, and you should leave the colorful and graphical world of OS 9 for the white-text-on-black environment of the Linux installer. Things should proceed smoothly, but if you suffer a kernel panic at this point (I did, several times), you need to reboot and add “root=ramdisk” (without the quotes) to BootX’s More Kernel Arguments field and try rebooting the Linux installer.
8. Now you should be making your way through the Ubuntu Linux installer. I’ve read some people complain about the fact that the installer is not graphical, but in my experience it was pretty self-explanatory and quite easy to follow, so I didn’t really care that the installer was not graphical. Just answer all the questions and supply all the information required by the installer and you’ll be fine.
The one thing I should mention is that when it comes time to partition the Powerbook’s hard drive for Linux, do use the Guided Partitioning option, and tell the partitioner to employ the largest free space on the hard drive as the space to be partitioned and formatted. The Ubuntu partitioning utility will automatically create at least two partitions; one for the root filesystem, and another for the swap area. Make sure to note the names of two hard drive partitions: one that contain Mac OS 9, and the other which has been designated as the target for the root Linux filesystem; you will need this information later on. In the case of my Powerbook, the OS 9 partition was hda8, and Linux root partition was hda9. Yours may differ.
9. Toward the end of the Linux installation process, you will receive an error message that the Grub bootloader could not be installed. This is not a big deal, because you have already installed a bootloader in Step 4 of this procedure. However, this is your cue for the trickiest part of installing Ubuntu Linux on an Old World Powerbook G3. If you don’t do this bit, your entire Ubuntu Linux installation will fail.
Here’s why this is necessary: the Linux kernel and ramdisk image on the Ubuntu Linux install disc will boot the Linux installer, but will not boot Linux after it has been installed on the Powerbook G3 Wallstreet. Therefore, after installing Linux but before rebooting the machine to run Linux for the first time, it is necessary to copy to the OS 9 partition the Linux kernel and ramdisk image that have been custom-created for this particular Powerbook G3 Wallstreet and installed on the root partition. This step is absolutely essential to being able to boot Linux after installation.
Note: I must acknowledge this page as the most helpful source of this portion of these instructions.
Press Option-F2 to call up a command line terminal. At the prompt, type the following commands followed by Return:
mount /dev/hda8 hfs -t hfs
This command creates a directory named “hfs” within the /target directory, and mounts the OS 9 partition (/dev/hda8, which we earlier identified in step 8 ) in the /target/hfs directory.
cp boot/vmlinux hfs/System\ Folder/Linux\ Kernels/vmlinux
cp boot/initrd.img hfs/System\ Folder/ramdisk.image.gz
The first command copies the Linux kernel file “vmlinux” inside the /target/boot directory to the Linux kernels folder inside the System Folder on the OS 9 partition, overwriting the previous vmlinux from the Ubuntu PPC Install disc. The second command does the same to the initrd.img file in/target/boot, renaming it “ramdisk.image.gz” and overwriting the file of the same name in the OS 9 System Folder. I should point out, however, that in my case these commands did not work entirely as written; I had to manually cd to the /target/boot directory and copy the files from there to the /target/hfs directory. A minor glitch that was easily surmounted.
Once you have verified that both the Linux kernel (vmlinux) and ramdisk have been copied to their respective proper places within the OS 9 System Folder, you can press Option-F1 to leave terminal and return to the Ubuntu linux installer.
10. Reboot the Powerbook when prompted by the Linux installer. The OS 9 extensions will march, then BootX will pop up once more. Press the tab key to interrupt BootX’s process of automatic boot after a few seconds. Now you have to edit the “root=” kernel agument in BootX’s More Kernel Arguments field to point to the hard rive partition which contains Linux; in my case, /dev/hda9 (yours may differ). So my “root=” looked like this:
Once edited, click the Save to Prefs button so BootX remembers this root setting each time the machine boots.
11. Now click the Linux button, and the Powerbook G3 should being booting Linux for the first time and continue the installation until you finally get to a Login screen.
That’s it: Ubuntu Linux should now be properly installed and running on your Old World Powerbook G3 wallstreet. I welcome your comments and revisions to make these instructions even better and easier to follow. Let me know how Ubuntu Linux is running on your Powerbook G3 or other older Macintosh.