In the first few articles in this series, I talked about strategies for getting Linux into your organization and covered areas where it's possible to work Linux in your enterprise as a stand-alone entity, such as a network sniffer or as a web server. However, one of Linux's strongest suits is as an "interoperability agent" that can allow a company to support multiple platforms, such as Windows, Unix systems, NetWare, and Apple Macintoshes painlessly from one central server.
How does this happen?
One of the most interesting aspects of Linux development is that, apart from the kernel itself, there has been no grand plan governing the evolution of the overall system. In true open source fashion, the various kinds of applications and non-kernel services available for Linux have developed directly in response to the needs of the user community. This is true in the *BSD world too, but Linux advocates have raised it to an artform, as can be seen in the offerings available at the open source software site Freshmeat.net or at the open source collaborative development nexus, SourceForge.Net, both of which are owned by VA Linux Systems.
A typical example: A developer somewhere in the world needs to have a data logging system that can monitor a collection of serial ports but can't afford a commercial data acquisition system, so he or she sits down and writes one.
Another development scenario is that a developer wants the same capabilities as a commercial package on their Linux box, but the vendor of the commercial package shows no interest in making a Linux port -- a common solution is to write a compatible package. GIMP (GNU Image Manipulation Program) is a perfect example of such a package. The GIMP is a Photoshop-compatible system which offers a wide variety of image creation/manipulation facilities.
Lastly, another common occurrence is that packages, such as the AppleTalk file-sharing package NetATalk which was originally written for BSD-based Unix systems, are ported to Linux.
With all of the packages that have been ported from other Unixes and the native Linux development that has gone on, Linux has an amazing capability to interoperate with or translate to/from almost any other kind of computer system and applications package currrently available on any operating system platform.
How does this make a case for Linux in the enterprise? Say, for example, you worked in an office where there were the following kinds of computing systems used by various groups and divisions:
Suppose the management of your firm gives you a chance to reduce the server-count from four (NFS, NetWare, Macintosh, and Windows for Workgroups) to one, single system that will transparently take care of the needs of these diverse systems. How can this be done?
This is a realistic, but obviously contrived, scenario to demonstrate how you could use a single Linux box to solve the file and printer sharing for all of these systems.
If you were to put together a modest Linux system (a reasonably fast PII/PIII system, or even a spare Sun or Compaq/DEC Alpha box) with a generous allocation of memory (say, 192Mb) and enough disk space to match the sum-total of the existing disk space on the existing servers, you could set up this system in a day (not including copying all the files from the other file servers and clueing the user community in on the new service)!
The "obviously contrived" portion of the scenario for those of you already familiar with what a generic Linux box can do is that, with the exception of the AppleTalk file-sharing piece, all major Linux distributions (RedHat, Caldera, SuSe, Mandrake, Debian, PPCLinux, etc.) come with all of these services built in. Basically, all you would have to do is install Linux.
Yes, that's right -- the capability to serve up files via NFS, NetWare and Windows for Workgroups is installed "out of the box" in all of these systems. AppleTalk will require that you acquire a set of binaries (or compile some source-code).
Let's examine what each of these services is, and how it can fit into your server replacement strategy:
Well, now that we've established that, using Linux, it's pretty easy to help your company contain its server costs, what else can we put on this machine to make life easier?
Probably the two easiest targets are electronic mail and fascimile processing.
Providing that your e-mail volume isn't too large (and that this server is not the primary e-mail server for your firm), you could set up your file server to be the workgroup e-mail server as well. Discussion of a sendmail installation is well beyond the scope of this article, but more information can be found at Sendmail.com. The definitive reference text on this program, entitled simply Sendmail, was written by Sendmail's author, Eric Allman, and is published by O'Reilly & Associates.
There are quite a few fax solutions available for Linux. Here too, they are often pre-installed with many vendors' distributions.
Of course, this article paints a very optimistic picture about how much functionality you could put onto one box. If your file server is very heavily used, it's probably not a good idea to put both the e-mail and fax services on this machine, unless, of course, you have a very well endowed machine (such as a 4-CPU system with several SCSI or IDE interfaces).
Also, attempting to convert your entire organization to run on a Linux-based server without adequate planning can both really stress you and and probably get you in trouble with your boss. I would strongly suggest writing a "Linux Business Plan" along the lines of Getting in the Door. This way you can further the cause of Linux world domination while appearing to be a good corporate "team player."
David HM Spector is President & CEO of Really Fast Systems, LLC, an infrastructure consulting and product development company based in New York
Read more Linux in the Enterprise columns.
Discuss this article in the O'Reilly Network Linux Forum.
Return to the Linux DevCenter.
Copyright © 2009 O'Reilly Media, Inc.