Issue #19 May 2006

Running Linux on small servers


If you've been hearing about the benefits of commercial applications of Linux but have been hesitant to purchase and implement a Linux solution, consider starting with a file, print, or web server. Linux can replace old Windows-based machines and expensive UNIX®/Sun® Solaris® systems with an AMD or Intel® x86 server.

In fact, you may already be using Linux-based servers without knowing it. A number of hubs include print server capability and are Linux-based. Many file server appliances, such as Linksys' sub-$100 NSLU2 Network Storage Link for USB 2.0 Disk Drives, run on embedded Linux. (An easy way to tell is if you weren't asked to pay for client-side licenses.)

Linux on servers

Linux's reputation for being stable and reliable has led most of today's gateway and security appliances to use it, with the expectation that the customer will never have to touch the operating system.

For the server market, Linux offers low entrance cost. Adding more clients to the network requires no license purchasing or management.

Linux allows you to tune the kernel on each system or virtual machine appropriately for the services it will provide. This improves performance, security, and reliability, reducing the on-going system administration needed. While Windows can be fast, its kernel must be large to provide the variety of services users may want to employ. Linux lets system administrators remove services that aren't needed, eliminating unproductive loads on the hardware. Linux providers have also gone to great lengths to provide browser-based administration of major configuration and administrative selections.

Linux code is, of course, open source: the source code is available to anyone, including users, developers, security experts, system/network administrators, and other experts who frequently contribute code improvements, new features, new drivers, and security patches.

Linux provides good driver support for outboard storage, including stable SCSI drivers. And since you have access to the source code, the drivers are far easier to troubleshoot.

Running your file, print, or web servers on Linux machines lets you consolidate server workloads and reduce the cost of maintaining and administering those systems.

Linux is also a good candidate for server virtualization. 64-bit versions of Linux allow you to load up a 64-bit x86 machine with enough RAM to support more virtual machines, using server virtualization utilities. Having file, print, or web servers based on Linux also makes it easier and more cost-effective to consolidate multiple existing systems onto new 64-bit x86 AMD or Intel-based hardware, using the same server virtualization utilities.

Why Linux for file servers?

Linux gives you a wider choice of file systems and volume managers. Several file systems are available for Linux, including EXT3, the standard choice, and Red Hat Global File System (GFS), which allows a cluster of Linux servers to share data in a common pool of storage.

Linux file systems include easy-to-use features that let you set up multiple servers accessing a single file system and replicate a file system to two physically distant servers, while automatically keeping them in sync. While this is possible on Windows or Solaris, it is considerably more expensive than the comparable Linux solutions.

For networks that will include Windows machines, Samba running on Linux is a popular file-serving solution.

Samba is an open source suite of programs that lets Windows, Linux/UNIX, and Mac systems access file systems through the Windows Server Message Block (SMB) and Common Internet Filesystem (CIFS) protocols. A Samba Linux server can be configured as a file/print server on a Windows network or as a stand-alone file (and print) server for Linux and Windows clients. All one-year and three-year Red Hat® Enterprise Linux® subscriptions include Samba.

Over the last several years, many tests have shown Samba on Linux performing favorably compared to Windows. A PC Magazine benchmark versus Windows 2000 showed Samba performing about 100% better, and Samba on Linux handling about four times as many client systems as Windows 2000 before performance began to decline. Using Samba on Linux rather than Windows Server 2003 Standard or Small Business Edition avoids the cost and management of per-client licenses.

Linux also offers a number of volume management systems, including Logical Volume Manager. These choices and tools make it easier to migrate blocks of physical storage in and out without disrupting your file system.

Linux boosts print servers

Using a print server, rather than the print queue mechanism available as part of most operating systems, lets users submit print requests to an external queue. Fulfillment doesn't require the user to keep their computer powered on and connected.

Windows does offer print server capabilities. However, to support several print servers on a medium-size network with several hundred people, Windows requires Active Directory (read: expensive server licenses).

For networks consisting of Linux/UNIX systems, the Line Printer Daemon (lpd) included in Linux can be used to provide print serving. Linux can also run Samba as the intermediary between the print server and Windows clients. (If you want to share printers between Linux machines, you do not need to use Samba.)

For its printing system, Red Hat Enterprise Linux defaults to CUPS (Common UNIX Printing System), which is the recommended spooler for all Linux distributions. Red Hat also provides LPRng, an older utility.

CUPS is intended to be a simple method for setting up network and local printers. Many printers, including inexpensive models, support CUPS. If not, you will need additional drivers, which are free for most leading printers and available from the printer vendor's site or from the Foomatic database.

For configuring printers, Red Hat Enterprise Linux includes the Printer Configuration Tool (Printconf), a GUI-based tool that helps maintain the printer configuration file, print spool directories, and print filters. For Windows-oriented companies, third-party Windows-based administrative programs for Linux print, file, and web servers are available.

A Linux server running Samba plus CUPS can be a print and file server for Windows networks. It can be configured as a file/print server in a Windows network or as a stand-alone print (and file) server for Linux and Windows clients.

Once your Linux server is configured as a print server, with printers attached and drivers installed, Windows users can browse printer shares in Network Neighborhood. On Red Hat Enterprise Linux, any of the following print queues can be configured: locally connected, networked CUPS (IPP), UNIX (LPD), Windows (SMB), Novell (NCP), and JetDirect.

Linux for web servers: A popular choice

For companies considering adding or migrating to Linux for its reliability, flexibility, cost and other benefits, a Linux-based web server can act as a starting point. For companies already running Linux workstations, network security, or file, print, or other application servers, many system administrators find Linux-based web servers are a natural progression.

Red Hat Enterprise Linux includes the Apache HTTP Server (httpd) software. Apache has been the most popular web server package on the Internet over a decade. More than 70% of all web sites on the Internet use Apache. Apache is a full http/https web server, ideal for programmers using Perl, PHP or CGI technologies. Apache httpd on Linux has a large number of free and commercial plugins, including the SQUID web proxy cache.

Linux also supports a number of other free and commercial web servers.

No login required. Want to see your comments in print? Send a letter to the editor.

Microsoft Internet Information Services (IIS) web server runs only on Windows; there is no version of IIS for Linux. If you need to use features found only in IIS, like ActiveX, you will need to run a Windows server.

One option is to run IIS on Windows in a virtual machine, under a server virtualization utility, with Linux as the host operating system. Of course, you won't have access to the source code for IIS or Windows for tuning, modifying or troubleshooting. But you knew that.

Enter to win

Win a $100 gift certificate for yourself and a server and infrastructure package for your company, valued at $20,300!

About the author

Rebecca Fernandez is a writer and podcast producer at Red Hat. She can frequently be found smashing her fingers with a hammer on the weekends, when she is busy building a house.