by Jérôme Cornet

 

Since I started to install linux, I found a lot of problems due to unsufficiant or unclear documentation. This unofficial Guide explain the linux installation step by step on PowerMacintosh™ Systems (such as 5400,6400,6500,7500,8500...). The linux installation on others PowerPC™ Systems (BeBox, IBM, Prep...) is not explained but some sections apply for this installation. I do not take responsability for any damages, or loss of data that could results. This is at your own risk.
Section I: General Informations
  • What is Linux?
  • What is the difference between LinuxPPC, Linux P-Mac and MkLinux?
  • What is a distribution?
  • System Requirements

Section II:Getting the files

  • Required Files
  • The Boot Variables application
  • Installer.coff & vmlinux.coff
  • The RedHat directory
Section IV: The RedHat Installer
  • Booting the RedHat Installer

Section V: Linux (misc)

  • Booting Linux
  • Installing XWindows - Important
Section III:OpenFirmware
  • What is OpenFirmware?
  • OpenFirmware Settings


Section I: General Informations


What is Linux?


Linux is an operating system. It features all the things you can expect from a modern OS: modern architecture (kernel, daemons, servers...), preemptive multitasking, multithreading, multiuser ability. The Linux Operating System is distributed under the Gnu General Public License (GPL): that means that this OS is FREE and that you can get the sources and re-compile it as well.

Consequently, all software for linux (except some commercial programs) is free and you can get its source code (except Netscape Navigator which is free but provided whitout the sources and some author that could not provide the source code of their contribution), re-compile it or modify it.


What is the difference between LinuxPPC, Linux P-Mac and MkLinux?

Linux has been created on a 386 PC so it was originally for PC. But some intelligent people ported it to PowerMac (as the author authorized it by the GPL). There is 2 ports of Linux for PowerMac: LinuxPPC and MkLinux. MkLinux is a port realized by Apple and the Open Software Fondation (OSF). LinuxPPC is a port realized by Paul Mackerras.

The difference is that MkLinux does not run on Performa serie and on MacOS clones which has an Internal IDE HardDisk. It requires 604 & 604e machines such as 7500,8500,9500 in order to run. LinuxPPC runs on a lot of PowerPC systems: BeBox, IBM,Prep, PowerMacintosh and on the Performa series. See the section System Requirements for additional informations. LinuxPPC is also faster than MkLinux because it is a native port which means that it would run only on PowerPC™ Systems whereas MkLinux could easily be ported to others systems.

Linux P-Mac refers to LinuxPPC installed on PowerMacintosh. In fact, there are very little differences between LinucPPC and Linux P-Mac. If you get Linux from a LinuxPPC directory, you should also get the files into the PowerMac directory: don't panic, this would be explained in next sections.


What is a distribution?


This is some files put toghether on a CD-ROM or on ftp. There is several distribution in the PC World: RedHat, Suse, etc. We would use a port of the RedHat disitribution.


System Requirements


Although I said that LinuxPPC runs on a lot of PowerPC Systems, you should check if your computer is in the list. This list apply only for PowerMacintosh Systems (Apple and Clones) and is taken from the file STATUS available at ftp://ftp.linuxppc.org/pub/linuxppc/powermac/

NEW! PowerMacintosh G3 are now supported! See in this list.

Vendor Machine Does LinuxPPC work? Does X work?  

Known Problems

Apple 3400 Yes Yes problems with combined ethernet/modem card
Apple 4400 Yes Yes
Apple 5400 Yes Yes
Apple 5500 Yes Yes
Apple 6400 Yes Yes See below
Apple 6500 Yes Yes
Apple 7200 Yes Yes
Apple 7220 Yes No?
Apple 7300 Yes Yes
Apple 7500 Yes Yes
Apple 7600 Yes Yes
Apple 8200 Yes Yes
Apple 8500 Yes Yes
Apple 9500 Yes Yes See below
Apple 9600 Yes? No
Apple
PowerMacintosh G3
Yes
Yes
Need special installation. See linuxppc.org
PowerComputing PowerBase 180 Yes Yes
PowerComputing PowerBase 200 Yes Yes
PowerComputing PowerCenter 132 Yes Yes
PowerComputing PowerCenter 150 Yes Yes
PowerComputing PowerCenter Pro 180 Yes Yes
PowerComputing PowerCurve 120 Yes Yes
PowerComputing PowerTower 180 Yes Yes
PowerComputing PowerWave 120 Yes Yes
PowerComputing PowerWave 132 Yes Yes
PowerComputing PowerWave 150 Yes Yes
UMAX C500/180 Yes Yes
UMAX J700/180 Yes No?
UMAX S900/180 Yes No?
UMAX Apus 2000 Yes Yes CD-ROM doesn't work
APS M*Power604e/200 Yes Yes
Motorola StarMax 3000 series Yes No Problems with CD-Rom
Motorola StarMax 4000 series Yes No

Updated: 3/06/1998

APS Technologies and PowerTools manufacture Mac clones using the same motherboards as the StarMax machines, so these should work also.

Some users have reported that on the Apple Powermac 9500, it is necessary to move the video board to the second slot from the top in order for it to work.

When booting off SCSI hard disk, the kernel finds the partition it booted from automatically, but it doesn't when booted from an IDE disk. In this case you need to specify the root partition in the Open Firmware boot-file variable or in the /etc/quik.conf file.

On the Performa 6400, it is not possible to boot from a SCSI disk, presumably because of problems in Open Firmware's MESH driver. You can boot from a partition on the internal EIDE hard disk, or from floppy or ethernet.

Various people with machines with ethernet cards based on the DEC 21041 ("tulip") have reported problems with timeouts and inability to transmit.

If your machine isn't listed above, and it's an older model(i.e. introduced in 1995 or earlier), or one that doesn't have a PCI bus, then almost certainly Powermac/Linux won't run on it. Machines in this category include the PowerMac 6100, 7100, 8100, the earlier Performas (e.g. 5200, 6200), and the PowerBook 5300 and 1400. Check out MkLinux to see if it will run on your machine.

If your machine is a new model PowerMac or clone, then probably Powermac/Linux will run on it, although you will not be able to run X unless the video display card you have is supported.

I recommend that you see the web page at http://www.duke.edu/~wj/linux/ for more
information on running Powermac/Linux on StarMax machines.


Section II: Getting the files


Required Files


You will need:

You can already have those files if you have a LinuxPPC CD-Rom: in that case, jump to Section III

If you have not those files you must get them by ftp. There is two main adresses to get linux:

All the files must be downloaded in BINARY mode.


The BootVariables Application
Step #1: Get bootvars.sit.hqx. Then unstuff it with Stuffit Expander™ and you should now have an application named "Boot Variables".


Installer.coff & vmlinux.coff
Step #2: Get Installer.coff. There is a lot of differents installer.coff available thru the Internet but I think it there not matter using one or another.

Step #3: Get vmlinux.coff and vmlinux


The RedHat directory

Step #4: Create a folder named "RedHat" (the case is important) at the top level of your hard disk. Create two folders inside the "RedHat" folder named "base" and "RPMS".

Step #5:Download the content of the base folder on the ftp server (full url: ftp://ftp.linuxppc.org/pub/linuxppc/powermac/base/ )into the base folder located on your hard disk.

Step #6:Now look at the file named "comps.pmac" into the base folder with a unix-compatible text editor such as BBEdit. This file lists all the files that must be present in the "RPMS" folder. Don't panic: you don't need all the files.

The files are grouped by section: *beforeskel*, Base, Basic Network, etc. If you want to run a minimal linux version (without X) you need the files listed into the *beforeskel* and Base. If you want additional support such as network, X or development you will need additionally the files in the respective groups.

Step #7: So, download the files needed from the RPMS folder on the ftp server (full url: ftp://ftp.linuxppc.org/pub/RedHat/RPMS/ ) into the RPMS folder located on your hard disk. This would be very long: remember: get the files in binary mode. Don't use files downloaded the last year: you need "fresh" files. You can get the files on several weeks.

If the long download is complete you now need to replace some files which are specifics to the PowerMacintosh Platform.

Step #8: By ftp, go into the powermac alias then open the RedHat folder, then open the RPMS folder (full url: ftp://ftp.linuxppc.org/pub/linuxppc/powermac/RedHat/RPMS/). There are several files in this folder which have the same name as files which are in your own RPMS directory: replace your files with those which came from the server.

You are now ready to install linuxppc on your machine! Congratulations! See the next section to install linux.


Section III: OpenFirmware


What is OpenFirmware?


OpenFirmware (OF) is a piece of software located in ROM which launch the MacOS at powerup and which is able to launch others systems. Unlike MkLinux, LinuxPPC uses OpenFirmware to boot. This is why old PowerMacintosh such as Nubus PowerMacintosh can't boot LinuxPPC: they haven't got OpenFirmware in their ROM.


OpenFirmware Settings


OpenFirmware can be configured by two ways: from the OF Command Line and from the Boot Variables application. The OpenFirmware Settings are stored in the PRAM.

Configuring OF from the Command Line requires to change OF Output-device variable. If you change this variable, linux won't boot for a mysterious reason. However, if you know that linux is booting with such settings, read the official INSTALL file where more about OF can be found.

So, we'll use the Boot Variables application. Launch it. A window appear:

Image

The boot-device is currently set to /AAPL,ROM which means that the mac will boot to Apple Roms at powerup. The variable can be set to different values such as:

Click the "All Variables" check box. The window resizes:

It is important not to modify unknown items. The only one item that we'll use is: input-device. This variable is by default set to "ttya". That means that the command line interface of OF will be issued thru the modem port with current settings: 38400 baud, 1 stop bit, no parity (no specifics flow control or handshake).

Those settings are restored every time the pram (aka the parameter ram) is zapped. If you let input-device set to ttya, and if things goes wrong (or if you want to abort the installation) you won't be able to restart your mac under MacOS so you need to set the input-device variable to kbd which means "keyboard". I highly recommend that you let the ouput-device variable set to ttya because if you set this variable to screen (to dislpay the OF command line on your screen), the RedHat installer will not boot.


Section IV: The RedHat Installer


Booting the RedHat Installer


The following steps are for those who downloaded the files:

length base
1: Apple partition map: 63 1
2: Apple driver ATA: 54 64
3: Apple driver ATA: 74 118
4: Apple patches: 512 192
5: Apple HFS: 2050938 704
6: Apple HFS: 1282822 2051642
7: Apple free: 10 3334454

In that case, we have an ide disk and two partitions: 5 holding MacOS and 6 intended for linux. 7 is the free space unused and 1,2,3,4 are apple disk drivers.

Type "d" followed by the partition number intended for linux (in this case: 6) then type "p":

length base
1: Apple partition map: 63 1
2: Apple driver ATA: 54 64
3: Apple driver ATA: 74 118
4: Apple patches: 512 192
5: Apple HFS: 2050938 704
7: Apple free: 1282822 2051642

Now create the two partitions for swap and root by typing "n", followed by the respective base and length values (in blocks), followed by a name for the partition. Be careful to create a swap size that is less than 128 Mb - Linux has a problem with bigger sizes.

The final partition map looks like this:

length base
1: Apple partition map: 63 1
2: Apple driver ATA: 54 64
3: Apple driver ATA: 74 118
4: Apple patches: 512 192
5: Apple HFS: 2050938 704
6: Apple Unix SVR2: 250000 2051642
7: Apple Unix SVR2: 1032822 2301642

6 holds the "swap" partition which is necessary for running the linux "virtual memory" which is always enabled. 7 holds the "root" partition which is the main linux partition. If your root partition is less than about 250Mb or so, you will need to create a separate "usr" partition of at least 200MB (assuming you want to install X; it's possible to install a minimal system in less than 100MB).


Section V: Linux


Booting Linux


There is several ways to booting linux but wed'll talk only of the most common ways. You need the vmlinux and vmlinux.coff files downloaded in binary mode (see the beginning if you have skipped those steps).

In futur, to avoid booting from the floppy disk, you will need to copy vmlinux to your root partition.


Installing XWindows - Important


The RedHat Installer theorically installs XWindows when you choose "XWindows System" in the packages needed to be installed. But the version provided does not work properly on PowerMacintosh. You have to download another file called "Xpmac.gz" located only on ftp.linuxppc.org (samba does not provide an up-to-date mirror). The full URL is:

ftp://ftp.linuxppc.org/users/atong/Xpmac.gz

This file contains a fonctionnal version of XWindows for PowerMacintosh but it needs that you have previously installed XWindows with the RedHat installer. Here is an example of procedure to follow to install Xpmac.gz:

You can now enter XWindows with "startx".

XWindows can refuse to launch with some errors reported. This is probably due to your kernel. With recent Xpmac you should boot with the very latest kernel available on ftp.linuxppc.org.


That's all folks!

Just e-mail if you have a problem!

Accueil - Aldorande.net