blog:netboot_solaris

This is an old revision of the document!


I have a Sparc based system (a MicroSparc II on a VME card) that is without a CDROM drive and has to be able to install SunOS or Solaris over the network (it has a local SCSI-2 disk and a fast Ethernet SBUS card).

I found some useful background information here on how to support Solaris network installations using just a Linux host:

http://hintshop.ludvig.co.nz/show/solaris-jumpstart-linux-server/

http://www.cs.toronto.edu/~cvs/unix/Solaris-Linux-NetInstall.html

http://www.znark.com/tech/solarisinstall.html


rarp

The Sparc machine doesn't do full DHCP from OpenBoot to acquire an IP address, netmask, gateway, DNS etc; it only does rarp, which needs *rarpd* running on our Linux host. We then have to add the ethernet address of our Sparc machine to /etc/ethers on the Linux host, as well as add an appropriate IP/hostname entry to /etc/hosts. For example:

echo "00:01:02:03:04:ef sparky" >> /etc/ethers
echo "192.168.1.15 sparky" >> /etc/hosts

Run the rarp daemon in verbose mode (rarpd -v) and monitor syslog/messages for queries from the Sparc machine as it powers on. You should see a request for “00:01:02:03:04:ef” being answered by “192.168.1.15”.

The next step is supplying a kernel image to the booting Sparc machine.

tftp

As the machine starts to boot it will make a request via TFTP, to the same server that it received a rarp request from, for a kernel image.

The name of the kernel image will depend on the IP address that you have assigned to the Sparc machine. Unfortunately it's in hexadecimal format. In the case of assigning 192.168.1.15, as above, you can calculate the filename as follows:

$ printf "%02X%02X%02X%02X" 192 168 1 15
$ C0A8010F

A boot kernel then needs to be copied from your relevant Solaris installation cd images (Solaris 2.6 in my case) and dropped in to the root of the TFTP server.

So I had to do this:

cp /mnt/iso/Solaris_2.6/Tools/Boot/usr/platform/sun4m/lib/fs/nfs/inetboot /export/tftproot/C0A8010F.SUN4M

Note that you need to copy the correct architecture kernel image for your hardware - in my case the MicroSparc II is a sun4m platform. Note also that the inetboot kernel on Solaris 2.6 is stored in a different path on the CD compared to later versions; Solaris 7, 8 and higher have it here:

/mnt/iso/Solaris_[NUMBER]/Tools/Boot/platform/sun4m/inetboot

Reboot the Sparc machine and you should see it load the new kernel image from your tftp server.

Now we need to tell the booting kernel where to find the root filesystem and where to load the installation CD contents from…

bootparams

TBC

NFS

TBC


Using solid state drives on Solaris/Sparc - aka compact flash or SD.

Solaris needs drive geometry setting if you don't have a SCSI drive that is detected by the installer. Here are some common compact flash/SD card sizes in CHS format:

Capacity Cylinders Heads Sectors
512MB 1024 16 63
1,024MB 1,986 16 63
2,048MB 3,970 16 63
4,096MB 7,964 16 63
8,192MB 31,769 16 63
16,384MB 63,538 16 63
  • blog/netboot_solaris.1543396761.txt.gz
  • Last modified: 2018/11/28 09:19
  • by john