[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Installing Debian PPC 3.1rc2 Sarge onto a PowerMac 8600



Hello All,
 I spent my last weekend installing Linux/GNU OS onto my PowerMac
8600 250MHz/385MB.  I'm brilliant (reads: I don't read all of the
documentation, especially when I should, so feel free to correct me)
and slogged through an attempt of installing OpenSuSE 10 PPC without
success.  The stock kernel would not boot (I was using BootX).  It
displayed some information and then the screen went blank. (In case
you're wondering I chose OpenSuSE, I use it as my Linux desktop at
work)

Searching on the internet, I saw the nice distro list at
http://penguinppc.org/about/distributions.php.  This list does not
include SuSE in the list of vendors that support OldWorld machines.
Open SuSE's wiki on the other hand has a page
(http://en.opensuse.org/Booting_on_PowerMac_%28OldWorld%29) covering
an OldWorld install.  After looking at the candidates on the
PPC+oldworld list I chose Debian PPC.

I downloaded the netinstall disk from GA Tech
(http://www.gtlib.gatech.edu/pub/debian/) because GA Tech rules.  Of
course I can't find the ISOs anymore.  I guess I downloaded them from
somewhere else.  Anyways, I'm rambling.  This post is for anyone else
who is doing the same thing and for others to correct my stupidty. :)


Steps:
1. I removed all non-stock equipment, Sonnet Tempo ATA 100 PCI (with
disks) and Yamaha CD Burner. -- This avoided problems with hardware,
but I had to deal with getting those device to work later (not hard
but not easy if you don't know your way around Linux).  Knowing now
that these devices will work right off the bat, I should have
installed with them in.  The Sonnet Tempo ATA 100 card uses pdc202xx
kernel modules based on the Promise chipset (google search and you
will find more information)

2. Clean installed OS 9.1 onto the machine, partitioning the 2GB drive
into 3 partitions. 512 MB HFS (not extended) for the OS, 512 MB as
AU/X Swap and 1.5GB as AU/X Root.  You can make the MOS9 partition
smaller, but that's your choice.  Since I was adding two more IDE
disks with 30GB and 40GB space was not my concern.

3. Downloaded and installed BootX.  I read the BootX instructions
which only covered uptil the initrd part.  I pulled the kernel
(/install/powerpc/vmlinux) and initrd (/install/powerpc/initrd.gz)
from the install CD's boot directory /install/powerpc/ (which was
kinda odd since I'm use to looking in the /isolinux directory used in
X86 installs).

4. BootX options.  See the initrd option was easy since it was in the
instructions.  The rest of those options are confusing.  With the
default 8600 settings you want to use "Force video settings" option
(no idea what that "Force SCSI" does.  Check the box for "No video
driver" on the main screen.  Don't add anything to the kernel's
command line. (I have tried the same with the OpenSuSE 10.1 PPC
install disks but they don't work)
  Even with these settings, it take a while for the screen to come
back after the initial boot messages (which won't mean anything to
most people - anyone know what I need to get the serial output off
this machine?).  You will be presented with a wonderful language
selection screen.

5. Go though the standard installation stuff.  Now in all seriousness,
I forget what the partitioning screens look like.  But since I already
had partitions for swap and root (aka '/') I didn't have to do
anything else except choose to format them.  The installer forced me
to use EXT2 as my root filesystem (I forgot why).

6. Now, I finished the installation of software packages and the
installer went straight to using "quik" an OldWorld boot loader that
gets you past BootX.  I skipped that since I could not find anyone
using it on my hardware.  Moving out of that screen I came to the
installer's blue main menu.  I tried using the 'option' key - F2
('alt' on a winDOwS keyboard) to switch to another virtual terminal
like some other install guides mentioned, but that didn't work.  I
could however use the installer's main menu option to open a terminal
shell.

I needed to open the terminal shell to copy the newly install kernel
and initrd onto the MacOS9 disk's "Linux Kernels" folder.  Now here is
where my problems started.  Every single guide tells you to mount
/dev/sdaX (where X is your MacOS9 partition, in my case it was
/dev/sda6) and happily copy them over.
The following is the happy method that people claimed works (remember
to replace and XYZ):
mount -t hfs /dev/sdaX /mnt
cp /target/boot/vmlinux-XYZ /mnt/System\ Folder/Linux\ Kernels/
cp /target/boot/initrd-XYZ /mnt/System\ Folder/Linux\ Kernels/

My reality was that /dev/ did NOT contain the necessary devices files
(sda6 or sda8), neither could the running kernel read HFS (this
command shows this "grep hfs /proc/modules").  The running kernel
could see /dev/sda6 and /dev/sda8 ("cat /proc/partitions").  "df -h"
on the other hand gave me a nasty device path
/dev/scsi/host1/bus0/lun0/part8 (yikes!).  I tried mounting the
partition using that long path, but ran into the problem of
unsupported filesystem.  So I tried booting with BootX without the
initrd using "root=/dev/sda8" as a boot option, but that didn't work.

Well, what to do?  I was stumped initially, because I didn't have
filesystem support in my kernel to mount the partition, nor did the
standard device names work and I was missing needed utilities.  Turns
out, that I had just installed everything I needed!  The Debian
installer mounts the installation partition as "/target".  The running
kernel, 2.6.8 is the same as the installed kernel which meant I could
simply "insmod /target/lib/modules/2.6.8-powerpc/kernel/fs/hfs/hfs.ko"
to get HFS support. :)  To get access to all of my installed binaries
I gave myself a chrooted bash shell
"chroot /target /target/bin/bash".  After giving myself the chrooted
shell, I could use "mount -t hfs /dev/sda6 /mnt" to mount the MacOS9
partition!  This worked because the chrooted shell had /dev/sda6
mapped to the same path as /dev/scsi/host1/bus0/lun0/part6.

I copied over the initrd and vmlinux files and rebooted.

7. I tried BootX without an initrd again, but that didn't work.  I
needed the initrd and unchecked all the other options.  The machine is
now successfully installed. :)

Any thoughts or questions? (clarifications?) Here's hoping this helps
someone. :)
thanks,
TuskenTower



Reply to: