Questions and Troubleshooting
This chapter is intended to provide solutions to frequently and
infrequently encountered problems in enabling Linux
on the JavaStations.
When booting, the message
The file just loaded does not
appear to be executable. Why?
On systems that have the older OpenBoot version 2.3, and are not set
up to use PROLL, you will get this message when attempting to boot
up a kernel image that is not in AOUT format. Be sure to run
elftoaout on your kernel image.
When booting, the message
no a.out magic appears
and halts the boot. Why?
On systems that are set up to use PROLL, you will see this message
when attempting to boot up a kernel image that is not in AOUT format.
Be sure to run elftoaout on your kernel image.
I tried booting a Krups but JavaOS comes up. I don't even have JavaOS!
This likely means you have a copy of JavaOS loaded on your flash SIMM.
Remove the SIMM and the problem should go away.
Cannot Boot an
Embedded-Root image > 10 MB
on my JavaStation. Why?
There is a known limit of 8 MB when using the
Embedded-Root boot image option.
The cause of this is the current version of the PROLL
software, which map only 8 MB
of low memory. Any more and banking support would need to be
added to it.
This limit can be fixed if needed by someone, as the source
to PROLL has been released under the
General Public License GPL.
So in reality, the embedded image size limit is really 8 MB
, not 10 MB. If 10 MB somehow works
for you, it is by
After Booting, Typing Anything Yields Garbage Characters. Why?
There are a few possibilities for this. Among them:
You have an incorrect device # for tty0.
keytable loaded is incorrect. Make sure you use
sun instead of
PC if you use the keytable
program. Look for the keytable configuration file if it exists.
In X Sessions to a Solaris server, the
xfs crashes. Why?
If you do X sessions to a Solaris
server, and you find that your sessions are no longer opening
up new windows, chances are the font server on the Solaris
host has crashed. This is a known bug in
Solaris 2.6 and 2.7 when you have about 2 dozen
X terminals sessions running.
The fix is to move the font server to a different architecture and point your
JavaStations there, or to upgrade your
Solaris to the 2.7 11/99 maintenance
release or Solaris 8 which both have fixes
to this problem.
Performing Indirect XDMCP to a
Solaris Server Results in Session Login Failures. Why?
Congratulations! You must have one of patch numbers 107180-12 through
107180-19 installed on a Solaris 7
server. You need to upgrade to 107180-20 or above to fix this problem.
Robert Dubinski, former Computer Systems Technician at Marquette
University, (Quote: Mar. 2000)
Here's a little rant:
I reported this problem to Sun in November 1999, at which time I was
told a fix was not scheduled to be made, since I was using an
TFTPd config doesn't work on SUSE. Why?
This was reported by a user after this document was first released.
In SUSE 6.3, using the tftpd from the 'a' package of the netkit rpm,
you must be sure your tftpd line in /etc/inetd.conf has the -s flag.
Otherwise you need to specify a full path.
Also, it is not necessary to run tftpd as root, so the suggested username
and group for tftpd on SUSE 6.3 is 'nobody' and 'nogroup'
Regarding RARP: Is it Needed or Not?
RARP is not needed with the Krups
or Espresso models and
recent PROLL software. RARP
is required for Mr. Coffee,
This document explains how to set up kernel-level RARP
for the remaining models. In kernel versions 2.3.x/2.4.x, kernel-level
RARP support is removed. The ZLS
holds a version of ANK userland RARP from
Andi Klein of SuSE that will work with Linux/SPARC. It is available
The command to use then is rarpd-ank -e eth0.
unsupported configuration.. Never mind the client
was a piece of hardware made by Sun itself. Also never mind that
indirect XDMCP queries is a standard itself which
was broken by Sun. A call back in late January 2000, and I learn that
the record of my previous call was non-existant, but a fix was now on
its way. The fix finally was made available in April 2000, five months
after first reporting the problem. Considering revisions to this
patch during the broken XDMCP period dealt with
fixing system security issues, we were forced to run the older insecure
software for five months while waiting for a fix to a problem which
should have been patched immediately.
The moral of the story: test your JavaStation
configuration against an upgraded server that is not in production mode.
-e makes it ignore /tftpboot checking, and
eth0 is needed if you are behind a firewall.
Can One Use the Smart Card Reader on the Espresso models?
This is not currently supported, but the reader follows an
ISO standard (ISO 7816-3). On
Espresso, if you look into PROLL,
there are definitions for the GPIO smartcard data/clock in
eeprom.c. So a programmer should technically be able to get
the Smart Card slot running.
Can One Use the Solaris DHCP
server instead of ISC?
Yes, this is possible. Earlier ISC daemons had problems, while the
Solaris server was more robust. Here is how to configure it:
First, fill in your /var/dhcp/
networks file, populating
it with ethernet to IP info, and the appropriate leastime.
# This example uses "infinite" leastime
0108002081C2AE 03 192.168.128.1 192.168.128.100 -1 java01 # JavaStation
010800208E4CF6 03 192.168.128.2 192.168.128.100 -1 java02 # JavaStation
Next, fill in your /var/dhcp/dhcptab file with entries similar to:
# First, some network info
Locale m :UTCoffst=21600:
www m :Include=Locale:Timeserv=192.168.128.100:DNSdmain=my.own.net:DNSserv=192.168.128.100:
192.168.128.0 m :Broadcst=192.168.128.255:Subnet=255.255.255.0:MTU=1500:BootSrvA=192.168.128.100:Router=192.168.128.101:NISdmain=my.own.net:NISservs=192.168.128.100:
# note: BootServA can point to a different TFTP server to get the kernel image
# off of.
# Now we define the JavaStation TFTPboot parameters
SUNW.Linux m :Include=www:JOSchksm=0x155dbf97:Rootpath=/tftpboot:BootFile=proll.mrcoffee:BootSrvA=192.168.128.100:TFTPsrvN=lnxserv:
SUNW.Linux.Krups m :Include=www:Rootpath=/tftpboot:BootFile=proll.krups:BootSrvA=192.168.128.100:TFTPsrvN=lnxserv:
# note: different classes are defined for the different PROLL images.
# Lastly, we list our hosts and which boot class each one gets.
java01 m :LeaseTim=-1:Include=SUNW.Linux:
java02 m :LeaseTim=-1:Include=SUNW.Linux.Krups:
Can One Pass Arguments to
/sbin/init in a Diskless
Boot like This?
PROLL ships with DHCP
options disabled, but it could be changed. You would then do something
/tftpboot/0A0A0000.ARGS to get those parameters in.
If you boot from flash memory, PROLL picks up
SILO options (where SILO
is > version 0.9.6 and PROLL
is >= version 11)
Enabling X on the
Enabling X on the JavaStation
First, be sure you have enabled the appropriate framebuffer device
in your kernel's configuration (as described elsewhere in this document).
Next, you'll want to use the generic Sun Framebuffer X server
XF86Config file. You can build this
yourself, or you can try someone's prebuilt binaries, like the samples
pointed to below.
Recent editions of the framebuffer server do not work. Use the older
version below, or fix the new version and be a hero to hundreds.
Sample XFree Sun Frambuffer X Server File is at:
Sample XFree JavaStation-Ready XF86Config File is at:
Is There Mailing List Help?
There is a mailing devoted exclusively to running Linux
on SPARC processor based machines
like the JavaStations.
The mailing list address is
You should first subscribe to it by sending a message to
email@example.com with a subject and body line
subscribe sparclinux <your_email_address>. You
can leave out your email address, but it is helpful to put it in if you
have multiple valid addresses at your site.
Archives of the Linux/Sparc mailing list are kept at:
Can One Boot a JavaStation from Onboard Flash Memory?
It is possible to boot a JavaStation-NC from flash, but requires
too much arcane knowledge at the moment to be recommended. One problem
even if you do go this route is that flash can only be mounted read-only.
This gets to be a problem with many things, like X, which require the
writing of socket files. A hybrid ramdisk/flash solution would be required.
Piggyback work for the x86
With the great embedded-root solution for the JavaStations, the question
popped up whether something similar can be done for stock x86 hardware.
While there are some x86 NICs that have boot roms on them, you'd also need
the piggyback program to put things together. According to Eric Brower,
this currently is not possible as the piggyback program looks for a header
specific to the SPARC platform. (28-Apr-2000)
Robert Thornburrowrobert@tsac.fsnet.co.uk sent a version
of piggyback which runs on non-SPARCLinux architectures like Linux/x86
and Solaris. This automates the task of creating your embedded root
image. You can get his updated piggyback package at:
I put new memory in, but now it doesn't boot. Why?
Are you using EDO memory by chance? Mr. Coffee uses fast-page memory
only, not EDO.
Now that JavaStations work with Linux, what about other Free OSs?
JavaStation support is now available with the NetBSD OS as well as Linux.
Do the Linux 2.4 kernels work? What's the latest that works?
As of this date (May 3, 2001), the current stable Linux kernel version
is 2.4.4. The 2.4 series should work with the JavaStations, but the
document author has not received any reports of success, and no longer
has easy access to a JavaStation to try. If you get it working, please
let me know.
We've had reports of the success with the following recent 2.3.x and
2.4-pre kernels: 2.3.99-pre9
Can I compile the kernel on a non-SPARC machine?
It should be technically possible to compile your kernel on a
non Sun workstation, such as a PC. Currently there are no reports
of anyone doing this, but if you wanted, the first place to look is
the GCC CrossCompiling HOWTO.
Of course, you can also compile a new kernel on a working JavaStation,
if your filesystem image supports it.
Can I get an ok> prompt like other Sun equipment?
A curious thing happens when you send a JavaStation a break: it resets,
not break down to the openboot prom prompt like other Sun equipment.
This can be changed on a Krups by setting jumper J1300, pins 7-8.
Doing this gets a OBP ok prompt with a Ctrl-Alt-Break on a PS/2 keyboard
or break through a serial terminal.
You can also get the ok prompt on the Dover unit, but it requires a hardware
fix. To do so on this unit, you must solder a 220K ohm resistor in
location R362 (near the FDD connector).
My keyboard isn't recognized. What can I do?
While it's unlikely, it could be possible that you have a javastation
set in the wrong input device mode. To rectify this, you need to enable
the openboot prom prompt as described elsewhere in this HOWTO, and then
set the 'input-device' directive accordingly. Or, as one contributor
did before the OBP setting was discovered, load up NetBSD on your
JavaStation and run the eeprom command there. Convoluted, but it
Proll reports "TFTP: ARP Timeout". Why?
This has been reported to happen when the file PROLL looks for isn't
available. Doublecheck your configuration before retrying.
Why Can't I Get TrueColor on Krups?
This is due to missing kernel support for the Cyber2000 chip.
I followed this HOWTO, but my Dover doesn't work. Why?
The Dover is not a SPARC-based JavaStation, which this HOWTO caters to.
You must use x86 procedures to make it work properly.
I am receiving multiple reports of kernel load failures with the Dover unit.
As more information comes in, this HOWTO will present it.
Where Can One Find Espressos for Sale?
Enquiring minds want to know.
Do Tools Exist to Configure Net Boot Entries Quickly?
Enquiring minds want to know.
What can one use the Krups Flash memory for?
Though it is not supported without some experimental patches from
ZLS, the question arises as to what uses one might put the
flash to use for, aside from booting? What interesting ideas
do people have?
Can framebuffer be loaded following a serial console initialization?
If you boot a JavaStation via the serial console, the framebuffer console
is completely disabled. Is there any way to activate the framebuffer console
after booting? (asked on Sparclinux mailing list 2001-05-11)