Debian/m68k GNU/Linux 2.1
Installation Instructions for Macintosh (v1.5)
Michael Schmitz, March 6, 1999
(derived from Debian 2.0 Amiga install guide by Frank Neumann)
A hopefully always up-to-date version of this document should be online at the Linux/m68k web site.
Ok, so you think you want to try Debian, dive into the wonderful world of free software,
world-wide programming collaboration and soon-to-come world domination? Fine. Your first test
will be to install the Debian base system on your Macintosh, and I hope this document will help
you in getting that step done.
So, without any further ado, these are the absolutely vital steps you need to take:
Before even thinking of starting to install Debian on your Macintosh, you should make a BACKUP
of your current system. It's not like Debian will erase all data on your harddisks immediately
when it starts up, but you can damage a lot easily if you are new to Linux or Unix in general. If
you have a DAT, MO or spare harddisk, this is the chance to use them for creating a backup.
Check out if your system is suited for Linux/m68k - please read the Linux/m68k FAQ, available
e.g. at http://www.linux-m68k.org, and check the
Macintosh project pages at http://www.mac.linux-m68k.org.
Get the MacOS tools required to partition your disk, dump
floppy images and other tools you might need. Apple software can be found at download.info.apple.com
A word of warning (and I mean it): don't let yourself be fooled into thinking that installing
Debian on a Macintosh is easy, or even possible with your particular model and configuration,
just because Debian/68k happens to support Macintosh. The Mac port of Linux-m68k is less than
two years old, and even though kernel development made considerable progress since the first
Mac was booted by Alan Cox, there's still a lot to do, and a lot of bugs may be lurking out
there yet. The Mac project web site lists the supported models, if your model isn't listed,
assume it's not supported yet, ask on the mailing list, or give it a try, but please don't be
disappointed if it doesn't work. Linux on Mac is strictly experimental.
If the kernel supplied with the Debian installation files doesn't work for you, check for updates.
Contrary to recent press coverage, Linux won't run on machines without paged memory
management unit, including all 68000 based machines (the famous 'SE running Linux' really was
Get all required files from one of Debian's FTP sites,
like ftp.debian.org, ftp.de.debian.org etc. A list of mirror sites can be found
No matter what mirror site you use, the path should always be /pub/debian/dists/slink/main/disks-m68k/current. These are the files you need:
- mac/Install.sit.hqx (StuffIt archive of the installation files), or
- mac/Debian-m68k-2.1-Mac.img.hqx (DiskCopy 4.2 image of the 'rescue' floppy), and
- mac/resc1440.bin ('rescue' floppy image)
- mac/drv1440.bin ('drivers' floppy image)
The first two files are BinHex encoded for proper FTP transfer and unpacking on your Macintosh,
so you may need to use MacBinary mode for fetching them in Fetch or other MacOS FTP apps. If
your FTP app doesn't automatically decode BinHex format, decode these files using StuffIt
Expander or another MacOS decoder.
The other two '.bin' files are not MacBinary encoded, just simple binary
MS-DOS floppy images, so use simple binary mode for transfer. Using MacBinary mode will corrupt
You'll need DiskCopy 4.2 or later to create a MacOS floppy from the boot floppy image. If
you only have the resc1440.bin floppy image, you'll also need a program to dump this
MS-DOS format floppy image to a 1440k (HD) floppy in your floppy drive. I don't know of any
MacOS applications that will do this, so it might be easier to get someone with a Linux PC
to dump it to a floppy for you. Not all versions of PC Access can read a DOS floppy with Mac
Why bother with these floppy images anyway, when other documentation states that Mac
floppy drives are unsupported by Linux? First off, the Debian installer requires a MS-DOS
floppy images (the resc1440.bin and drv1440.bin files) to install the
kernel and modules later on. So you have to get these anyway; if you had to compress the
floppy images for transport to your Macintosh, you need to uncompress them now. Second,
using the floppy to boot the installation system saves you the step of setting the path to
kernel and ramdisk for the booter, in case you don't use the files provided on the CD-ROM.
Once you have installed the base system and want to continue installing other packages,
you can find these under the directories /pub/debian/dists/slink/main/binary-m68k
(core section), /pub/debian/dists/slink/contrib/binary-m68k (contributed packages)
and /pub/debian/dists/slink/non-free/binary-m68k (software which does not meet the
Debian Free Software Guidelines (DFSG).
Alternatively, get the official Debian/68k 2.1 CD set. The install files are unpacked on
Disc 1 in /install/mac/, the StuffIt archive is also in /install/mac/ and
base2_1.tgz is found in /install/.
Unpack the install.sit file to your harddisk (a subdirectory named "debian"
will be automatically created for you). I recommend to unpack the archive directly onto the
main directory of a partition that has at least ~ 10 MB of free space. If you chose to install
from the floppy image, just create a new directory named "debian".
Move the base2_1.tgz, resc1440.bin and drv1440.bin files into this same
directory ("debian"). Don't rename any files in that directory.
You can skip this step if you install from CD; you will have to copy at least the booter
and the kernel image to your harddisk at a later time.
Partition your harddisk (or rather prepare partitions for Linux): There is a
partitioning tool for Linux/m68k called mac-fdisk, but for now I recommend you
partition your disk using Apple's HD SC Setup utility or other disk tool. If your partition
editor doesn't have an option to edit the partition type, you can do this crucial step at a
later stage (from the booted temporary install ramdisk). A number of disk tools (mostly the
'Lite' or 'PE' editions) lack this functionality, so make sure you get the right tool for
this step. Apple HD SC Setup can be used for third party disks if patched as described in http://www.euronet.nl/users/ernstoud/patch.html.
The partition editor from the MkLinux project is at ftp://ftp.mklinux.apple.com/pub/wip/pdisk/latest/
and is available as m68k version. Tim Endres' DiskTool (available at the Mac68k FTP site)
does the job, as does FWB's HDT 1.8 (not the PE version though) and SilverLining (not the
Lite version). This list is not complete, if you know of other options, I'd appreciate a short
notice. I've only tested HD SC Setup and DiskTool, your mileage may vary.
When partitioning your disk, please keep in mind that Linux has to be launched by the 'Penguin'
bootstrap program, which is a MacOS application. Consequence: you will need a working MacOS
system to boot Linux, so don't destroy your MacOS startup partition in this step. If you need to
repartition your only MacOS partition to free space for Linux, make sure you have all necessary
media to boot and reinstall MacOS after partitioning, or get a spare disk instead. There is no way
to boot Linux directly from a loader in the boot sector of your disk on a Macintosh. Destroying
your MacOS partition means you will have to reinstall MacOS before you can start over again!
You should have reserved at least two partitions for Linux: One for the "root filesystem"
and one for a "swap partition". The size recommendations are:
- for the root partition:
absolute minimum should be 20 MB (this is just enough to install the base
system, and nothing else - probably enough for testing it, but not for really using
it); a reasonable system starts at around 200 - 400 MB, no limits upwards.
- for the swap partition
about twice as large as your main memory, but rather more than that. Especially
on systems with little main memory (like 8 MB RAM), don't go below 20 MB swap
Naming conventions: This is important because under Linux your partitions
have different names than under MacOS. This is the naming scheme:
- The first SCSI harddisk (address-wise) is named "sda".
- The second SCSI harddisk (address-wise) is named "sdb", and so on.
- The first IDE harddisk is named "hda", the second IDE harddisk is named "hdb", and so on.
The partitions on each harddisk are represented by appending a decimal number to the harddisk
name: sda1, sda2, sda3 represent the first, second and third partition of the first SCSI harddisk
in your system. MacOS uses a separate partition for the partition table and driver data, so
there will be more partitions around, usually partition 1 and 2.
Here is a real-life example: Let's assume you have a system with 2 SCSI harddisks, one at
SCSI address 2 and the other at SCSI address 4. The first disk (at address 2) is then named
"sda", and the second "sdb". If the "sda" harddisk has 5 partitions on it, these will be named
"sda1", "sda2", ..., "sda5". Analoguous for the "sdb" harddisk and its partitions.
So, now that we know the partition names, you can actually change their type from within
your partition editor so that the Linux installation program can detect them:
Start the partition editor, select the disk you want to use, select the "Partition Drive"
function and select/create the partition you want to use as the Debian root filesystem. For HD
SC Setup, you'll have to select 'Custom' partition scheme, and create partitions with the mouse
as needed. Debian needs A/UX type partitions to install on, 'A/UX Root' or 'A/UX Root Usr'
should be fine for the data partitions. You may need to delete partitions to create space for
new ones; HD SC Setup doesn't support just changing the partition type. DiskTool does offer
these choices but allows editing the partition type.
After creating the root partition, create a partition that is to be used as a swap partition,
and set the partition type to 'A/UX swap' instead.
- Your root and swap partitions do not need to be on the same harddisk.
- You can have more than one partition for files besides the root filesystem - this
even makes sense very often, like when seperating the user's home directories from the
system file area. If you want to use more partitions, prepare them just like the root
partition. (If you're only going to try Linux for a short time, it's enough to just
have a single partition for files.)
- You can also have more than one swap partition, though that's not seen very often.
- Write down the partition names (you know, the "sda1" etc. stuff) of all partitions
that you are going to use for Linux.
- At this point, please also write down the partition name (Linux-wise) of the
partition on which you have unpacked the "Install.sit" archive. You will need this
later for installation of the kernel, modules and base system.
When you have made all required changes, go back to the main window of the partition editor
and "Save Changes to drive". Think twice before actually clicking on "Yes" - have you chosen
the correct partitions? No viable data that could get lost now? Then click OK.
When you're back at the MacOS desktop, start the Linux installation process by double-clicking
on the "Penguin Prefs" icon in the "debian" directory. If installing from floppies, double-click on
the "Penguin Prefs" icon there. The Linux booter (Penguin) starts up, loads kernel and ramdisk
and starts booting without further ado. (If you want to examine or change the booter settings
first, hold down the 'command' key while starting Penguin.)
If starting the booter from the harddisk, you will have to set the path for kernel
(linux) and ramdisk (root.bin) correct for your system on the first start of
the booter. Start up holding down the 'command' key until the booter has finished loading and
reading the preferences file. Go to the "Settings" dialog (shortcut: command-T) and adjust the
path for kernel and ramdisk by clicking on the appropriate buttons in the upper right corner
of the panel. Kernel and ramdisk are in the 'debian' directory on the drive where you unpacked
the Install.sit archive. Save the settings to the preferences file in that directory
(using command-S) and boot using the command-B shortcut.
If installing from CD, double click on the "Penguin Prefs" icon in the /install/mac
directory on the CD. The path to kernel and ramdisk image should not require adjustment here.
After this, the screen will change colors, a few seconds of delay, and after that a black
screen with white text should come up, displaying all kinds of kernel debugging information. These
scroll by far too fast for you to read, but that's not important right now.
After a couple of seconds, the installation program should start automatically.
If you get up to this point, you can be quite confident that you will be able to install
Linux on your system. In case the installation program complains about not finding any disks
or partitions to install on, try a newer kernel or check your partition types again.
So, now we're getting somewhere. The Debian installation program will lead you through the
steps of preparing the partitions from the Linux side, unpacking and configuring the kernel
modules and base system, and finally rebooting. Some of the presented steps are not really
necessary (or even possible) on m68k platforms (the installation program is just the same as
on the i386 version of Debian, and some of the i386 features are not (yet) available in the
m68k version), so I'll tell you what you have to do at each step now.
Select Color or Monochrome display
If you use a black-and-white monitor, you might want to choose a monochrome display -
otherwise select Color. Use the cursor keys to choose what you want, then press Return.
This is just a screen with a few informations about Debian's goals, who built the rescue
Now we come to the main installation screen which lists all possible actions you can take,
with the next logical step always being highlit at the top of the list. I recommend to strictly
follow the suggested way.
Configure the keyboard
Depending on whether you have a extended or standard keyboard, select the one appropriate
for you with the cursor keys and Space, then move with Tab to the OK button and
Initialize and Activate a Swap Partition
When pressing Return, you will see a list of partitions that the installation program
has found as being prepared by you for usage as a swap partition. Probably there is only one
choice, and it should have the same partition name you wrote down under MacOS while you were
preparing that partition in your disk utility. If the installation program doesn't offer any
swap partitions to chose from, switch to a shell,
and run the command mac-fdisk -l. The output of this command should help you in
troubleshooting the problem.
If you have chosen to use several swap partitions, repeat the following
step for all of them:
- Press Return to accept the selected partition
- When asked whether you want to do a bad-block scan, you can safely skip this step,
so select "No" here using Tab and then Return. SCSI disks should not have
bad blocks, and manage to revector these automatically should some appear.
- When asked whether you really want to initialize this partition as a swap partition,
think twice, then, when being sure, press Return.
At this point the swap partition will be "formatted" -- that is, some information is written
to it to mark it as swap partition -- which only takes a second (you'll hardly be able to read
the text that appears at the top of the screen - ignore that for now).
Initialize a Linux partition
This is very similar to the previous step, but this time it's not about swap partitions, but
about "real" partitions which are supposed to carry files. Just as before, you'll be presented
with a list of partitions that the installer found to be valid as Linux filesystem partitions.
Again, for each of the partitions you have chosen to use, accept it by selecting it from
the list and pressing Return, skip the "Bad-block scan" and (when you are sure) select
"Yes" to format (initialize) the partition.
After that, you will be asked whether you want to mount the currently active partition as
root ("/") partition. Say "Yes" here at the first partition you use. Other partitions can be
mounted somewhere under this mount point afterwards.
Install Operating System Kernel and Modules
As I assume that you are installing from files on a harddisk, you will have to select
"Harddisk: Filesystem on the harddisk" here.
Next you need to specify the (MacOS) partition on which you unpacked the "install.sit"
After that you also need to enter the path to the directory containing the installation files -
in the simplest case (that is, if you unpacked the .sit archive directly into the main directory
of a partition), you just hit Return because "/debian" is already set as default for
the directory name; otherwise you will have to type the path yourself. It has to begin with a
"/", followed by the directory components leading to the files (e.g. "/tmp/newstuff/debian"
if the files reside in the directory /tmp/newstuff/debian/ on that partition).
If installing from the CD, change "/debian" to "/install/mac".
Next you are asked whether you want to select the files from a list or enter the path name
manually; you have to press Return here to select the installation files from a list of
choices. The installation program will not find only the correct and only available installation
files itself but offer HFS metadata files as well. In the example above, where you used /debian
as installation file path, the installation program will offer /instmnt/debian/.finderinfo and
/instmnt/debian/.resource before the correct path /instmnt/debian, so just scroll down twice
and hit Return.
The harddisk LED will blink for a while as the kernel and modules are unpacked onto the root
partition, and after that you get back to the main screen.
Configure Device Driver Modules
This step is only necessary if certain device drivers need to be loaded very early when
Linux starts up later; like, an Ethernet driver has to be pre-loaded so that the networking
can already be initialized at boot-time. For a stand-alone system you probably don't have to
configure anything here, but you should still select this item so that the installer can build
a list of available kernel modules. When you see the next screen, you can immediately go to
"Exit: Finished with modules. Return to previous menu".
If you do need to configure a device driver for your system, please follow the
on-screen explanations for selecting modules to be pre-loaded - after each selection, the
installation program will first ask if the selected module should be installed, then display
help text explaining possible module options (mostly empty) and prompt for module parameters.
Only a few modules are available for the Mac kernel, none of which require module parameters,
so just leave the module paramteters empty.
When done, select the "Exit" item.
Once your Linux system is installed, you can get back to the configuration of modules at
any time by starting the "modconf" program.
Configure the Network
We're almost done! This last step to do is to set up your networking if you are so lucky to
be connected to a net.
If you have no network, all you need to enter is your hostname (under Linux, every
computer has a name!). Pick something you like - your girlfriend's name *sigh*, a famous
artist/writer/composer/character/actor/whatever. Just one word, please.
If you are connected to a network, you need to enter:
- Your network's name
- The IP address of your computer
- The netmask
- Your broadcast address
- Your gateway's IP address, if one is available
- Your nameserver's IP address, if there is one available.
- Your type of connection - Ethernet, PPP, Slip or whatever else.
The help screen on this step suggests that you don't answer "Yes" to the question whether
your computer is connected to a network if this connection is PPP, i.e. a temporary one (makes
some sense, as PPP is often assigned dynamic network addresses). I strongly recommend to follow
this suggestion and complete the network configuration after booting the disk based system.
The 'pppconfig' utility is included in the base system to this purpose.
The network configuration step doesn't completely set up PPP or SLIP for you, just stores
the configuration data for you. In these cases, you will have to manually configure PPP or
Install the Base System
Just as with the "Install Operating System Kernel and Modules" step, you need to specify
where the base system archive is located. This file should be named "base2_1.tgz". If you have
put it into the same directory as the other installation files, you already know what to do now:
Select "harddisk: Filesystem on the harddisk", pick the correct partition and (if necessary)
enter the path name to the directory containing those files. If you are installing from CD,
select "CD-ROM" and enter "/install" as path.
Again, everything should be in the place the installer expects to find it but the HFS
metadata get in the way and confuse the installer, so press Return, scroll down
to the proper path and press Return again after this to accept the default options.
At this point you've got a few minutes time (depending on the speed of your processor/harddisk)
while the base archive is unpacked onto the Linux root partition. On a slow Mac, unpacking the
base system takes around 45 minutes, be patient.
Configure the Base System
In this step you just set the timezone that you're in - this should be pretty intuitive. For
instance, for Germany the selection "CET - Europe" (first screen) and "Berlin" (second screen)
should be fine.
When asked whether your system clock is set to "GMT" (Greenwich Mean Time), you will likely
answer with "No" as most Macs will use the local time instead of GMT.
Well, that's it! Ignore the next suggested step ("Make Linux bootable directly from harddisk")
and instead select alternative 2: "Reboot the System". After a few seconds, the Mac should
reboot automatically into MacOS. If the Linux kernel hangs on attempting to reboot, just press
the reset button.
So, one last step is required from you before you can boot your freshly installed Linux:
Go to the directory containing the installation files and start up the Penguin booter, holding
down the 'command' key. Go to the 'Settings' dialog (command-T), and locate the kernel options
line (should look like root=/dev/ram video=font:VGA8x16 or such). The important
thing to change is the entry root=/dev/yyyy. In this line, replace the yyyy
with the Linux-wise partition name of the root partition onto which you installed the system
- like sda1, hdb3, whatever it was, you figure. The 'video=font:VGA8x8' is my recommendation
especially for users with these tiny screens like on a SE/30; the kernel would pick a prettier
(6x11) font but the console driver for this font can hang the machine, so using 8x16 (or 8x8,
on the small displays) is safer. If you don't want to start Linux immediately each time you
start the booter, uncheck the 'Auto Boot' option.
Save that file, using the 'Save Settings As Default' option.
If you installed from floppy disk or CD, copy "Penguin-17" and "linux" to a folder on your
harddrive, and create the Preferences file as described above.
Now you can just double click on the "Penguin" icon in that folder to actually start the
system, booting from the just installed harddisk instead of the ramdisk filesystem.
The boot sequence will take quite a bit longer than when you installed the system because a
database of filenames has to be built ("Locate" database). After that, you are automatically
logged in, and need to take these steps:
- Set a password for the root user (the administrator account)
- Create another (unprivileged) user account
- Activate (or not) the "Shadow passwords" (recommendation: Yes, use it!)
- Determine whether you want to continue installing the system via a PPP line or not,
and configuration of the PPP connection scripts.
- Set an "installation profile" of packages you want to install.
After these steps, you are automatically thrown into the "dselect" program which is the
interface-driven package installation manager. My personal preference is to quit that program
as soon as possible and rather install packages manually via the "apt-get" program, but your
mileage may vary. You should at least set the access method and update the packages list here;
I have so far used disk based, FTP based and APT installation methods with success. Selection
of packages has already been performed if you didn't skip the "installation profile" above,
so there should be no need to select packages by hand using dselect.
When you quit this program, you get logged out and can log in as root or as an unprivileged
user if you created one before.
At this point you have a running basic Debian installation on your Macintosh, and if this
all worked out (more or less) well for you, I'd definitely love to hear about it! :-)
A few tasks are still left to do, such as configuring PPP or SLIP (if that's
your network option, and you didn't run the pppconfig step earlier). For PPP, edit
/etc/ppp/peers/provider (replace /dev/modem with your serial line
here, i.e. /dev/ttyS1 for the first SCC port; there's no /dev/modem anymore) and
/etc/chatscripts/provider (enter your username and password for your ISP account, plus
change the 'name' and 'word' to whatever the prompt at login is. Some configurations require
you to send the string 'ppp' to start up PPP after login, just add another expect/send pair
after the password for that. "pon" and "poff" start and stop the connection, respectively.
SLIP is more hassle; look at the "/etc/init.d/network" startup script where the
"ifconfig" command has already been inserted for you, and add a "slattach"
command before this, if you use static SLIP. Dynamic SLIP should be set up using "dip",
so you'll need to install this package.
If you didn't answer "Yes" to the question if your computer is connected to a network,
you will have to create the file /etc/resolv.conf `containing the line "nameserver
<ip-addr>" where <ip-addr> is the address of your ISP's name server host.
One more hint: To cleanly shut down a running Linux system, you
must not just reboot with the reset switch on the front of your Macintosh,
or turn off the computer - instead, press the key combination Ctrl-Alt-Del
(yeah, just like on a PC :-) to shut down the system in a controlled manner.
That's Ctrl + LeftAlt + Delete_right_of_Return.
Control-Shift-Power should also work. Or log in as root and type shutdown -h now if you don't like the key combo.
Good luck in the wonderful world of Debian/m68k!
History of this installation guide:
|v0.1||July 20th 1998||First version, only ASCII text|
|v1.0|| August 3rd 1998||Pushed to HTML, small additions & typo corrections|
|v1.0||August 9th, 1998||First version, based on Frank Neumanns Amiga version|
|v1.1||August 29th, 1998||Updated for 2.0r2|
|v1.2||September 5th, 1998||More warnings ...|
|v1.3||September 24th, 1998||Even more warnings ...|
|v1.4||February 11th 1999||Modified for Debian 2.1|
|v1.5||March 6th 1999||Addition of CD install option|
Michael Schmitz, Last change: March 6th, 1999