Archived Content

This page has been archived. The information on this page is no longer maintained by Guru Labs. It is provided purely for its historical value to the curious.

qube3 Red Hat Linux on the Cobalt Qube 3

 

Installing Red Hat Linux on the Cobalt Qube 3 Appliance

The following is a technical recipe or "howto" document for one successful procedure to install the Red Hat Linux distribution onto a Sun Cobalt Qube 3 model internet appliance.
Warning! Use this procedure at your own risk.

Using Flashtool to Upgrade Qube 3 Proms

The Cobalt Qube 3 device has a fairly sophisticated programmable read-only memory (or prom), which has many capabilities not found on the typical desktop machine. The primary task of this prom software is to find and load the Linux kernel into memory, then to execute that kernel.

The prom software included in the Cobalt Qube 3 is capable of finding and loading any Linux kernel, but it has a size limitation built-in which is designed to accommodate typical kernels of the version 2.2 size. As shipped, it is incapable of loading the much larger 2.4 version kernels which are now standard for many newer Linux distributions, including Red Hat Linux 7.2 release.

Sun has developed new prom software which accepts larger kernels, but this software is not yet officially supported. A small software tool is also available to back up and reprogram the prom chip contents.

The first task is to use the flashtool program to upgrade the Qube 3 prom software, allowing the appliance to load a 2.4 series kernel.

Warning! This step is not supported by Sun/Cobalt, and most likely voids all warranty and support obligations by Sun/Cobalt. Proceed at your own risk. That said, this step if performed successfully will still allow the appliance to operate on the stock Cobalt Linux software load, including its older 2.2 series kernel, if desired.


Download the unsupported Cobalt flashtool program. Read the available text files thoroughly.

Unsupported Experimental Cobalt Files: http://sourceforge.net/project/showfiles.php?group_id=83123

Download the unsupported Cobalt 2.10.3-1M.rom prom image (or later version if available). Read the available text files thoroughly.

The Cobalt Qube 3 appliance is internally described under Cobalt's "Generation III" architecture specification. Do not use other prom images intended for other Cobalt or Sun architectures.

Unsupported Experimental Cobalt Generation III Files: http://cobalt.iceblink.org/kernel/

Note that the README file describes an alternate method of using the Qube's serial interface to upgrade the prom image. With that method, the new prom image is read from the serial port and applied to the flash proms inside the appliance, without having to load the new prom images onto the Qube's own hard drive at all. While it is technically possible, it is not advisable to upgrade the prom over the serial cable when the Qube is already in a functioning state. Upgrading over the serial port adds more timing issues to an already timing-sensitive procedure.


Connect across your local area network to the Cobalt Qube 3. Log into your Qube 3's admin account. Always use the encrypted ssh protocol or the serial console instead, if available, for security. However, sshd is not installed by default on a Cobalt software load, so telnet may be the only convenient alternative.

Place the files retrieved from Tim Hockin's site onto the Qube 3, by ftp or samba or any other means. Verify the files are ready.

[admin cobalt]$ ls -asFC
   [...]
 1752 flashtool
 1028 2.3.40.rom

As root, make a backup of the current flash prom contents. This is highly recommended, because a Qube 3 without a solid complete prom image installed is a useless piece of plastic and metal; the device will be completely inoperable. A backup of the file is the best insurance against this outcome.

[admin cobalt]$ su
Password: [...]
[root cobalt]$ ./flashtool -v -r > stock.backup.rom
./flashtool: searching for PCI 10b9:7101 : found it at /proc/bus/pci/00/03.0
./flashtool: systype = COBT_3K
./flashtool: bank 0: AMD AM29F080B 1MB
./flashtool: Using pthread POSIX real time scheduling.
./flashtool: reading page 0
./flashtool: reading page 1
     [...]
./flashtool: reading page 15
./flashtool: flushing buffers
[root cobalt]$ 

If there are any error messages at all, repeat the process. The flashtool attempts to work around critical timing issues on its own, but may fail occasionally. It is important to repeat the process until the whole prom image has been read successfully.


As root, update the prom contents with the unsupported experimental prom image.

[root cobalt]$ ./flashtool -v -w cobalt-2.10.3-1M.rom
./flashtool: searching for PCI 10b9:7101 : found it at /proc/bus/pci/00/03.0
./flashtool: systype = COBT_3K
./flashtool: bank 0: AMD AM29F080B 1MB
./flashtool: Using pthread POSIX real time scheduling.
./flashtool: writing page 0
./flashtool: buffer page 0 does not exist - creating it
./flashtool: writing page 1
./flashtool: buffer page 1 does not exist - creating it
     [...]
./flashtool: writing page 15
./flashtool: buffer page 15 does not exist - creating it
./flashtool: flushing buffers
./flashtool:   flushing block 0 to ROM... verifying...  done
./flashtool:   flushing block 1 to ROM... verifying...  done
     [...]
./flashtool:   flushing block 15 to ROM... verifying...  done
[root cobalt]$ 

Warning! If there are any error messages at all, repeat the process. The flashtool attempts to work around critical timing issues on its own, but may fail occasionally. Repeat the process until it succeeds. If the given prom image cannot be written successfully, write back the stock backup prom image made in the previous step. Do not power down the device until a complete prom image has been successfully written to the device.


As mentioned above, this procedure and the prom contents are not supported by Sun/Cobalt, and most likely voids all warranty and support obligations by Sun/Cobalt. However, if this step is performed successfully, the appliance can still operate on the stock Cobalt Linux software load, including its older 2.2 series kernel, if desired.

Thus, if any later installation of other software fails, or to go back to the standard Cobalt Linux distribution software load by choice, it is still possible to use the standard Cobalt Qube 3 OS Restore Disc.


Next Section: Inside the Cobalt GenIII Kernel RPM, Part 1: Preparing a Sandbox


Text and artwork are Copyright © 1996-2002 Ed Halley.
Linux is a registered trademark of Linus Torvalds.
Red Hat, and Red Hat Linux is a registered trademark of Red Hat, Inc.
Sun, Cobalt, and Qube are registered trademarks of Sun Microsystems, Inc.
Many thanks to Dax Kelson of Guru Labs, and to Tim Hockin of Sun Microsystems for their assistance and tools.
Copying in whole or in part, with author attribution, is expressly allowed.