Howto install Debian GNU/Linux on a SGI Indy

This document is outdated, the Debian MIPS team has worked very hard to create "bootfloppies" for the Debian/Mips port
Somebodyelse already created a new howto, therefor there is no need to update this document.

The link to the new howto is on the Debian MIPS port page:

A more up-to-date howto is available at:

Howto install Debian GNU/Linux on a SGI Indy

Staf Wagemakers ( staf at

v0.0.3, 18 Jun. 2001

This document describes how you can install the base Debian Gnu/Linux distribution on your Indy.

1. Getting Debian Gnu/Linux

1.1 Get the base distribution

The base distribution is available at
Create a /indy on your installation linux box and extract the base.x.x.x.tgz

mkdir /indy
cd /indy
cp /path/base.2_2.2.tgz .
tar xzvf /path/base.2_2.2.tgz

1.2 Get the linux kernel

You need a linux kernel that is compiled for a mips system, a pre-compiled kernel is available at
Extract the kernel tar file to /indy

cd /indy
cp /path/kernel-image-2.4.0-test9-ip22-r4k.tgz .
tar xzvf kernel-image-2.4.0-test9-ip22-r4k.tgz

2. Setup the installation host

2.1 Setup a DHCP server

Install the dhcp server ( just type "apt-get install dhcp" if you are using Debian Gnu/Linux :) )
And edit your dhcp configuration file, below you'll find my modifications

host indy2 {
hardware ethernet 08:00:69:09:25:c9;
option host-name "indy2";
option domain-name-servers;
option routers;
option root-path "/sgi"
filename "vmlinux-2.4.0-test9.ecoff"

And restart the dhcp server ( /etc/init.d/dhcp restart )

If you use a 2.4 kernel on your DHCP server you've to run

echo 1 > /proc/sys/net/ipv4/ip_no_pmtu_disc

2.2 Setup the tftp service

The indy will download the linux kernel by tftp at the boot time, so we need to export /indy.
Edit /etc/inetd.conf and modify the ftp entry.

tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /indy

and the reload the configuration (killall -1 inetd)

Erich Schubert reported that he had a problem with tftp and the 2.4 kernel series:

With Kernel 2.4 there's a problem with a bug in the Indy's PROM: tftp doesn't work if the Port is above 32768, which is default with 2.4, and wasn't with 2.2.

echo 2048 32767 > /proc/sys/net/ipv4/ip_local_port_range

tells the tftp server to use a port below 32768, which made tftp work for me.

2.3 Setup the nfs-server

We need a nfs root filesystem therefor we need to export /indy by nfs.
Edit /etc/exports


and run exportfs -va

3 Installation

3.1 boot time

Power on your indy and select "Stop for system maintenance" during the boot phase. Select "Enter command monitor" from the main menu.

I'm not sure this really necessary but it's recommended to set the netaddr system variable to the right ip-address. You can get the current value with the "printenv netaddr" command.

setenv netaddr

Other people told me that they had to

unset netaddr

, but this doesn't seems to work on my Indy.

And the boot the linux kernel with the boot command

boot -f bootp()vmlinux-2.4.0-test9.ecoff init=/bin/bash nfsroot=

If everything goes right the indy will boot and you'll get a shell prompt

3.2 Partition your hard drive

Attention: you will lose all data on your disk if you follow the next step!

Partition your hd with "fdisk /dev/sda", my partition table looks like this

------- partitions -----
Device Info Start End Sectors Id System
/dev/sda1 boot 101 3000 1924000 83 Linux system
/dev/sda2 swap 3801 4018 113360 82 Linux swap
/dev/sda9 0 100 52520 0 SGI volhdr
/dev/sda11 0 4018 2089880 6 SGI volume

3.3 Install the base fs

Format your root fs mkfs.ext2 /dev/sda1. Mount it to /mnt mount /dev/sda1 /mnt. And extract the base + kernel archive:

cd /mnt
tar xzvf /base.2_2.2.tgz
tar xzvf /kernel-image-2.4.0-test9-ip22-r4k.tgz

Move /sbin/ to /sbin/

3.4 Install the kernel

Install the kernel to your boot disk.

dvhtool -d /dev/sda --unix-to-vh vmlinux-2.4.0-test9.ecoff linux

4. Finish your installation

4.1 Boot from your hd

Reboot your system and go to the "command mode" and type:

linux root=/dev/sda1

The indy will boot from the kernel we've installed and use /dev/sda1 as his root fs.

4.2 Update your configuration

"/" is mounted as read-only in order to modify some configuration files we have to remount it.
Logon to the system and type

mount -o remount,rw /dev/sda1 /

Modify the most important configuration files (/etc/fstab etc) and reboot the Indy.

Have fun...