From Cygnus Alpha
Jump to: navigation, search

Netbooting Gentoo Linux on Sparc X1

This is a little write up of the process I used last time I had to fix the silo boot failure on my Sun X1. Luckily I have a Mac OSX system handy which served as a lovely netboot server.

Using an Apple Max OSX machine as a net boot host.

Configure DHCP on OSX

Install dhcpd using macports.

  • port install dhcp

edit /etc/dhcpd.conf

# /etc/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
ddns-update-style ad-hoc;
option subnet-mask;
option broadcast-address;
option routers;
option domain-name-servers;
option domain-name "";
option tftp-server-name "";
option bootfile-name "boot.img";

subnet netmask {
        host eschaton {
                filename "boot.img";
                hardware ethernet 00:03:BA:04:F5:94;

Run dhcpd

dhcpd -d -cf /etc/dhcpd.conf

Remember to switch off any other DHCP servers on the net or they might respond to the broadcasts first!

Configure tftpd

Link the /private/tftpboot directory to /tftpboot (if it's not already). Copy the Gentoo boot image into /tftpboot/boot.img

Run tftp

service tftp start

Sun X1 boot net

Use the serial console and access the LOM

lom > reset
lom > console
ok >

Boot the X1 using the network, and specify dhcp.

boot net:dhcp

Recover the Gentoo system

In my case, fix the silo config.

mount /dev/hda1 /mnt/gentoo
chroot /mnt/gentoo /bin/bash
mount -a
vi /etc/silo.conf

Recovering the LOMLite password

Netra X1 Jumpers


-- 1-2 (Open) --

This is for use by Sun service engineers. It resets the LOMlite2 device. Do not alter this setting.


-- 1-2 (Open) --

This jumper is for use by Sun service engineers in the event that the LOMlite2 device on the system board is broken. The default setting is Open. If you alter this setting to Fitted, then, if the LOMlite2 is broken, you can use the On/Standby rocker switch to power the system on (or down to standby mode). Note that the power signals from the On/Standby switch pass through the LOMlite2 device, and that setting this jumper to Fitted causes the signals from the rocker switch to bypass the LOMlite2.


-- 1-2 (Open) --

This jumper is for use by Sun service engineers only. It enables and disables emergency recovery of the LOMlite2 firmware. In its default state (Open), recovery of the firmware is not possible. However, service engineers might need to follow a special procedure to recover the firmware for the LOMlite2, and this procedure involves temporarily changing the setting of JP15 to Fitted. Afterwards, it must always be returned to Open.

Recovery procedure

Some alternatives - ymmv etc.


  • Close JP13 and JP14
  • Close JP15 special recovery procedure (!)
  • Power off so there is no standby power
  • Power up
  • Open JP13
  • The LOM should be reset. Then re-open JP14 and JP15.


  • Apply JP13 then JP14.
  • Wait for a second
  • Take off JP14 then JP13

JP13 is between the battery and the CPU JP14 is between the smart card reader and the CPU

(David Craddock)

SunFire V120 LOMLite

                     LOMlite on the Sun Fire V120
                       last updated 2003-09-25

what is LOMlite, and how is it useful?
LOMlite is a stripped-down version of the Lights-Out Management suite of
hardware, software, and firmware enabling such features as being able -
remotely - to power a system up and down, monitor temperature and hardware
status, reset boot parameters, and some other low-level functions. LOMlite is
always running, even when the system itself is powered-off (provided the
connection to the power source itself is live). Access to LOMlite is through:

V120 ports
  2 ethernet ports (not discussed in this document)
  2 serial ports   (connect to these ports through SCS (cf. ./SCS.txt)):
    port A (ASCII)  - LOM is always connected to this port. By default, LOM
                      shares this port with the console (OpenBoot or Solaris).
    port B (Binary) - Sun recommends setting up port B for dedicated access to
                      the console, and dedicating port A to LOM.

setting up port A
To lockdown port A (requiring passwords to log in), you must create a
passworded user account. Up to four such accounts may be created, each of
which may be given one or more of the four privilege levels:

  c - Console permission: needed to toggle between LOM and console (possible
      only when LOM and console share port A).
  u - User accounts permission: needed to create/manage LOM user accounts.
  a - Administrative permission: needed to re/set LOM config variables.
  r - Reset permission: needed to reset/power-cycle LOM.

Note that by default there are neither user accounts nor passwords, and that
all privileges are available at the LOM prompt.

- creating a (privileged) user (example):

  lom>useradd root
  lom>userpassword root
  lom>userperm root cuar
  lom>usershow # Check your work.

Once a user account has been created, a login is required to access LOM.

setting up port B - separating LOM and console
Connect to port A, then:

  # eeprom input-device=ttyb
  # eeprom output-device=ttyb
  # init 6

You should now be able to get the console on port B, and LOM on port A.

rejoining LOM and console (default arrangement)
Connect to port B, then:

  # eeprom input-device=ttya
  # eeprom output-device=ttya
  # init 6

You should now be able to get either the console or LOM on shared port A only.

general notes on sharing/separating ports
The procedures shown above have been tested to work if followed exactly. Note
that each requires access to multi-user followed by a reboot. Experiment has
shown that alternate procedures, not involving multi-user, can also work
(although in every case a firmware reset is still required). Unless the
procedures shown above are followed, however, it is possible to reach a
confused state where the console becomes unavailable in either the shared or
separated state. To recover from this situation, issue:

  lom>bootmode forth
  ok boot
  # eeprom input-device=  # Enter here the desired input port.
  # eeprom output-device= # Enter here the desired output port.
  # init 6

switching between LOM and console on shared port
From LOM to console (OpenBoot or Solaris):


From console to LOM:

  ok #.     # From OpenBoot.
  # #.      # From Solaris.

 - The (default) escape sequence to return to LOM is '#.'.
 - Return to the console requires 'console' followed by TWO carriage returns.
 - 'console' appears to be functionally equivalent to 'break'.
 - Toggling between LOM and the console is only possible when port A is shared
   between them, and also requires 'c' permissions (if LOM is locked down).

bootmode        # Enables Stop-[DFN] keyboard functionality.
break           # Functionally equivalent to 'console'.
console         # Functionally equivalent to 'break'.

reference and further information
_Sun Fire V120 and Netra 120 Server User's Guide_ (Sun, 2001-A)

-- Main.BruceJames - 14 Jan 2007