Article

How to create a Linux-based network of computers for peanuts

You don't need to spend $1,000 per user to create a modern, friendly, fast & productive computer system.

(LinuxWorld) -- A couple of days ago I had to add another workstation at work. Fortunately, we already had a monitor, mouse and keyboard, so all we needed was a PC with enough umph to run KDE, Star Office, AbiWord, and Netscape, which we use to access our browser-enabled applications.

I schlepped down to the local computer shop and shelled out $25 for a PC, another $1 for an Ethernet card, and $1.30 in sales tax. I was a bit miffed at myself for spending so much since the machine was a bit overkill for our needs, but who doesn't overspend when buying hardware?

Actually, the question isn't rhetorical.

The answer is, almost everyone.

The press focusses on the infinitesimal cost of Linux software, which is understandable. However, the great, underreported Linux story is how cheap an organization can be when buying hardware. Certainly, a 1.4-GHz desktop with a quarter-gigabyte of RAM and God's own hard disk is nice for video production, games, and software development, but it's unnecessary for people who use a computer as a productivity device.

In this series, I'll show how little you need to spend to outfit your organization -- big or small -- with hardware some might consider worthless, while giving away nothing in utility, speed, reliability, ease of administration or use. Sound impossible? It's not, as the City of Largo, FL (see link below), my company, and no doubt others have proven.

Let's dispel Microsoft's FUD

Remember Bill Gates and Microsoft are on a 20-year jihad to put a computer on every desktop. Very democratic. Very empowering. Very inefficient, especially for a bunch of people who work together. Let's assume for a moment that not every user needs on their desktop a computer that, 10 years ago, would have been classified as a supercomputer.

Let's also assume that users don't need a copy of Microsoft Windows. Let's install a copy of Linux on each computer instead. That saves on licensing fees, but runs square into Microsoft's Total Cost of Ownership (TCO) criticism of any operating system that's not Windows.

Microsoft's standard line goes something like this:

"Total cost of ownership is often higher when free operating systems are used in lieu of proprietary commercial products. Free operating systems are not ready for the desktop are difficult to use and to administer. Also the cost of an operating system license represents only a fraction of the cost of a PC."

That is probably true for those who persist in deploying Linux as if it is substitute for Windows. Of course, these people are essentially allowing Microsoft to tell them how to use Linux. Microsoft has a vested interest in steering the industry away from the best Linux techniques.

Naturally, PC makers encourage a Windows-oriented approach. They may concede Linux's capabilities as a server. They also endorse Windows as more suited to the desktop, because Windows helps guarantee that every desktop be equipped as a $1,000 workstation. Windows PCs are replaced every three years or so, which is long before they are worn out. It is planned obsolescence, and Microsoft and PC manufacturers have evolved toward a synergistic relationship that shakes coins from your pockets.

The other chestnut is ease of use. "Windows is easy," goes the argument, "and Linux is different and therefore hard to use." I find new employees, including those with little or no prior computing experience, become productive more quickly (and without risk to data) in a graphical Linux environment than with Windows. KDE, as only one example from the plethora of Linux desktops, is not that different from Windows from the perspective of a terrified new user.

Many applications are standard fare on lots of different platforms: Netscape is Netscape and Corel Wordperfect is Corel Wordperfect whether the underlying OS is Windows, Linux, or Unix. Yes, there are some things that a few (usually, "know-it-all") users think they should be able to do -- things we refuse to permit them to do. After all, we don't pay people to import viruses or play combat games, do we?

Linux is not only ready for general use on the enterprise desktop, it has been ready for several years. The only real barrier to more widespread adoption is in the minds of managers and system administrators who are stuck in the rut of expensive, powerful workstations -- whether running Windows or Linux.

The low-cost alternative

There is a better way. The two popular Linux graphical user interfaces are easy for new users to adapt to. They are freed from administrative tasks. Networks are easy to set up and administer -- even by "intermediate newbie" standards. And not just easy, but also, a cost-effective approach that emphasizes "cheap." Cheap workstation computers. Cheap server computers. Cheap networking hardware and cabling. Extended upgrade cycles for all equipment. And Linux, which is almost free.

"Cheap and easy" should set off alarm bells if it accurately describes the person you intend to marry, but may be precisely what you should look for in a computing environment. Whether the enterprise is a small business or a department within a much larger organization, Linux, coupled to the X Window System's ability to provide centralized execution and distributed/remote display, provides more than enough performance and ease-of-use for non-geek users and on cheap hardware that won't even permit experimentation with the latest Microsoft products.

The key is a form of server-centric computing built around X terminals. For our purposes, an X terminal is a graphical dumb terminal. This is a device capable of providing a GUI console to access an "application server." Sticklers for accuracy may argue that a PC with local media and an operating system isn't an X terminal -- some point out that an X terminal is not a computer -- but if a machine behaves like an X terminal, I'm prepared to regard it as an X terminal. Linux makes it easy to configure any PC to act as a dedicated X terminal.

"Okay, so what's an 'application server'?" Again, for our purposes, an application server is a computer that not only stores applications (for example, Star Office) but that also executes these applications for remote display and input from -- you guessed it -- an X terminal.

How is this possible?

The X Window System makes it possible. X permits a program to execute on one machine and display on another. X makes it easy to configure many machines as dedicated X terminal workstations. X terminals boot automatically to the graphical login prompt (XDM, KDM, GDM) of a single machine -- the Application Server -- to permit all users at all workstations to login and go to work just as if they were seated at the application server's local console. The entire network appears to users as one machine. The application server is configured like any standalone workstation. Our mini-mainframe is a mere commodity PC.

How do I define "commodity PC?" Minimal. Until they see it in action, most people don't believe how well a 200- to 300-MHz machine with 80 to 128 megabytes of RAM will perform. Such a PC easily provides KDE to several users and running applications like Netscape and yes, Star Office, to these users logged in at their PC X terminals.

As for X terminals, as I mentioned at the top of this article, X terminals themselves don't need much horsepower. PII, PIII and beyond are the stuff servers are made of and are unnecessary for workstations. An ordinary 486DX with 16 MB of RAM makes a good X terminal and a 486SX or 386DX with 8 MB will do in a pinch. In my experience, P75 to P100 machines with 24 MB are at or near the upper limits of performance improvement. Faster machines are fine, more RAM is great, but a P200 X terminal with 128 MB of RAM does not outperform a P75 with 24 MB.

The $25 PC I purchased recently is a 66-MHz 486DX with 16 MB of RAM, a floppy drive and 250 MB hard drive. The $1 NIC is a BNC NE2000 clone. Thinnet performs perfectly and well below network capacity for dozens of X terminals. Unless you have an allergy to coaxial cable there isn't a requirement to spend more for 100BaseT.

And that is the key to economical server centric computing with Linux. The PCs used for workstations can be obsolete, amortized, depreciated, recycled or free. The PC X terminal workstations can be boxes that wouldn't permit you to install a Pentium-only distribution like Mandrake as a stunt -- but you can use Mandrake from them quite easily if that's what you want to do.

Users can play musical chairs among all the workstations, and securely login to their accounts in a LAN-wide homogeneous computing environment. Perhaps best of all, the sysadmin does not have to know or learn anything about network booting, bootproms, remote printing, NIS, NFS, DNS, DHCP (or other abbreviations and acronyms such as NRA, SDS, SLA, USAAF, ERA, TGIF, Sadbus, Snafu and NFG).

Next installment, we will get into the nuts and bolts of constructing a network that is powerful enough for the enterprise and cheap and easy enough for family use at home.

More Stories By Colin Mattoon

When not buried under his real job in commercial two-way radio system design and sales, Colin Mattoon is a part-time Linux system administrator at Northwest Communications in Lewiston, ID.

Comments (3) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Dane Jones 03/14/04 02:10:00 PM EST

When the site was redesigned all the links broke.
The next part is here:
http://www.linuxworld.com/story/32832.htm
Unless they broke it again.

Jahja Gonzales 11/06/03 07:36:22 AM EST

I too got exited. I like this kind of talk. But the missing HOW-TO was disappointing. I hope it'll get fixed.

Regards

Kermit Jones 11/06/03 01:56:45 AM EST

A few pages are missing from the How to build a Linux network for peanuts. Mainly, when on page one, clicking for the part 2 doesn't work.

This was an inspiring story for me. Look forward to seeing it all again.

Kermit jones
kermitjunior@yahoo.com