Installing Ubuntu Breezy Badger on an OldWorld? G3 PowerPC.


I got given a G3 Server a while back, and finally got around to making a mac-to-VGA adapter for it. Specs are 300MHz PowerPC, 192M ram, 5G SCSI drive. Plus the usual on-board serial ports, network, sound, DTB keyboard and single button mouse. It was running MacOS9 and came with MacOS8 install CD's. In the time I've had it I've tried Debian, Warty, Warty kubuntu and most recently Breezy kubuntu with a nice OSX-like theme (it looks a lot like OSX, but Cairo informs me it doesn't behave at all like their school Mac's so I guess I need some time on a real OSX desktop to get the behaviour right. I've never used OSX.)


Boot up the MacOS install CD and run the partition tool. Make a single partition just big enough to hold MacOS and leave the rest of the drive unallocated. I allowed 200M but it's only using 110M so this could have been smaller, and it doesn't need to be any bigger. Install MacOS, leaving off all the optional components. The only thing you need is Stuffit and a browser which are both part of the minimal MacOS8 install.


Set up TCP/IP and download BootX or just copy it from another network-connected machine using floppy or CD. For some reason (possibly the very old version of Stuffit that I had) I could only get version 1.1.3 to work, but it does the job. Drop the sit archive onto the StuffIt? program (it's hidden somewhere in the Internet Tools folder) to unpack it, open the resulting folder and drop it's contents into the System Folder to properly install it. It will configure itself as a startup and Applemenu item.

Insert the ubuntu PPC install disk and navigate to the /install/powerpc folder. Copy vmlinux (the linux kernel) to “System Folder/Linux Kernels”. Copy initrd.gz (the init ramdisk image) to “System Folder” and rename it to ramdisk.image.gz

BootX should appear on the apple menu, and also run on every reboot. When you run BootX it should have “Use Ramdisk” checked and show vmlinux as an available kernel. If this is all in order go ahead and click the “Linux” button and in a short while you should be looking at the regular Ubuntu install dialogs.


When it gets to partitioning the drive Ubuntu will suggest using the entire disk for Linux. Don't do that because you still need MacOS to run BootX to boot Linux. Select the “Use Free Space” option or partition manually. I set up /dev/hda6 as root using the reiserfs filesystem, and later added a small swapfile. None of this is particularly important as long as you remember where you put your root. You will need to know later.

Copying /boot to the HFS System Folder

The rest of the install is fairly straightforward until you get to the part where Ubuntu tries to install a bootloader. GRUB and Lilo don't work on OldWorld? Macs, so Ubuntu will warn you that no bootloader can be installed. Switch to a second console at this point (Option-F2) and use “df” to see where things are currently mounted. In my case the newly installed ubuntu was on /dev/sda6 (The installer calls it /dev/scsi/host0/bus0/target0/lun0/part6, but this is just an initrd thing, by this stage in the install /dev/sda devices will work) mounted as /target and the HFS filesystem was /dev/sda5. Make a mountpoint and mount the HFS filesystem.

cd /target
mkdir hfs
mount /dev/sda5 hfs -t hfs

You might also want to add an entry to /etc/fstab so it will be mounted when you reboot. This makes updating kernels easier in the future.

echo '/dev/sda5 /hfs hfs defaults' >> etc/fstab

Now copy the kernel and boot image over;

cp boot/vmlinux hfs/System\ Folder/Linux\ Kernels/vmlinux
cp boot/initrd.img hfs/System\ Folder/ramdisk.image.gz

Option-F1 to get back to the installer, and tell it to go ahead and reboot.

When the machine reboots the BootX dialog should come up straight away. Hoary seemed to find it's own rootfs but Breezy doesn't, so type "root=/dev/sda6" in the kernel parameters box. Even though there's already a box for "root device", that doesn't seem to get passed to the kernel, I don't know why not. If you want the pretty ubuntu splash screen then adding "quiet splash" to the kernel parameters should do it. Press tab until the Linux button is highlighted then click on the “Save as default” button. Then click Linux.

Ubuntu should proceed through the rest of the install as usual.

Other hints

If you want a more OSX-like desktop install KDE (either download it in synaptic or install from a kubuntu CD).

If you only have a one-button mouse, F11 and F12 on the keyboard will act as the middle and right mouse buttons.