This page describes an network install of Ubuntu 6.06.1 on a Sun Fire T2000 server which features the UltraSPARC T1 (Niagara) processor from a Solaris system. There is a fair amount of Solaris and T2000 specific information included, but all SPARC installs are similar and Linux users will find much of this information useful.

Dapper does not support T2000 rev 2

In order to install Ubuntu on T2000 rev 2 of the hardware you will need at least Edgy.

Getting the installer booted

This install uses the netboot method as described in Installation/Netboot. These instructions describe the differences for SPARC.

  • Make sure your T2000 has the latest firmware on it. Earlier hardware needs to be updated through the service processor (which is fairly easy to do). The instructions are for installing the upgrade in this was described in this patch, but the newest firware at time of writing is here. I did my upgrade as follows:

    sc> flashupdate -s -f /tftpboot/123482-01/Sun_System_Firmware-6_2_0-Sun_Fire_T2000.bin
    SC Alert: System poweron is disabled.
    Username: root
    Password: *******
    Update complete. Reset device to use new software.
    sc> resetsc
    Are you sure you want to reset the SC [y/n]?  y
    User Requested SC Shutdown
    sc> Connection to closed by foreign host.
  • Download the sparc netboot image

  • to use dhcp instead of rarp (used in the following steps) you need to type 'boot net:dhcp <other options>' instead of 'boot net <other options>'

  • it is possible to use 'net[0-3]:dhcp' instead of 'net:dhcp' to directly address an specific port
  • It is also possible to use neither and to specify the boot image to use, which can be over TFTP, HTTP or HTTPS.

To configure RARP

  • Configure the system to network boot. I had problems getting DHCP to work so ended up using RARP. To do that put the T2000's MAC address into /etc/ethers, enable ARP: svcadm enable rarp. You then need to work out what the file name the client will attempt to download via tftp.

To calculate the HEX value of the IP address:

# echo <<YOUR_IP>> | awk -F. '{ printf("%0.2x%0.2x%0.2x%0.2x\n", $1,$2,$3,$4) }' | tr '[a-z]' '[A-Z]'


# echo | awk -F. '{ printf("%0.2x%0.2x%0.2x%0.2x\n", $1,$2,$3,$4) }' | tr '[a-z]' '[A-Z]'
  • Put the boot.img file you downlaoded earlier into your /tftpboot directory and create a symbolic link to it with the target of the link as the HEX value you just calculated.

  • Bring up your LOM and bring the box to it's Openboot Prompt (OK).
  • At the prompt, start the client with boot net debconf/priority=low DEBIAN_FRONTEND=text

  • If you value your sanity, you will remember to specify DEBIAN_FRONTEND=text. You will also probably want to add the remote installation over SSH if it is safe to do so within your environment.
  • Be sure to use tftpd, not tftpd-hpa or any other tftpd...

To use a TFTP or HTTP server with no use of RARP or DHCP

  • Place the boot.img image you downloaded earlier into the TFTP or HTTP root of your boot server. You may also want to take the time to rename it something more obvious such as ubuntu-hardy-sparc-boot.img.

  • Bring your box up to the Openboot prompt and type:

setenv network-boot-arguments host-ip=<<MY_IP>>,router-ip=<<MY_ROUTER>>,subnet=mask=<<MY_SUBNET>>,hostname=<<MY_HOSTNAME>>,file=tftp://<<TFTP_ADDRESS>>/boot.img
  • Note: There can't be any spaces between one value and the next paramater name Here's a real life example:

setenv network-boot-arguments host-ip=,router-ip=,subnet-mask=,hostname=foo.infra.local,file=tftp://
  • The setenv command should be echoed back to you. Now boot the client:

boot net debconf/priority=low DEBIAN_FRONTEND=text
  • Note: I think that it's possible to boot with

boot net debconf/priority=low DEBIAN_FRONTEND=text -o prompt
  • which will ask you for the network settings, but I've not tried yet.

    n.b. This should also work for HTTP. If you want to load the image over HTTPS, I'd advise reading the (very good) Solaris Network Boot documentation (, in particular the section on WANBoot installation and Protecting data by using HTTPS.

Installer options

  • The installer asks some fairly simple stuff about language and keyboard layout and is documented elsewhere. Following that the network is detected, you may need to manually configure some of the settings if you don't have DHCP set up. If you need a default route to get to your install server or your http proxy you'll need to add it manually here.
  • When the installer has setup the network you are ready to point it to an ubuntu mirror. I used the default mirror for my country (UK) which worked fine. When the installer asks if you want to use a proxy. Unless you have a direct connection to the Internet, do not leave this blank. Even if you are doing an install from local images you still need access to the internet as this is the only way the installer seems capable of validating the signed packages! If you don't do this you will get an error message about kernel modules and you won't get much further. You have been warned!

  • Once you get to the partitioning screen, you need to work around the following issue (see also sparc/KnownIssues): "The first partition at the beginning of the disk cannot be software RAID or LVM. The installer will not offer the options when in manual partitioning mode. Create a 1 MB empty partition at the beginning of the disk and start creating your RAID/LVM partitions from there. This is not a bug but the only known way at the moment to protect the partition table stored in the first 512 bytes of the disk." I created a 1MB partition (which took up about 5MB), then marked it as "do not use", then created a small swap partition (512MB) and made root the size of the rest of the disk.

  • When prompted which kernel to install I selected the default (linux-sparc64-smp).
  • I accepted the default X server driver (fbdev). The T2000 is a server and thus doesn't have a video card by default so it shouldn't matter in this case.

That should be it!


Installation/Sparc (last edited 2008-10-27 06:59:08 by littlergirl)