Sunday, June 6, 2010

Yellow Dog - 2002 eMac Pt 2

Links: Open Firmware discussion


Round two of the Yellow Dog Linux installation into a vintage eMac. At this point, the variables had settled down to PPC idiosyncrasies around disk partitioning, boot loading, and firmware keystrokes. Several weeks earlier, in an earlier post, I thoroughly cleaned and inspected the eMac physically. This post is more about the installation. The overall order:
1. get yaboot (mac-ish lilo/grub) operational and boot a kernel
2. partition using mac-fdisk
3. make file systems on the linux specific areas
4. install core packages and modules (eg. network)
5. packages
So, pretty standard. The only reason for blogging this are idiosyncrasies.

yaboot
The first thing to consider was the "SuperDrive". Initially, I thought it was able to read DVD's, making an easier installation, but a second check on the specs showed it to only read and write CD's. Further, I had read on several sites that one couldn't boot from the drive unless jumpers were moved to make it the master drive. I was messing with CD drive jumper for quite a bit until I realized it would boot fine if I had the correct Open Firmware keystrokes. The two greatest of these were:
* holding "c" to boot from the CD. Holding down "c" during start-up directly loads yaboot from a CD. No jumper changes were necessary.
* apple+option+o+f for Open Firmware access. This is a much more analytic approach, since a person can stay in the Apple firmware and check settings and so forth before deciding to access their boot CD. When it's time for that, I used
boot cd:\\yaboot
Other commands allow a person to check the CD's files first
dir cd:\\
and there are others listed here.


disk partitioning
The problem here was making sure Linux could see the Mac partitions properly and that the hard drive was consistent with what the Mac expected to see at boot time. I hadn't bothered to read this and simply used my (previously) reliable cfdisk approach. Ineffective. Mac cannot boot without Mac-specific boot areas defined to its BIOS. One can use cfdisk to start that process, but cfdisk and fdisk can't reliably define all 4 or 5 partitions (Mac uses 9 partitions with its own OS!) in a Mac protocol. Even if you start with cfdisk, you'll need to finish it with mac-fdisk. I decided to learn how to do the entire process in mac-fdisk, just to limit the number of applications involved. That said, mac-fdisk has a learning curve.
mac-fdisk

continuing problems - Ubuntu
The Yellow Dog continued to fail installing. I then attempted Slackintosh, which also failed. I then attempted Ubuntu. It failed. The Ubuntu fail, however, was traceable to a specific problem. I logged a bug about it and waited for an updated daily build (Maverick version). The daily build was repaired, however, this time the daily build was too large for a CD! Since this older Mac only has a CD player, not a DVD player, I was limited to a USB install. This is extremely complex, before you know the tricks. One of those "easy when you know how", "difficult to find information to learn how" issues. A day of googling and trial and error was involved. I was irritable, I'd already put in a couple of days on various PPC CD-install attempts.

I had the oversized iso, but I had to put it on the USB. Should I leave it in the iso format or extract the files from the iso? Hard to tell from Googling. I decided to go with extracting the files. I had no app to extract the files from the iso. This meant I had to mount it. I went into the directory where I downloaded the iso, made a temporary folder there, and mounted the iso in there to get at the files.
$mkdir temp
$ sudo mount maverick-alternate-powerpc.iso temp -o loop
$ cp -r * /media/usb1/

I got a few errors about not being able to make symbolic links
cp: cannot create symbolic link `/media/usb1/dists/stable': Operation not permitted
cp: cannot create symbolic link `/media/usb1/dists/unstable': Operation not permitted
cp: cannot create symbolic link `/media/usb1/ubuntu': Operation not permitted
I made a note of their targets and went into the USB disk and (re)created the softlinks there manually:

$ cd /media/usb1/dists
$ ln- s maverick stable
(If you make a mistake, use unlink {link name} to delete the soft link, then remake it.) HOWEVER, I was thwarted yet again because the USB stick was formatted in FAT32, which does not allow for the creation of symlinks. So far, thwarted about 6 different ways on this install. Since Open Firmware will only read HFS, there is a Catch-22; how to copy files that need to be read by the Linux kernel on a USB that needs read by Linux.

Conclusion: It appears that the only f*cking way to do this Ubuntu install, since it's oversized for a CD, is to purchase a DVD player, burn the iso to a DVD, and go that route. Wow.