Advice on building a Linux box
I get a lot of questions on Linux hardware: "What's the best piece of hardware X for Linux?" "Should I go route A since I'm using Linux?" Of course not everyone builds their own computer. But there are a fair number of us out there that would rather keep as much control over the selection of their machines components as they can. And there is something to be said about hand-picking your components. But which video card? Which sound card? Which networking card? Processor? Motherboard? Will it all work with Linux? You know it will work with Windows...but with Linux there can be some gray area.
In this article I am going to show you how I go about putting together a machine that will use the Linux operating system. I understand that this type of topic is very subjective, so there will be plenty of disagreements. But that is part of the fun and the reason why we have comments available on this site. So, without furtherÂ adieu, let's get to building.
To go bare-bones or not
I will be up front here. Most often, when building machines I go with a bare-bones kit. If I have a client who has a need for a specific feature, brand, or function of a certain motherboard, case, or power supply Â (or I have a specific need myself), I will go with a bare bones kit. The reason this is almost always safe is that motherboards are not picky about their operating system. The only area that should give you concern is on-board components. On-board components are where you will come into your biggest issues with Linux. And although this is even becoming a thing of the past (Ubuntu and Intel graphics now play very well together), you could find a sound, network, or video card on-board that will give you fits. (But even on-board issues can be circumvented by installing a video, sound, or networking card.)
One company I have had a LOT of luck with is Shuttle. The Shuttle bare bones machines are great little machines that are compact, well designed, and always deliver.
After you have decided on your case, motherboard, and power supply, the next step will be your CPU. The biggest issue with your CPU will be whether or not to go 32 or 64 bit. But this choice (in my opinion) is more about the choice of either 32 or 64-bit Linux. In my experience, the choice between 32 and 64-bit Linux is an easy one. Unless you have an application (or need) for more than 4 Gigs of ram, go with 32 bit Linux. The difference in speed isÂ negligible and the lack of a native 64-bit Â flash plugin will have you pulling your hair out.
This is a big one. Although you more than likely are not going to be doing much (if any) gaming on this Linux PC, you shouldn't skimp on the video. Why? A number of reasons. The first reason is Compiz. You want Compiz running. It's just too cool and helpful to look over. Another reason is Virtual Machines. If you skimp too much on the video card you won't have much resource to hand over to your Virtual Machine.
As for brand, even though a lot of people will sneer at this choice, NVidia is always a good bet. With the NVidia cards (don't go below an 8600 to be safe) you have your choice between open and closed source drivers. The closed-source drivers never fail me. And if you want to shy away from closed-source drivers, the Nouveau drivers have come quite a long way.
But this doesn't mean you have to completely ignore your on-board graphics. With the amazing improvements Ubuntu has done with the Intel drivers, you should give them a try before you slap in that brand new NVidia card.
As for ATI? I would avoid them. Getting 3D support in ATI cards can be a hassle. Where an NVidia or Intel graphics card will work out of the box, the ATI cards will most always need a bit of tweaking.
Generally speaking, the only issue you might have is if you are going the wireless route. Â If this is the case you want to look for a card with an Atheros chipset. This D-Link WDA 2320 Rangebooster G adapter works great.
Generally sound is a non-issue. The standard Soundblaster cards all work well. You might have some issues if you are attempting surround. But all Creative ISA sound cards are supported with the Linux ALSA drivers. You might find issue with integrated Sound Blaster X-Fi. If you have this chipset, go to the Creative Open Source Web site and download the beta drivers for this card. Other than that, sound should not be a problem.
That pretty much does it for the more challenging aspects of building a Linux machine. Of course you might find issues with some peripherals, but just keep coming back to Ghacks and you should find plenty of solutions. And don't forget, a good source for hardware compatibility is the Linux Hardware Compatibility database.Advertisement
“Unless you have an application (or need) for more than 4 Gigs of ram, go with 32 bit Linux”
Unless you have a k6-2 333Mhz cpu system go with 64-bit on any “modern’ system.
. Asus is always a solid MB choice also…
Since when is there no 64-bit support for Adobe Flash? That was the main reason I switched from 32-bit. For anyone who has 3GB or more of RAM, you should go 64-bit. The 64-bit OS will run faster, although it will use slightly more RAM and slightly more HDD space.
Surround sound has never been a problem either. If your audio card works with 2 channels, it’s a safe bet it will work with 5.1. Everything else is excellent advice, especially about using Intel/Nvidia video. I’ve nothing good to say about ATI, hopefully this will change soon.
Go 64 bit if you can. There is a flash 64bit code base available.
I also think your selection process is backwards. Identify the software first that
will be on the system first. Then note the peripheral hardware that will optimize
that usage experience. Then select the hardware that will coexist with that total
I would also recommend using Intel nicÂ´s over dcom anyday. Most ops in #debian @efnet agree there (we talked about this years ago).
You are also talking about building a new machine and talk about isa sound cards. A bit odd to day the least, iirc isa hasnt really been used since the first pentium generation, or maybe even 486.
I agree, go with x64, having the choice of +3 or 4 gigs of ram on a workstation (and ofc server) is really nice. Even if flash wouldnt be working perfectly, you are probably going to build a machine for the future, not for what is exactly right now or weeks or even months ago.
“ISA sound cards”… it’s 2010 not 1990.
I use 64 bit Linux, flash is no problem at all, i use my lap and desktop with 64bit Debian, works really well, every package that i need has a 64 bit version
You mention the open and closed source driver for NVidia cards and saying that you can use nouveau if you don’t want the closed one, failing to mention that nouveu is very imature at the momment and capable only for 2D.
On the other hand you say to avoid the ATI cards because their closed source driver can be a hassle without mentioning the open source one which is more mature than nouveau and also for older cards is a complete driver that works out of the box without hassle…
ATI’s driver support has come a long way. It still sucks, but there’s hope. Catalyst can be hit and miss still (although its getting better), but the open-source drivers are getting there, too. I’ve got 3D acceleration on a Radeon HD 3200 with drivers built from the git repository. There are still lots of performance improvements that need to be made, and they need to get power management working, but I’m hopeful for good driver support in the near future. There’s hope, now, where there was none when I bought my laptop a year ago with no choice about the graphics card, or knowledge of the driver issues.
This is an important topic and deserves to be done right. I have researched the hardware for every computer I have built. There is certainly a big difference between compatibility and having the best support for powerful and affordable hardware. I would like an article on this subject with more accurate information and in depth evaluation.
If you want to do audio production using a realtime kernel, then stay away from Nvidia boards. It is a lot of trouble (or nearly impossible) to get the realtime kernel to cooperate with the nvidia video drivers.
For the last year or so, a 64-bit Flash plugin has been available from Adobe. There is also 64-bit Java.
Someone above said to pick software first, then choose compatible hardware. Wrong, wrong, wrong. Your software selection will change every six months to a year, even if the kinds of tasks don’t change. If you didn’t choose hardware that can handle the changes you need, you’ll kick off a hardware upgrade cycle before your current hardware has a chance to payback your investment.
Penguin-friendly since 1998.
on a linux system with the software first approach cinelerra video editor is suggested to run on 64 almost exclusively. Which makes me wonder which other linux software demands 64. Inkscape routinely bogs down on my p4 with 900 plus meg ram. Or is the lack of a graphics card the bigger issue ?