Installation of Debian on Sam440 (and dual booting AmigaOS 4.x)
Loading an operating system on a Uboot supported hardware
Before starting you need to understand how an operating system is loaded with Uboot.
More synthetically here is what happens: Uboot => Bootloader => Bootable partitions => Configuration file => Operating system
- Uboot loads a bootloader which is located on disk (CD-ROM or harddisk).
- This bootloader will then examine the bootable partitions on your disk.
- On these partitions, it will find a configuration file in which you defined which operating systems are available on your disk.
- Depending on the configuration file, the bootloader will show you the list of bootable operating systems.
Then you choose which OS you want to boot.
- The bootloader loads the selected operating system.
There are 2 available bootloaders: SLB, released by Hyperion on the OS4 CD, and Parthenope written by Giuseppe Coviello and made available on ACube Systems website.
Both bootloaders can read the AmigaOS configuration file, SYS:Kickstart/Kicklayout, and a configuration file on the Linux side, /boot/a1boot.conf (for SLB) or /menu.lst for Parthenope.
So they both allow to boot either AmigaOS or Linux.
These two bootloaders need to read a partition to find the configuration file so you should use partitions formated with a supported filesystem.
This is where these two bootloaders differ:
Note: On the OS4.1 Update 1 CD, you'll find SLB 1.19 that allows Sam440 to also boot a Linux system. I
explain here how to boot both systems using Parthenope.
- SLB (Second Level Booter) can read partitions formated in FFS0, FFS2, SFS0, SFS2, Ext2 (Ext3 is not supported).
- Parthenope (aka ub2lb) can read partitions formated in FFS0, SFS0, Ext2 (Ext3 is not supported).
First of all be sure you have at least the following:
- Uboot 1.3.1a dated 27 Nov 2009 released by ACube Systems. It is available for the Sam440 and the SamFlex pages from here.
- If you want to use AmigaOS 4.x as well as Linux, you need:
- the AmigaOS 4.x Install CD. It is available from selected resellers.
- Parthenope version which is available on ACube Systems website.
- You need free space on your harddisk to install Debian (something like 5 GB in total).
Note on partitioning
In the configuration file you will create, you need to declare which partition of your hard
disk is the one with your Linux installation. As Linux uses partition numbers you need to be sure
you don't change the position of your Linux partition on your disk. For instance, if your system is stored on the 2nd partition of your
hard disk, you'll define in the configuration file that you want to boot on partition "sda2". If later, you create/delete
a partition before this second partition of your disk, the number will change. So you'll need to change the configuration file to
reflect the change of the partition number.
As an example, here is the layout of my harddisk.
As you can see, I created the Linux partition near the beginning of the disk. So even if I
create/delete some partitions in the free space area, the partition name doesn't change for Linux.
If you don't need AmigaOS 4, you're done. Linux will always boot using Parthenope.
Booting the Debian CD
- On ACube Systems website, download the Debian installation ISO and burn it on a CD-ROM (CD-R is prefered).
Note: this is a netinstall CD, so you'll need an internet connection to fully install the OS.
- Start up your Sam440ep. You need to enter the Uboot prompt. From there you'll tell Uboot to boot from the CD.
- On the Uboot text countdown, press the Space key.
- Insert the Debian netinstall CD.
- Type ide reset
- Type sete boot1 s4siicdrom
- Type boota
- After a few seconds, you'll see a screen with title "Parthenope (ub2lb) version 0.01".
- Press Enter to boot the "Install Debian Lenny" system.
- Sam440 should now boot your CDROM and you should reach the Debian installation.
- Select your language and country settings.
- You are asked "Continue the install without loading kernel modules?"
- Connect the ethernet cable on the ethernet port at the rear of Sam (use the one at the far end).
- Select "eth0: Ethernet"
If DHCP will fail, select "Configure network manually" and give the IP address, subnet mask, gateway and DNS.
- Select a hostname and domainname.
- Continue partitioning?
- Select "Yes".
- Select Manual.
- Creating partitions:
If you created a swap partition for OS4:
- Highlight its name and press Enter to select it.
If you don't have a swap partition yet, you need to create it:
- Select "FREE SPACE".
- Create a 2 GB partition.
- On the line "Use as:" select "swap area"
- Select "Done setting up the partition".
You then go back to the list of partitions.
- Select again "FREE SPACE"
- Create a partition of the size you want. This is where the Debian files will be installed.
- For "Use as:" select "Ext2 journaling file system".
Note: Ext3 is not supported by Parthenope!
- For "Mount point:" select "/"
- Select "Bootable flag". It will change its value to "on"
- Select "Done setting up the partition"
- Select "Finish partitioning and write changes to disk".
- In this window, you see listed the partitions you will create. Write down the number of the Linux partition
you created and mounted as /.
On question "Write the changes to disk?" select "Yes".
- The installer says "Installing the base system". It will last for a few minutes.
- When it asks "Continue without installing a kernel?"
- The installation asks to type a root password.
- Create a new user (it's one without root rights).
- Select your location so that Debian can show you the Debian mirrors. It needs to download all files for the installation now.
- Select a mirror and then a proxy if you need one on your network.
- When the installation asks to "Participate in the package usage survey".
- Select Yes to show the people that the PowerPC is not dead. :-)
- Choose which kind of usage you want in your system "Desktop environment, Web server....".
- The installation warns about an "IP multicast-enabled kernel".
- The installation will now download and install a lot of packages. Please wait while loading and decrunching ;-)
During the installation, you'll have a few questions to answer. As I'm not a Linux expert I just give you what I answered.
- On the window titled "Configuring libpam0g", I just pressed enter.
- There's another warning about "IP multicast-enabled kernel".
- On message "no boot loader installed"
Creating the configuration file
At the end of the installation, the CD tray is ejected. Remove the CD-ROM but do not reboot immediately.
The configuration file needs to be modified.
- Type Alt-F2 on the keyboard and press Enter to activate a new console.
- Type nano /target/menu.lst and do:
Here is an example of menu.lst:
- Delete the line "root ide 0:x"
- At the end of the line "kernel /boot/uImage root=/dev/sdaX", add "console=tty0"
Note: X here depends on the position of the Linux partition on your disk.
- Press Ctrl-X
- Type y
- Press "Enter".
kernel /boot/uImage root=/dev/sda2 console=tty0
Note: This file menu.lst must be in the / directory of your Linux partition. This is in /target during the installation.
- Return to the installation.
- Press "Continue". This will reboot the Sam and Debian should be loaded from disk now.
Upgrading the Parthenope bootloader to boot AmigaOS too
Remember that Parthenope only handles partitions formated in FFS0 or SFS0. So you need to store your Kickstart directory
on a partition in one of these formats.
- Download the last Parthenope from ACube website, from the Sam440 page.
- Boot the OS4 CD.
- Using Media Toolbox, install Parthenope on your harddisk as you did with SLB (just select the Parthenope file). Also, set the boot priority of your Linux partition to -127. This will prevent AmigaOS to try to boot it. Save the changes.
Note that if you don't want to change the format of your SYS: partition, you are not forced to. You can create a very small
partition (a few megabytes) somewhere on the harddisk. Be sure to format it in FFS0 or SFS0. Make it bootable and
give it a boot priority of -127 so that you are sure AmigaOS will not start from this partition.
Now copy only your kickstart directory on the partition.
Parthenope will find it on the disk and extract the boot configurations from the Kicklayout file.
As an example, here is what Parthenope displays on my system:
Uprading the Debian installation
When Debian is just installed, it probably needs updating to the last version. To do so, you need to edit your /etc/apt/sources.list file.
Remove the installation CDROM from there and add the sources in your country. As an example here is my sources.list:
deb ftp://ftp.fr.debian.org/debian/ lenny main
deb-src ftp://ftp.fr.debian.org/debian/ lenny main
deb http://security.debian.org/ lenny/updates main
deb-src http://security.debian.org/ lenny/updates main
Then type in a shell (being root): apt-get update
and then type apt-get upgrade
This will download and install all the latest versions of the already installed programs.
Note on Xwindow setup
- Edit the file /etc/X11/xorg.conf to change your keyboard layout at line "Option XkbLayout".
If you use a DVI or HDMI (i.e. digital) output, you should comment out a line in the xorg configuration file, or the X server won't start.
To do so, edit the file /etc/X11/xorg.conf and comment out this line:
Option "ConnectorTable" "64,2,1,2,60,1,1,1"
Note: You must NOT comment out this line if you use a monitor thought the DVI->VGA adapter (analog output).
Thanks to New Gen Informatique for his several tests.