What Has 1.1 Terabytes, 9,503 BogoMips and Flies?

What makes the ULB different from a hot PC with Linux on it? We pick stable, well-supported hardware for a homebrew system and end up with a terabyte of storage in an unassuming beige box.

Processors, Motherboard and Memory

Unfortunately, our schedule for this article caught us in the
middle of Intel's much-awaited transition from RAMBUS to DDR
memory. We had to go to press before we could get our hands on a
dual Xeon motherboard with both DDR and AGP support, which should
be available soon. But if you're playing in Ultimate Linux Box
territory, dual Xeon is the way to go. So, we got the RAMBUS-based
SuperMicro P4DC6 recommended by Alan Taub at Aspen. Our box clocked
out at 9,503 BogoMips with a 2.4.18 kernel. Yow!

SCSI on the motherboard is cheaper than a separate SCSI card. Big
fans are good. CPU coolers are shiny.

Since we're writing in the bad old days of RAMBUS for all you
happy future people in DDR-land, the best we can offer in the
motherboard department is a bunch of mindless platitudes. So do
yourself a favor and check the web sites of people who build Linux
boxes and then have to take the phone calls when customers have
problems with them.

Four features commonly found on some motherboards but not on
others are SCSI, Ethernet, sound and video. Don't rule out a
motherboard because it has something you won't use. Due to the size
of the Linux network server market, all the common Ethernet
chipsets you'll find on motherboards, such as the Intel
EtherExpress Pro100, are well supported. And if you're planning to
build a SCSI system, the price difference between a motherboard
with and without SCSI is generally less than the price of a SCSI
card.

None of the video or sound chipsets they put on motherboards
are Ultimate Linux Box-class, but if you're considering reusing the
motherboard for a server later, it doesn't hurt. If you're like
many office Linux users and rarely use sound, you might as well use
what comes with the motherboard.

Graphics and Sound

The trickiest part of building a Linux system is 3-D
graphics. We chose an ATI video card over an NVIDIA one this year.
See Frank LaMonica's Sidebar on some possible effects of this
choice. Monarch Computer Systems hooked us up with a Hercules 3-D
Prophet, which is a nice RADEON 8500-based card that will enable
you to start working with the cutting-edge, open-source clean 3-D
drivers when they come out.

The sound support front is a happier place. We used the ALSA
drivers, and with a properly set up ALSA-based system you shouldn't
need to disable the sound chipset on the motherboard to use a
high-end sound card. You can use both. We would run the
motherboard's audio in and out as a dedicated conference system to
chat with headquarters, while saving the Sound Blaster Live! for
playing Ogg Vorbis files on headphones. We still like the
now-inexpensive Sound Blaster Live! for the ubiquitous kernel
support, easy setup, good sound and, most important, the fact that
32 programs can have the audio device open at the same time.

What's All This about a Terabyte?

Until now, we've always recommended a safe, high-performance
but expensive choice for storage: two of the fastest-spinning SCSI
hard drives you can find. This is still a good conservative option.
However, when some people from 3ware showed up at a Silicon Valley
Linux Users Group meeting with an Escalade 7850 Storage Switch, we
decided to try it out.

So this is the first time we've had RAID 5 and a terabyte of
storage on a workstation, and it was surprisingly easy to get
working. We had to reboot from an MS-DOS disk to run the utility to
update the 7850's firmware, but the current version of the driver
is in the 2.4.18 kernel. Red Hat 7.3 and SuSE 8.0, the two
distributions we tried, recognized the array out of the box.

You'll be surprised to find the 3ware driver in
/usr/src/linux/drivers/scsi, not in drivers/ide. From the kernel's
point of view, the ATA RAID controller looks like a SCSI device.
You can't make a terabyte filesystem on pre-2.4.18 kernels, so be
sure you have 2.4.18 or later.

The web-based management utility, 3DM, that currently ships
with the hardware is proprietary, but 3ware assures us that some
time in July there will be a scriptable, command-line management
tool under the GPL. 3DM presents a clean, easy-to-use interface
that is simple to install. You also can rebuild an entire RAID
array from a web form.

If you want to use 3DM, you might need to reconfigure your
web browser. 3DM runs on port 1080, and Mozilla reported that,
“Access to the port number given has been disabled for security
reasons.” To override this, add the line:

pref("network.security.ports.banned.override",
"1080");

to Mozilla's all.js configuration file, which probably lives
in usr/lib/mozilla/defaults/pref/all.js.

3ware claims to be able to do hot-swap if you have the
appropriate drive cage. However, we installed the drives normally
and didn't test this functionality. We did get excellent
performance numbers though. With eight Maxtor ATA drives, we got
173.1MB/s reads and 23.5MB/s writes to an ext3 filesystem on an
otherwise unloaded system. This was about the same read performance
as a single 10,000RPM SCSI drive, but almost six times as fast for
writes.

Driver author Adam Radford recommends two /proc tweaks to
speed things up, and we used them. Set /proc/sys/vm/max-readahead
to 256, and set /proc/sys/vm/min-readahead to 128.