From LinuxMIPS
Revision as of 15:56, 19 January 2006 by DomQ (talk | contribs) (1U RaQ's: Cited Jim Gifford, with permission)
Jump to: navigation, search

Note, This page does _not_ cover the x86-based Qube 3, Raq 3 and later Cobalt servers. I've got some resources on my wiki here.


The Qube and RaQ series was created by Cobalt Networks Inc. (which was later bought by Sun Microsystems). EOL of the RaQ2 series was in 2001.

The machines were build to suit different purposes. Therefore they were sold with different hardware options regarding memory, storage options and networking.

The boxes were shipped with a web-based administration GUI on top of a Red Hat Linux running a 2.0.x-kernel. Additionally certain basic settings could be set using the LCD display and the control buttons.

Processor Options

Cobalt Qube and Cobalt Raq were equipped with RM5230 processors running at 150MHz. Qube 2 and Raq 2 use the RM5231 CPU which doubles the cache size over the RM5230 running at upto 250MHz. This processor is a MIPS IV architecture with minor extensions. At the moment, Linux/MIPS will run in 64-bit mode on these machines, but support is very experimental at the moment, and therefore is not recommended for production use. Running a 32-bit kernel however is quite stable.

The Raq 2 uses Galileo GT-64111 System Controller and VIA Technologies VT82C586 (Apollo VP) PCI-ISA Bridge.


All boxes have two 72-PIN EDO slots on the same board as the CPU. The boxes came with standard amounts between 16 and 256MB RAM. Maximum is 256MB (2x128MB DRAM EDO SIMMs, 3.3V).

Serial Console

These boxes are completely headless though the Qube2 and RaQ2 provide a serial console port (originally running at 115200 bps, 8-bits, no parity, 1 stop bit). To enable this during the startup, hold in the "password reset" button whilst powering the unit on. On RaQ machines this button is behind the hole on the lower right corner of the LCD (use eg a pin to operate). When "Console ON" appears on the LCD panel, power-cycle the box. From now on you should see the Cobalt firmware (or CoLo) starting up.

Storage Options

1U RaQ's

The 19", 1U RaQ-case fits for up to two hard disks (each max. 137GB - also please keep the rating of the power supply in mind, Jim Gifford recommends against using a second disk faster than 5400 RPM). They also have a single IDE socket, which means that the two disks are to be mounted on the same IDE interface. Of course this requires another IDE ribbon cable with 3 connectors, as well as a Molex splitter since the motherboard has only one power outlet.

Another, better performing solution for 1U RaQ's for someone with some soldering experience is to enable the second IDE channel by fitting the components for it (the IDE circuitry is already there, one just needs a handful of resistors, a diode and the connector). Here is the result:


Additionally some RaQ 2's have an onboard LSI-Logic (this photo) SCSI controller (NCR53C810, ultra narrow) which hooks to an additional mini-micro 50-pin SCSI port at the back.


The original Qube, as well as the Qube2, had a single ATA66 IDE socket on the main board.

The Qube2 can happily accept any PCI SCSI card that will physically fit inside the case (I'm happily using a Adaptec AHA-2940AU PCI SCSI card without any problems).

Note that the Cobalt firmware only recognises the Master IDE HDD plugged into the onboard socket.

Networking Options

The Cobalt servers are equipped with either one or two ethernet interfaces. The first revisons of Qube and RaQ have 10Mbit interfaces using the DEC Tulip 21041 network controller. The more recent 21143 controller supports 10/100Mbit ethernet and was build into later revisions of Qube and RaQ. Qube 2's and RaQ 2's use the 21143, too. Again, if your server has a PCI slot you can install a PCI network card into that slot to use it with Linux. Note that you can only netboot with the onboard Primary (eth0) interface.

Network performance using a current kernel is rather poor (only up to approx. 1,5 MB/s).


The stock firmware on the Cobalt servers is basic to say the least. It supports netbooting using DHCP & NFS, as well as booting off the hard drive. The firmware expects to see a kernel image called 'vmlinux.gz' on the root directory of the first partition on the first drive. It can only read EXT2 revision 0 partitions (create them using mke2fs -r 0 /dev/BLAH) and cannot load kernels of over 675kB in size.

Peter Horton is the author and current maintainer of the CoLo boot loader. CoLo, unlike the original bootloader, has no limitation on the size of kernel to load, and also features support for initial ramdisks, EXT2 and EXT3 support, as well as loading kernels over NFS and TFTP. It can be configured through the use of scripting, with the capability to chain scripts together, ask questions on the LCD panel and perform various tasks.

See the CoLo and Cobalt_Firmware pages for more information.

Running Linux

Installation of Linux on Qube and RaQ is done by either serial line or netboot/nfs. Therefore special support is required.

The "intended" way

The Cobalt boxes were shipped with a preinstalled Red Hat based Linux distribution. Additionally Cobalt provided a GUI to admin the box. A restore CD [1] to do a net-install using a PC having a defined NIC (3com-series) was included. Shipped Kernel was of the 2.0.-series. (Outdated) update packages are still available. "Newest" provided Kernel was 2.2.x

The "unoffical" Debian way

In mid 2002 Paul Martin published a How-To to install (the at that time new) Debian Woody 3.0 on the cobalt machines. He also provided the necessary files and a 2.4.18 kernel (supporting ext2- and ext3-filesystem) for the base installation. The Cobalt machines aren't officially supported by Debian Woody - but are doing well running their MIPSel flavour after base-installation is done.

The "new" Debian way

Oncoming Debian Sarge will officially support MIPS-based Qube and RaQ. It will include its own installer[2] but requires another system for acting as NFS and DHCP server.

The Gentoo Way

The Gentoo/MIPS Handbook covers installation of Gentoo Linux/MIPS on both SGI machines (specifically IP22, IP27, IP28, IP30 and IP32) and on the Cobalt server (32-bit only).

Other Distributions

Cross Linux from Scratch will also run on a Cobalt, in either 32-bit, [64-bit or multilib (o32/n32/n64) mode.

µClibc's buildroot also can be used to build a 32-bit userland that will run on a Cobalt machine.

See Distributions

Hints for running Linux

Build your own kernel

When building your own kernel start with few kernel options and add required options later. Some combinations fail(ed) to compile - or don't work properly (eg. SCSI-support is/was affected). The provided "defconfig-cobalt" is a good start. Other user-contributed .config settings can be found on the Gentoo/MIPS Hardware Compatability Database.

When the compiler is finally running and building the kernel, have some quantity of your favorite beverage or go out for a nice walk or have a chat. On a RaQ2 with 256 MB RAM and a decent hard-disk building the kernel and modules will take more than two hours ;). Maybe setting up a cross-compiler is a good idea either.

Using the original boot-loader

As the boot partition is ext2-type at least support for ext2-filesystem has to be included in the kernel.

Following is valid for kernel < 2.4.23 and machines running the original firmware: Kernel size is a big matter. Maximum compressed size is about 620 kB (depending on model). "strip vmlinux" is recommended to reduce the size. Afterwards do "gzip -9 vmlinux" and install your kernel.

Copy your own version of and vmlinux.gz using appropriate names (eg. 2422.gz) to the boot partition. Keep a copy of a running kernel as backup! Enable the serial console (if not already done), attach a cable to the serial console, start your favorite terminal program (115k2, 8N1) and power on the box. When post is running press space and enter e.g. "bfd /boot/2422.gz". When the kernel is booting you're done. Otherwise reboot and boot your backup kernel.

Using "CoLo"

When using CoLo only installed memory is the limit of the kernel size. For other advantages - see the Firmware section ;)

Other information

Running amateur radio services

When using CoLo you can setup KISS using the console port at the required speed - eg 38k4 baud. Running IP over KISS does work without problems.!

Using a 2.4.x-Kernel for IP over AXIP doesn't work (tested with 2.4.22 and using several methods (BPQ etc.)). Plain AXIP does work without any problems.

Using kernel 2.6.x isn't tested yet.