ctx->guides->sunsparc
How I installed Debian on a Sun Ultra 10 from the network
First of all, the first thing I tried is to replace the long-dead CD-ROM drive with a newer IDE DVD-RW and install the latest OpenBSD release. This worked as expected. I need, however, to also run Linux on an UltraSPARC processor for development and the choice was Debian stable. The bootable CD installer from Debian always hangs at a seemingly random phase of the package installation process. The system has 256 MB of memory and a 10 GB Western Digital disk. After many tries, and not having identified the problem, I decided to try the network boot installer and see what happens. This also failed, but I will document the process of booting the installer from the network here.
I connected back-to-back the Ultra 10 with my laptop that is running OpenBSD.
The laptop will host the boot image on its TFTP server. Downloaded the
boot.img
for SPARC from the Debian website and put it into my
TFTP server root:
# mkdir /tftpboot
# cp boot.img /tftpboot/
# /etc/rc.d/tftpd -f start
Next found out the MAC address the Ultra 10 has (it is written on the top on the OpenBoot initial screen), and configured an IP address mapping for RevARP:
# echo 'de:ad:ba:be:de:ad snoopy' >> /etc/ethers
# echo '192.168.1.2 snoopy' >> /etc/hosts
# ifconfig em0 inet 192.168.1.1
# /etc/rc.d/rarpd -f start
By default the machine will ask for a file named after the hex representation of its IP address:
# echo 192.168.1.2 | awk -F . \
'{ printf "%02X%02X%02X%02X\n", $1, $2, $3, $4 }'
# cd /tftpboot
# ln -s boot.img C0A80102
Now boot the Ultra 10 and press Stop-A to get to the ok
prompt; here type boot net
. I also used tcpdump
on my wired
interface to monitor all requests this whole time, and kept PF disabled
while offline. When the installer loaded, I plugged "the other" network
cable to do DHCP business as usual.
Installing OpenBSD on a Sun Blade 100 using network boot
In this case again I used my OpenBSD laptop to serve the boot image files. Edit the following configuration files to enable RevARP, BOOTP, and NFS services on the server.
/etc/ethers:
de:ad:ba:be:be:ef blade
/etc/hosts:
192.168.1.3 blade
/etc/bootparams:
blade root=192.168.1.1:/export
/etc/exports:
/export -alldirs -ro -network 192.168.1 -mask 255.255.255.0
Get the bootloader and ramdisk files. Again, create a symlink named
after the hex representation of the IP address 192.168.1.3
.
# mkdir /tftpboot
# cd /tftpboot
# ftp $MIRROR/OpenBSD/5.4/sparc64/ofwboot.net
# ln -s ofwboot.net C0A80103
# cd /export
# ftp $MIRROR/OpenBSD/5.4/sparc64/bsd.rd
Connect the machines back-to-back and configure the network.
# ifconfig em0 inet 192.168.1.1
# /etc/rc.d/tftpd -f start
# /etc/rc.d/rarpd -f start
# /etc/rc.d/bootparamd -f start
# /etc/rc.d/portmap -f start
# /etc/rc.d/mountd -f start
# /etc/rc.d/nfsd -f start
Boot the client machine and on the ok
prompt write boot net bsd.rd
.
To get to the ok
prompt press Stop-A. If you do not have a Sun
keyboard press the power button two times while booting OpenBoot.
Get cracking!
lostd@