Book IconLINUX DEVELOPER'S RESOURCE



Introduction

As you picked up this book you may have asked yourself, "Why should I run my business on Linux?" The question is quite understandable considering that Linux started out as one person's college project. It is the work of thousands of volunteers around the world who have contributed the various components. There is no company that has developed it, so there is no "seal of approval" or "100 percent money-back guarantee if you are not completely satisfied."

So why run your business on Linux?

If you are looking to run a system composed of the latest software on the most advanced hardware, Linux is not for you. Commercial UNIX vendors have good working relationships with both software developers and hardware manufacturers and more than likely have tested the most current versions of the software or drivers. In many cases, the product has been on the market for sometime, before the work begins porting it to Linux. Even the sheer number of supported products steers a company toward a commercial operating system.

So why use Linux?

There are dozens of reasons why computer "hackers" like Linux. First of all, it's free. There are none of the same licensing issues as with commercial UNIX products. One copy of Linux can be installed on every machine in your company if you choose to do so. The only costs involved are those in obtaining the first copy. If you have a friend with a copy, nothing prevents you from installing that copy. If not, there are many mail-order houses that sell copies for nominal fees, usually just to cover the media and handling. If you have an Internet connection, copies are available from many sites. Now that sounds like a contradiction. If the software is free, how are companies selling it? Well, "free" actually has two meanings. If you want, you can download the source to the kernel, along with all of the programs, utilities, and applications. Doing this from work is probably free, but you are likely to annoy your boss. If you do it from home and your Internet provider is a local phone call away, it may also be free. Otherwise, you are looking at a hefty phone bill.

What "free" really means for Linux is that you are free to do with it what you want. That means you are free to copy it as often as you like to as many machines as you like. You are given the complete source code so you are free to change everything about the system that you don't like. This even means that you are free to charge for it. Considering the price of most distributions and what you get for your money, it's close enough to being free that there is no need to argue about it. Supporting this is the fact that Linux is small. With only 2Mb of RAM and 40Mb of hard disk space, you can install and run Linux successfully. However, if you want and if you can afford the hardware, Linux will run on the fastest Pentium--and even the Pentium Pro--and you can install hundreds of megabytes worth of programs and applications that are available. (My gigabyte partition is almost full of commercial Linux software with very little data.) Also good for the hacker is that the source code is readily available. This does not mean that you must download it from some Internet site. Instead, it is a requirement that all versions that are distributed provide access to the source code. You can twist and tweak the system to your heart's content, changing anything and everything. But what good does this do a business? Well, if you think about it for a moment, all of the reasons I just mentioned are valid for using Linux in a business environment as well. Obviously as a business you want the best product for the least amount of money. Obtaining Linux from a commercial distributor might cost you $50, which is certainly reasonable. Some are bundled with other products and, as a result, may up upwards of $200. Based on what you get, this is reasonable, too. If you already have machines in your company, you probably don't have to buy any new hardware to get Linux to run. That will save you money.

Because you have the source code, you can completely change the system to fit your needs. You can configure your system to best support your users. UNIX, in general, is customizable. By providing the source code, Linux takes that feature one step further. What's the point of having free software when you can't use it effectively? Valid question, but it doesn't apply to Linux. As I said, Linux can run on a wide range of hardware platforms. If you have a 20Mhz 386 (like my son does), Linux runs fine. If you have a 133Mhz Pentium (as I do), Linux runs fine as well. Linux also supports most of the standard bus types like ISA, EISA, PCI, and Localbus. Linux has also been ported to DEC Alpha and SPARC machines, and versions are being developed for Motorola 680x0 and PowerPC (if not already). Major software products such as WordPerfect, Mathematica, CorelDraw, StarWriter and Applixware have been ported as well. Linux is also a very powerful operating system. It's fast and takes advantage of the multitasking and multi-user capabilities of the hardware, just like commercial UNIX dialects. Because you have complete access to the source code, you can change the behavior of the system to suit your needs exactly. In contrast, most commercial versions will allow you to tune certain parameters, but often that is not enough. Most of the readily available Linux distributions come with all of the tools, applications, and add-ons that you might expect only to find in a larger product offer. These include compilers, The X Window System, TCP/IP, and even a WWW server. Dozens of commercial products are available as well as hundreds of shareware or freeware programs.

Linux is often called a "clone" of UNIX; it just has the "look and feel" of UNIX. However, what is UNIX? The Santa Cruz Operation (SCO) owns the rights to the original AT&T source code. So is the SCO version really UNIX? AT&T produces a version of UNIX, so is the AT&T version really UNIX? In my mind, UNIX is more of a concept than a single entity. There are certain characteristics that an operating system must have to be called UNIX. Linux has the same basic characteristics as all the other dialects, including all of the standard tools. However, Linux has not been official approved by X/Open. However, companies like Caldera are working on it, therefore, we need to call it UNIX- like (or simply Linux). Users and administrators who know how to work on other dialects of UNIX can easily switch to Linux in a relatively short time. It has all the programs and utilities that UNIX administrators have grown to love. Many have substantially more functionality than their commercial cousins. Implementing Linux in your business has another advantage as a result of it being free. If you are a developer, Linux can be installed on computers at home, just as easily as those at work. Even if you have a DOS/Windows machine, Linux allows you to install without having to repartition your hard disk. It will allow you to install directly on top of a DOS (FAT) file system. Because it recognizes the standard PC partition table, Linux can be installed on a separate partition just as easily. You can have your employees working on the same systems at home that they do at work, without incurring extra license fees for the OS. One advantage that Microsoft has is its sheer numbers. You find Microsoft products everywhere. I know that if I sit down at a Windows machine somewhere, the commands will be the same as what I am used to. Often, one requirement of MIS managers is to use "shrink-wrapped" software. They want to be able to get a product off-the-shelf, believing that its accessibility is somehow a guarantee that it is good software. Although you won't (yet) find a Microsoft product saying "Cool: It runs on Linux," there is a wide range of software available for Linux. Most distributions come with a very extensive set of application software. However, there are many commercial products available, some of which we will get into later. You don't need to buy commercial software to do productive work. LIVIA Informatique in Paris, France, has been working on French translations of some of the UNIX books published by O'Reilly & Associates. The latest title available is the French version of CGI Programming on the World Wide Web by Shishir Gundavaram.

What does LIVIA use todo their work?

The emacs editor that comes with every Linux system. LIVIA director Nat Makarevitch says, "We edit the documents under emacs with the help of a mode named 'AUC TeX.' In fact, emacs is here the Swiss (army) knife helping us to tackle all edition- related work." There is a common misconception that something that's free is not worth much. Everyone knows that you get what you pay for, right? Scott Christley, President of NET- Community, reminds us that free software does not mean the price, but the freedom to change it to fit your needs. Scott goes on to say, "...the cost of the software is generally irrelevant in the big picture. It's the maintenance costs over the lifetime of the software that becomes the biggest slice of the pie." Because you have thousands of people assisting in the maintenance effort, your costs are minimized. David Bonn of Seattle Software Labs puts its another way: "Consider air. Consider listening to the radio. Consider beers bought by a friend. Linux combines aspects of all three." If you need the features of commercial products, they are available as well.

Products start at the small end with text editors, word processors, spreadsheets, databases, etc., and move on to full-blown office suites. These are not products that are just thrown together or "clones" of the commercial products available for Windows and other operating systems. Instead, these are the same products. Caldera has created their Internet Office Suite, which contains a complete version of WordPerfect. StarDivision has released a Linux version of their StarOffice suite. There is also the less known Applixware from Applix. Despite the fact that it is not as widespread as some of the other products, Applixware provides a fully integrated office suite, which includes a tool builder and an HTML editor. What good does all that do when it crashes all the time? The answer to this question is simple: it doesn't. Linux has been installed on hundreds of thousands of machines and runs virtually trouble-free. Because every administrator has access to the source code, when problems do arise, they can be quickly located and solved, and the remedies are then made available to everyone. Even so, because it is so widely used, it has been tested as much (or more so) than commercial products, making it just as reliable. In addition to being reliable, an operating system needs to be stable. There is no doubt that Linux is stable. The only times my system is rebooted is when I turn it off at night and when I make changes to the kernel. Minor changes, such as changing your IP address (which, by the way, requires you to restart a Windows machine), are not causes to reboot Linux. Additionally, device drivers can be loaded into the kernel of a running Linux system.

Okay, not having to reboot to load drivers doesn't necessarily mean that a system is stable. However, running an Internet server 24 hours a day, 7 days a week, and then only rebooting to update the kernel is a pretty good indication of the system's robustness. When you add a company with more than 200 offices that run solely on Linux, the evidence is pretty clear. The fact that some people use Linux does not necessarily mean that it is stable. They may believe that the cost is right to accept a few crashes now and then. Aside from talking to the tens of thousands of people that are using Linux, you can take Linux for a test drive to see just how stable it is. You might find a reseller that will allow you a trial of NT. SCO is providing a single user version of their OS for free. However, letting you run extended tests (for example, over six months) on a complete version is not something that you are likely to find (assuming that you are not planning to lay out several million dollars and the reseller will do anything to get your business). It's completely different with Linux. For around $50, you can get yourself a complete, unlimited user version of Linux. With the OS, you get a fully functional WWW and FTP server, development tools, text processing, scientific applications, and much more.

The nice thing is that it is not a test version--it is the complete version. Once you pay your $50 (probably less), the product is yours to keep--forever! This gives you a chance to test out the product and see if it fits your needs. If not, you have spent less than what other products would charge just for the shipping. A good approach would be to use Linux as your Internet server. More than 10 percent of Internet servers are already running Linux, which is twice as many as NT. Use Linux in an area where it has already proven itself and then evaluate it for other purposes. Michael Slocombe, a staff engineer at BBN, describes Linux's stability like this: "In addition, it appears that Unix/Linux operating systems are much more stable than Microsoft operating systems. It seems common when working with PC/Microsoft support people that they recommend a procedure of rebooting the system. If a PC/Microsoft system crashes once a week, that seems to be considered reasonable. If a UNIX system exhibited similar problems, it would be considered broken and the support people would be trying to figure out what was wrong." Michael Stutz, president of Design Systems Labs (DSL), reminds us that the majority of Linux software is free and free software is written for the "art" of it and not the paycheck. So whose code are you going to trust more? Someone who writes code because it's their job or someone who writes it because it's their passion? DSL is one company that has taken their confidence in Linux to the extreme. They run every aspect of their business on Linux.

Not every company has the ability to hire a full-time administrator to spend hours digging through source code looking for the cause of problems. It is difficult to get away from the fact that the support structure for Linux does not have as strong a foundation as Windows NT or SCO. Each of these organizations has dozens of engineers on staff to answer your questions. There are hundreds of companies all over the world that will also provide support. Originally, I had wanted to say that the support structure was not as extensive. However, within a matter of seconds I realized that the opposite is true. There are tens of thousands of people using Linux on the Internet. It is their devotion to the product that motivates them to provide support. There are few places I have found that are comparable to the enthusiasm in which people provide help, assistance, and support in the various newsgroups and mailing lists. The Linux community is called a "community" for good reason. Thousands of people are willing to help, just because they want to and not because they are getting paid for it. Although there is no one company that produces Linux where you can call to get tech support, this does not mean you get no support. Not only do you get quick responses from the many different network newsgroups specifically for Linux, many independent companies provide the same kind of support for Linux as you can get for other products. If that's not enough, you have the complete source code that you can look through to find solutions to your problems. Looking through tens of thousands of lines of source code is not an easy task. Besides, you may need help getting your system designed and configured so you may not have access to the source code, yet. Fortunately, there are (as of this writing) 175 consultants world-wide who provide Linux consultant. The Consultant-HOWTO http://www.cyrius.com/tbm/Consultants-HOWTO) provides you with the necessary contact information to get you on your way. If you can't spend the time looking for problems in the source code and can't afford a consultant, you can often find the solution yourself. Early in the development of Linux, the Linux Documentation Project was established. Most versions of Linux come with very extensive documentation. This is often more in-depth than you would get for commercial UNIX versions. There are already dozens of excellent books on Linux covering everything from basic user commands to kernel programming. In addition, because Linux is so much like UNIX, books on "generic" UNIX are useful as well.

Aside from just the amount of support and the willingness people have to support the product, there are a couple of other advantages. First, the people who support Linux are people who actually work with Linux. They have had either the same problems themselves or experience with similar problems. Even if no one has the exact answer to your problem, there will be enough discussion of the problem that a solution will be found. Another key advantage is that the developers themselves read and reply to these messages. And, because they use the products, they are more than interested in finding bugs or anything else that decreases the value of Linux. In November 1996, I read a message on the Internet from someone who had examined the source code of one program and had determined that there was the potential that someone could exploit an oversight in the source code to force the system to execute some other code. On the same day that this was reported, the developer had posted the patch to the Internet. How often do the developers of commercial products say that the fix may be in the next release that is six months away?

However, you don't have to wait for the developer to fix it. Because you have access to the source code, you can fix it yourself. While you spend time and money working around the bugs and shortcoming of other systems in Linux, you are correcting the bugs and making improvements; therefore, you are increasing your own productivity. You can then make these modifications available on the Internet. The developers are always grateful when people make corrections and are willing to provide suggestions to help improve the product even further.

In considering Linux, you have the choice of spending tens of thousands of dollars in initial costs for an OS and continuing support, or you hire a Linux guru who customizes the product exactly to fit your needs. Considering the philosophy of Linux, you can customize it to meet your needs now as well as in the future. This is much more cost- effective than spending hundreds (if not thousands) of dollars on the new version of another OS and hope that it meets your needs. Solutions to problems and answers to questions are no slower. In most cases, responses come within just a few hours. The key disadvantage of this system is that a few hours may be too slow. If you have a crashed system, you need help now. Being able to call support and get an immediate response is worth the money. There are dozens (hundreds already?) of companies all over the US, and many others throughout the world, that provide Linux services and support. You will find URLs to many of these companies on the accompanying CD.

Jeremy Buch at the University of Colorado feels that not having a single company behind Linux is actually an advantage. It results in a "feeling of 'community' with other users." It is not as "stale" as other systems and because you have the ability to "add your own," it is constantly changing and improving.

Getting support for the software is a major concern for MIS managers. If problems occur, they want two things. First, they want their questions to be answered. All one needs to do is take a look at the various Linux newsgroups and mailing lists to see what kind of support is available. This is often far better than the support you get from commercial vendors, as these are the developers themselves. They have an active, personal concern in the quality of the product and are more than willing to help. Normally you will find that questions are usually answered within hours (depending on your connection to the Internet). The key problem for MIS managers is the issue of "normally." I have experienced cases in which a question was posted and days passed before someone answered. Maybe the developer was on vacation or was too busy to read his or her mail; there are dozens of reasons. If the problem is urgent, then even waiting a couple of hours is unacceptable. Second, MIS managers want someone to take responsibility. Or, as Lyle Ball of Caldera put it, "They want someone whose neck they can ring." That's a problem with Linux-- there is no single company that takes responsibility. Who is there to "blame" when something goes wrong? In general, the answer is no one. Because of the very nature of basically, every program, module, and piece of Linux documentation has a disclaimer that "absolves" the developer or writer from any responsibility if the product doesn't work. However, from the standpoint of the MIS manager, there needs to be someone not only to take the responsibility, but also the blame. This certainly will never happen with Linux. Does this then mean that Linux support is designed to be the ad hoc process it is on the Internet? Certainly not. Although not every Linux distribution comes with free support, many, including the one you find on the accompanying CD, do provide free support. For details on the support that WorkGroup Solutions provides for this CD, check the accompanying README file.

Caldera is another company that provides support. In their case, they will provide up to five free calls during the first 30 days, which is similar to the support that WorkGroup Solutions provides. If necessary, you can also purchase extended support contracts with the service that is provided, which vary in cost. This is no different from what other operating system vendors provide.

Taking this one step further, Caldera is building up a very extensive network of resellers and value-added resellers (VARs) throughout the world that will also provide support. Where major UNIX vendors like SCO are moving away from the low-end workstation toward the server market, companies like Caldera are filling the gap with products like Caldera OpenLinux. In addition, the products that are put on top of the Caldera base are the same that you find on the other systems.

To provide the technology necessary for your business to remain competitive, the operating system must remain current. Until recently, most of the software and hardware vendors have not been taking Linux seriously. Through the efforts of hardware companies like Stallion and software companies like Caldera, this is changing. Ransome Love, VP of Marketing at Caldera, mentions that one key to success for any operating system is the technology partnerships that it develops. Companies like Microsoft and SCO have developed these partnerships and, as a result, have the latest technologies that the other vendors have to have offer. Caldera has made that step to develop the relationship with companies like Novell and Netscape: they are now including Novell Gateway as well as Netscape Navigator Gold in their products. This, coupled with the other commercial products that they include, ensures that you have the tools necessary to run your business.

Being able to support the product does not mean just putting out distribution and having software to go with it. Support means that you must be an active player in the Linux world. Caldera is doing this by trying to get the X/Open branding for Caldera OpenLinux so that it can finally call itself "UNIX." Other companies, such as WGS, are involved in overseeing the smooth interaction of all the various players. Mark Bolzern, president of WGS, and Ransom Love, VP of Marketing at Caldera, are both on the board of directors of Linux International www.linux.org.

Can it really do what I need?

The answer is a very solid "Yes!" System administrators and users alike want to be able to fit a system to their needs and not have some marketing person tell them where they should go today. If you can't make the software fit your needs, you waste time trying to work around the problem.

Every system administrator realizes that his/her primary responsibility is to provide the technology needed to make other people's work more productive. (Okay, I do know some MIS managers who believe that IS is a goal unto itself.) The best way to make people work more efficiently is to match up their work with the technology--not necessarily buying products that match the way they work, nor changing work habits to match a particular product, but instead, figuring out what works best and matching a product with that work. This means that the product must be configurable. You will rarely find a product that fits perfectly into your business. There is always some configuration that needs to be done. The more you can make a product fit your needs and the less you have to change yourwork to fit the product, the better you can work.

UNIX, by its very nature is configurable and extensible. Linux takes this feature to extremes. Not only do you have the full configurability of any UNIX system, Linux also provides you with the source code. This includes both the kernel and the standard applications and programs. If there is some functionality that you need and it is not included in the original program, you can add it yourself.

One aspect of being able to change software is considering what you have to do to make changes take effect. If you have ever run a Windows machine, you know that even something as simple as changing your default gateway, or even your own IP address, requires that you reboot the machine.

Linux, like most dialects of UNIX, require you to reboot only when you add drivers to the system. However, in the case of Linux, there are many drivers you can add (load) as you need, without the need to reboot. Other simpler acts, like changing an IP address, can be done within seconds, without having to reboot.

However, we need to be fair when we talk about configuring your system. As of this writing, Windows NT is much easier to configure than Linux. The point-and-click configuration under Windows NT is much simpler than editing files under Linux. There are a few GUI-based tools provided with most Linux distributions. However, the majority of the configuration needs to be done manually. To configure a Linux system, you therefore need to have more experience and skill than for Windows NT. Just as you need more experience and skill to be a Cordon Bleu chef than to toss a TV dinner into the microwave. Now, this might sound like a load of propaganda. It's not. I have supported a Windows network of more than 500 PCs and two dozen NT servers. There are things that you simply cannot do with NT that you can with Linux (or other dialects of UNIX, for that matter). Some things require that you re-install the entire system and lose security and other configuration information. Others are simply impossible.

On the other hand, it really is a Microsoft world out there. People have grown accustomed to Microsoft products. In all fairness, I have to admit that they are good products. Like any software, there are bugs and other shortcomings, but the quality of products like Word and Excel are difficult to argue. Forcing your employees to switch to a Linux product just to switch to Linux is not efficient.

Does this mean that you have to run an NT server to support them? Not at all. The Samba package that is available on all newer distributions is a wonderful alternative. It allows you to connect to a Linux machine and use both file and print services. Because of the design of the configuration file, you can share every user's home directory within 30 seconds. On an NT system, you would need at least that long per user. You can also define default characteristics that are shared among the various resources. There is no need to specifically change them for each resource as with NT. I also created a script that added a list of 20 users to the system within 60 seconds. Because the home directory was automatically shared, I didn't need to explicitly define it as I would in NT. Admittedly, the security within NT is more extensive than with Linux. File access is defined using an Access Control List (ACL). This enables you to define access to a very fine level, much more than with most dialects of UNIX, in fact. Although the structures exist within the Linux code, no distribution has yet implemented ACLs. In addition, the algorithms used in NT passwords is more complex than those for Linux.

This is a double-edged sword. You are extremely limited in what you can do to your system because of this security. For example, when the system is re-installed (as when you simply want to change its name), all the security information is lost. There is no way to copy it to the new system. All the users must be re-created and the permissions must be set on every single file. There is no tool to say, for example, if the permissions or owner of a file are a certain value, then change them back. Simply put, you had better know exactly how you want your system to be configured before you start. Then we come back to the ease of configuration. Without a doubt, that which you can configure is much easier to do it with NT. Since what you can configure is limited, making the interface easy to use is not a problem.

Being the ice-breaker in business is not always the best approach. Don't worry, you're not. There are already thousands of companies that use Linux. In fact, more than 10 percent of all WWW servers run Linux. This is more that several commercial UNIX dialects, such as SCO, HP/UX, AIX, and DEC OSF/1.

The first widespread commercial use of Linux was as an Internet server. However, this has quickly changed to the point where entire businesses are being run on Linux. One German company, Sixt Rent-a-Car, has implemented Linux in more than 200 offices throughout Germany. In addition, there are hundreds of other companies that run Linux alongside other operating systems and a large number of Internet Service Providers that run exclusively on Linux.

So why use Linux in your business?

A better question is why not? If you are strictly a Microsoft house, in that you only use non-Microsoft products when you must, there is probably no need to try to convince you otherwise. However, if you are still trying to decide what the best solution is, have decided to implement a UNIX solution, or haven't decided which direction to take, then maybe I can give you a gentle push.

Running your business on Linux is not an issue of being on the cutting edge. Today, it is more like jumping on the Linux bandwagon as more and more are realizing the business potential of Linux. Chris Fearnley, a Linux and Internet consultant, says that one of Linux's key advantages is the "support for enterprising small businesses." Aside from the monetary savings of the OS itself, there is savings made when fitting the product to the business.

Chris says: "The motivated entrepreneur...can focus on modifying those pre-existing Linux tools to meet her needs (or build an application out of several such tools--this is the power of Unix's 'tool' model of software and after learning how to use it, one will be eternally frustrated by systems that try to do everything in one big application [the silliest recent 'innovation' being the concept of the Web browser as operating system]). "Free software allows the businessperson the ability to get custom software without the vast expense that that type of software incurs on a commercial OS. Moreover, when the entrepreneur shares the improvements they needed with the rest of the Linux community, they will get helpful feedback about how to improve their contribution." This statement directly supports the Internet mentality of sharing. The Internet is a value- added community in which you are expected to add to the value by making a contribution to it. Linux takes that philosophy into the world of operating systems.

Another business advantage that Linux has was described by Dan Wilder, a senior engineer for a point-of-sale development company: "Linux brings high reliability and a sticker price where I can have one at home and as many copies at work as I can use, even doing things like dedicating a whole copy to running on an obsolete old 386 box and doing nothing but acting as a print server for a little-used but conveniently placed laser printer." Many people are getting tired of hearing that they need to buy more expensive and more powerful hardware just for the operating system itself. An operating system, we might add, that does not provide that much more functionality. It just happens to look prettier. You can have the full functionality of a multitasking operating system with just a couple of megabytes of RAM and a 40Mb hard disk.

Benjammin Graham, owner and system administrator of Jammin Internet Services, uses Linux to save money in other ways. Benjammin says, "It can turn a 386 12mhz with 2MB of RAM into a usable server/workstation. Let me see any other OS do that. (I have done it.)" There is no need to throw away "outdated" equipment like this. Linux can be used for a definite competitive advantage. Another problem that you are likely to run into is your boss. (Assuming that's not you.) It is common for MIS managers and CEOs of big companies to shy away from products that are not also from big companies. After all, if the product was that great, the company would be big, right?

One company that is taking Linux by the hand and leading it though the world of big business is Caldera, Inc. Aside from creating Caldera OpenLinux and a wide range of products like the Caldera Network Desktop and Caldera Internet Office Suite, they are building an international organization of companies that are forming the infrastructure of a Linux business network.

Caldera is becoming the big company with the big name that is supporting Linux. However, that's not all. Red Hat, who provides Red Hat Linux, is also becoming a major player in the Linux world. Both provide not only a Linux distribution, but outstanding commercial-grade business software to go with it. Linux has it all: stability, software, and support. Plus, you can't argue with the price. In this day of downsizing and cutbacks, Linux is your key to remaining competitive.

What this Book is About

To best describe what this book is about, I need to first tell you what this book is not about. First, this is not a book to show you how to use all the different Linux commands and utilities. Because the commands and utilities provided with Linux behave identically to those in other UNIX dialects, generic UNIX books are sufficient. Additionally, there are already several books on the market that provide you with that information. Also, this is not a book that shows you how to administer and run a Linux system. A lot of that type of information is available in the Linux documentation. Plus, there are good books available that already do this, such as Running Linux by Matt Walsh and Lar Kaufman from O'Reilly & Associates and the Linux Companion by Mark Komarinski from Prentice Hall.

The intention of this book is not to jump on the Linux bandwagon or to add one more drop to the already present flood of Linux books just to get in on the action. Instead, as the title implies, this book will address those issues that are relevant and important in using Linux in a business. It covers not only the practical aspects such as the actual implementation, but also the strategic issues that every business must address.

If you are looking for a hand-holding, step-by-step introduction to all of Linux's commands, utilities, and functions, then I must disappoint you. This book is not for you. If you're looking for a first aid book that will list out the 1000 most common problems and their solutions, then I must disappoint you again. If you are looking for a how-to book that tells you step-by-step how to configure printers, install a new hard disk, and add users, then this book is also not for you. So why buy this book? There are already many books on the market that provide information on the commands and the hand-holding. To lure you to buy this book rather than another, I must give you something different. There is already a good introduction to the Linux commands and utilities: the Linux documentation. In addition, SAMS has published Linux Unleashed, by Kamran Husain, Timothy Parker, et al. This provides more than a quick reference to all the commands, utilities, and functions. There are also the books that I mentioned earlier. Repeating what is in these books hurts you more than helps you, as you now need to worry about which one you should buy. So why buy this one?

The information provided in this book is based, in part, on my four years of experience in the tech support department of a major UNIX vendor. Common issues arose when dealing with customers that this book addresses. If addressed at all in existing documentation, users and administrators needed to wade through several different manuals, references, and Web sites to get their answers. This book provides a single source that addresses the important issues and their relationship to each other and the Linux system. While providing phone support, I noticed that many of the same problems kept recurring. Users were trying to accomplish some task and they lacked the basic knowledge to go beyond what was explained in the existing documentation. When they wanted to go beyond the basics or expand on the examples provided, they couldn't. Many people simply ended up calling support for the answers, while others would get themselves into situations that they couldn't easily back out of.

After a couple of years of receiving these kinds of phone calls, it became obvious that many users lacked information about the different aspects of their system--information that is available from many different sources but isn't gathered in one place. Until now. No book specifically addresses the issues involved in running your business on Linux. The result is that you spend time and money running from book to Web site to consultant just to find out if Linux is right for you, then you do it all over to find out how to implement your choices. In the following pages, I hope to give you that information, not as a list of facts to store away somewhere, but rather as a collection of interacting processes. Like your body, it is a system that works together to reach a common goal. When one part fails, the whole system can collapse.

This book is not a first-aid handbook. I am not going to list specific issues and specific problems with an explanation of what you need to do to implement that functionality or solve that problem. These books annoy me because they will list 100 things you can do or 100 problems. However, I end up having problem 101 and the book does not go into enough details to expand on what they are saying.

This book is also not a cookbook. I do not provide step-by-step instructions, telling you what to input in what field, what button to press, and what menu option to select. Although cookbooks are good and tell you how to bake a cake, they don't cut it when it comes to administering your computer system. On the other hand, a cookbook that explains how flour, eggs, and milk interact with each other when you put them in the oven enables you not only to bake a cake, but a pie and bread as well. That's what we're going to do here. This book is intended to be used by the system administrator whose job it is to implement a business strategy using Linux and the MIS manager who is interested in the capabilities of Linux. The system administrator will also have a better understanding of things "behind the scenes," thereby making it easier to identify problems and find solutions. The MIS manager will learn just what Linux can do and how well it can fit into any business strategy.

The information is presented in language that even beginners can understand to give them the tools to understand what is happening and why. I intentionally tried to avoid "buzz- words" and "techno-speak" in an effort to bring my message across to most people. Because of that, some of the more knowledgeable readers will encounter places where I oversimplify or gloss over something. This was unavoidable. I also tried to make this book easy to read. I did not want to bog you down with long drawn-out explanations, but rather I wanted to show you key concepts. My intention was to provide a book that you could read on the living room couch, not one that required that you have a computer in front of you.

By using real world examples, you will see that the solution to the problem is within your reach. In this way, you will be able to take a completely new situation and solve problems on your own. This is a book that, unlike the Linux documentation, focuses not on the features of the operating system, but rather on real world problems and situations that real world people are experiencing and implementing. The decision on how to organize the book was difficult. I tried to put things in an order in which subsequent sections and chapters would build on previous material. One major problem that kept cropping up was the chicken-egg/cart-horse business. So often I came to a place where I thought I had to explain one thing first before I started something else, then later I switched things around to limit the amount I had to repeat myself. Unfortunately that is the nature of the business. Hardware and software work together. You can't have one without the other. You can't explain one without explaining the other. Somewhere along the line you either make assumptions about what people already know and leave things out, or you repeat yourself. I did both. However, I feel that I left out those things that were easily accessed from other sources and only repeated myself when absolutely necessary.

A single book cannot do everything in this regard. Some of you might be disappointed at some of the things I left out. I tried to cover those issues that represented the majority of the calls to support as well as the key issues when implementing Linux in your business. I also attempted to address those issues where people lack knowledge of basic relationships. Because that is one goal of this book, it seemed like a reasonable approach. I felt that the assumption of certain base knowledge would be more useful than starting with an explanation of bits and bytes. I also tried not to rehash things that you could find in existing material. However, order to make sense in many places, it was necessary to repeat other documentation.

This book will proceed in three phases. We begin with basic concepts of both UNIX in general and the Linux implementation. Subsequent chapters provide information needed on a user level then progress into the more advanced topics that would be needed by a system administrator. The material is presented in a way that relates to the actual use of the product and not just a description of programs and their behavior. Many real situations with customers are used as examples of how the information is useful. This is intended for people who are new to either Linux or UNIX and will provide the base on which later sections will build. In the second phase, we will discuss the details of the different aspects of a Linux system. What I am going to show you here is not only the inside of a Linux system, but also how things interact with the system as well as with each other. In other words, I am not only going to show you the anatomy of an Linux system, but the physiology as well. Lastly, we are going to talk about actually implementing Linux in your business. We'll talk about setting up Linux as an Internet server, as well as running your day-to-day operation on Linux.

With this book, you will find a CD containing Linux Pro 4.1. Granted, you will be hard pressed to find a Linux book on the market today that does not have a CD. The one difference is that I included some Web page examples for your enjoyment. Although they are not the best Web sites in the world, they will provide you with a general overview of what is possible and get you started on the road to making the perfect Web site. Note also that many of the Web page examples are intentionally poor. Again, I was trying to show you what is possible in the least amount of space. You might also want to look through the files themselves with some kind of editor (e.g., vi, emacs) just to see how they are put together. On the other hand, if there are some real mistakes in there, I would love to hear from you.

When writing this book, I had a few choices:

*   Being politically correct by saying "he or she" instead of just "he"
*   Being lazy and just saying "he"
*   Being grammatically incorrect and saying "they"
although I was referring to a single person

Since I would rather be grammatically incorrect than politically incorrect, I decided to take the third choice. However, I am only human and if I do slip and just say "he", this is not intended as a sexist remark. I am just lazy.

Throughout the book I tell you stories about my experiences in tech support as well as some about supporting end users directly. Often, it may seem like I am trying to make fun of a the customer or user: This is not the case. I am trying to use these examples to demonstrate the problems that arise when you do not understand the principles behind what is happening on your system and what you are doing. Once you are done reading this book, you won't have those problems anymore. I hope you enjoy reading and using this book as much as I enjoyed working on it.

Best regards,
Jimmo Untersiemau, Germany


ISBN: 0-13-727751-2
UPC $49.95 USA $69.95 Canada
[Cover][About the book][Table of Contents][Summation][Ordering Info]

Home


© Prentice-Hall, Inc.
A Simon & Schuster Company
Upper Saddle River, New Jersey 07458

Legal Statement