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.

Which 3-D Card for Linux?

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:


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.