Copyright 1996-1998 by James Mohr. All rights reserved. Used by permission of the author.
Be sure to visit Jim's great Linux Tutorial web site at http://www.linux-tutorial.info/
One of the questions that you are probably asking is that from all the UNIX books on the market, why should you buy this one? You probably have SCO UNIX or one of the bundled products such as Open Desktop or the latest product, Open Server. Therefore, you were probably drawn to the fact that the title itself says that this book is about SCO UNIX. But why this one? Why should you give out your hard earned money for this book over another?
Well, if you are looking for a hand-holding, step-by-step introduction to all the commands, utilities and functions, then I have to disappoint you. This book is not for you. If your looking for a first aid book, that will list out the 1000 most common problems and their solutions, then I have to disappoint you again. If you are looking for a how-to book, which 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 one?
There are already many books on the market that provide the commands and the hand-holding. In order to make you want to buy this book over something else, I have to give you something different. There is already a good introduction to the SCO commands and utilities: the SCO UNIX documentation. In addition, O'Reilly and Associates has published SCO UNIX in a Nutshell, by Ellie Cutler. This provides more than a quick reference to all the commands, utilities and functions. There is also Essential SCO System Administration by Keith Vann, published by Prentice Hall. This is a quick reference to the administration side of an SCO UNIX system. Repeating what is in either of 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?
There are other UNIX books on the market that deal with system administration, using the shell, TCP/IP and a dozen other aspects on a SCO system. Buying them all would cost you a fortune and you would have to spent months, if not years, to read them all. The SCO documentation covers all this to a certain degree as well as many other books. So, why buy this one?
If you looking for a book that tells you what files change when you configure a printer and what is happening when you install that hard disk and what a user really is to the system, then you have come to the right place. What I am going to show you here is not only the inside of an SCO UNIX system, but also how things interact with the system as well as each other. In other words, I am not only show you the anatomy of an SCO UNIX system, but the physiology as well.
It is very common that when customers call into a company for technical support, they lack the basic information and knowledge required to not only get the answer they need, but to understand the causes and implications. A great deal of time is wasted when technical support representatives need to explain basic computer and Unix issues in order to gather the information they need to solve the customer's problem or answer their question. This book provides that missing information along with how it relates to SCO Unix systems.
In the four years I worked in SCO Technical Support, it was a common complaint that much of the basic information was not provided in SCO documentation. The purpose of software documentation is to describe the functionally and behavior and not the underlying concepts, just as a automobile handbook does dot describe the details of the internal combustion engine. However, should the car need a tune-up, basic knowledge of the internal combustion engine is useful, if not essential. Books are available that describe how to repair particular models, while explaining the basic concepts of how the car operates. No other book provided that level for SCO UNIX systems. Until now.
Based on my experiences in SCO Support and what I have seen both in Internet newsgroups and in the CompuServe SCO forum, it became obvious to me that SCO users were having trouble accomplishing some very fundamental system installation and maintenance tasks, such as managing user accounts, installing hardware devices and managing system security. I realized that a book was needed that focused in on the very problems people were having that was not simply a troubleshooting guide.
The computer industry is like no other in that most customers are not trained to use the product they are purchasing. Therefore, they are not even aware of how little they know about the subject nor what information is needed or knowledge is required to accomplish what they intend. Additionally, the computer industry is like no other in that customers feel that software and hardware vendors are somehow obligated to provided free support on even the most basic issues.
Although nothing can keep you from calling or feeling the supported is owed to your. This book will provide you with the information necessary to limit the need for calling SCO Technical Support or wherever you might have a support agreement. In addition, you will have the knowledge and tools to solve the problem yourself and much quicker than if you have to call into support. Also, by limiting the need to call for support, you have a much better relationship to the product and feel more comfortable with it. Just as a car owner feels better about his car if it is not regularly in the repair shop. That's what I hope to achieve with this book.
There are other advantages to a book of this type. First, you will gain new insights into the product that is not available in current SCO documentation, thereby increasing the usefulness of the product. Second, with these new insights, you will be better able to use the tools and information already on the system to solve problems and implement solutions on your own. Third, should the issue or problem be too complex for a typical user or administrator to handle, this book will provide you with the information needed to be able to call into SCO Technical Support and quickly get the proper solution.
One of the things that I have always felt was missing from both the SCO documentation as well as other sources is that you either get the introduction or the nuts and bolts. You don't find the middle ground that tells you how the nuts and bolts fit together. This is comparable to a book about cars. You might get an introduction that tells you that pressing on the gas pedal makes the car go faster. Another book explains what is happening chemically inside each cylinder as the gas is mixed with air and ignited. You don't find a book that makes the connection between the gas pedal and internal combustion.
The problem is that there are book about cars that do this. However, there is nothing on SCO that does this. Until now. What I am going to try to do in the following pages is to not only explain to you the basics and what goes on inside, but to show you how each end of the spectrum is connected. I am going to show you the relationships and interactions and just what happens when you click the OK button or press enter.
This is not an easy task. Entire books have been written on many of the subject we will cover. Therefore, I cannot tell you all the gory details on every subject I want to address. However, I can give you the tools you need to understand what is happening on your system. If that "something" is undesirable, then you will have the understanding to know what can be done about it.
Most books on the market today address only the two extremes: users or administrators. There are few books that attempt to bridge the gap. Because SCO prides itself on providing a system that "anyone" can install or run, system administrators are often people with very limited computer experience. In fact, many have less knowledge that what should be classified as a "knowledgeable user." However, they are expected to administer an SCO UNIX system. In order to allow the user to advance to the point where he or she can adequately administer the system, it is essential that there be a bridge like this one.
Books exist on the market that cover general PC hardware, while others cover UNIX usage or administration. However, few or none combine the two nor describe their relationship. It is often very difficult to explain solutions to customers as they are unfamiliar with these relationships nor do they understand their significance. This book provides you with the necessary understanding of those relationships.
In addition, there is no book on the market that addresses SCO specific issues regarding use and administration in this fashion. Although SCO UNIX is based on System V, there are many differences that limit the value of generic UNIX books. However, much of the information provided is useful no matter what dialect of UNIX you have.
This brings up another question: why me? Why should you trust me to not only give you the information that you need to know, but also trust that what I tell you is not taken from a science fiction novel? Well, I spent four years as a support engineer in SCO's technical support department. I had been thinking about a project of this type for years before I began making notes and considering this a viable project. Aside from taking notes on the technical side of things, I was taking notes on what has become a key aspect of this book. That is, what information is it that people are lacking most. What pieces of the SCO puzzle are missing?
The information provided in the book is based on those four years of experience in SCO tech support. 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 and third party references to get their answers. This book provides a single source that addresses the important issues and their relationship to each other and the SCO UNIX system.
While on the phone in SCO Support, many of the same problems kept on occurring. Users were trying to accomplish some task and they lacked the basic knowledge to go beyond what was explained in the SCO documentation. When they wanted to go beyond the basics or expand on the examples provided, they couldn't. Many people simply ended calling SCO 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 these kinds of phone calls, it became obvious that many users lacked the information about the different aspects of their system. Information that is available from many different sources, but no where was all of the essential information gathered in one place. Until now.
In the following pages I hope to give you that information. Not as a list of facts that you store away somewhere, but rather as a collection of interworking processes. This goes back to the title I chose for the book. I specifically chose to include the word "system" as that's what a computer running SCO UNIX is. Like your body, it is a system that works together to reach a common goal. When one part fails, the whole system can collapse.
What this book is not is a first-aid handbook. I am not going to list out 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 want to input in what field, what button to press and what menu option to select. Although cookbooks are good to 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 stick them in the oven enables you to not only 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 entire range of SCO UNIX users, from the novice to the system administrator. The novice will see how the commands he or she uses behaves aside from simply returning an particular output. This way, the user will be better able to use those commands and the UNIX environment as a whole. The system administrator will also have a better understanding of things "behind the scenes," thereby making it easier to identify problems and find solutions.
Because customers calling into support often lack basic computer knowledge, this book assumes a very minimal level. For example, I will assume you know what a hard disk is, but not that you know the difference between SCSI and IDE.
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 the most people. Because of that some of the more knowledgeable readers we see places where I oversimplify or gloss over something. This was unavoidable.
I also tried to make this "easy reading." I did not want to bog you down with long drawn out explanations, but rather show you key concepts. My intention was to provide a book that you could read on the living room couch and didn't always need to 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 the problem on your own. This is a book that, unlike the product documentation, focuses not on the features of the operating system, but rather on real world problems and situations that real world people are experiencing.
The decision on where to put things and in what order was hard. I tried to put things in an order that would form building blocks upon which subsequent sections and chapters would build. One of the major problems that kept cropping up was the chicken-egg/cart-horse business. So often I came to place where I thought I had to explain one thing first before I started something, then later 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 I absolutely had to.
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 SCO support and problem I saw on CompuServe. I also attempted to address those issues where people lack knowledge of basic relationships. Since that is the goal of this book, that 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. There are enough books on that kind of thing and I didn't want to waste precious space. I also didn't tried not to rehash things that you could find in SCO manuals. However, in order to make sense in many places it was necessary to repeat the SCO documentation.
The book begins with basics concepts of both UNIX in general and the SCO 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 products 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.
The book is based on Open Desktop 3.0 and the current release, Open Server 5. However, one important aspect of this book is that I point out to you those places where the two products differ. This not only helps you avoid problems, it help you understand the product better if you know that something has changed. The decision not to base this book entirely on OpenServer is because there are many thousands of installations that will remain with previous releases for some time.
So, what am I going to talk about? Well, chapter 1 is an introduction to operating system concepts. This is the foundation of all subsequent chapters. This chapter provides you with a basic understanding of key operating system concepts and how they relate to SCO UNIX.
In chapter 2, I go into what makes up the SCO product. Here, as in most chapters, I refer to both Open Desktop 3.0 (ODT) and the newest member of the SCO family, OpenServer 5.
Chapter 3 goes into most users' first interface to the system: the shell. Here, we talk about what the shell is and how it reacts to the input that we give it. Here we'll talk about the basic concepts of inputting the commands and getting output. We'll also talk about a few key tools that you can use to create your own commands and utilities: vi, sed and awk. At the end of the chapter we'll talk about the process of creating your own commands.
In chapter 4 we talk about users and how they interact with the system. This not only covers what a user account is but also how the user account interacts with the system. This includes logging into the system, the user's environment and just what they user can or can't do on the system. This means that here we will also be covering system security and how it is implemented in SCO.
In chapter 5 we open up the hood and take an inside look at the operating system and it's environment. We'll go into details about the concepts we talked about in chapter 1 and discuss the life of a program and how it interacts with the system. Here, too, we'll talk about the device files, which is the way the system accesses the physical hardware.
In chapter 6 we talk about files and filesystems. We'll talk about the physical structure on the hard disk as well as how the system represents these structures and how we (as users) see them. Plus, we'll go into some details about the newer SCO filesystems and what they can do for you.
Chapter 7 describes the process of starting and stopping your system. We'll go into the details of what is happening from the moment you flip the power switch, up to the time when you finally get to log into the system. On the other end, we'll talk about how to shutdown the system.
Since most systems will need to put words on paper, this book would not be complete without talking about printers. That's what chapter 8 is about. As with other chapters, we'll talk about the interactions of the different components. We'll also go over the way the system accesses printers and ways that you can adapt that to your needs.
Chapter 9 covers the graphical user interface provided with Open Desktop and OpenServer: the X-Windows System. Here, we talk about what X is all about, the components and processes that give you a graphical interface to your system. We'll also talk about the "panner", which allows you to have a virtual workspace many times larger than your physical monitor.
Chapter 10 addresses one of the hottest topics in the computer business today: networking. We'll go into the basic concepts of what makes up a network and how you SCO system uses them. This includes the different types of networks you can have and the tools you use to access them.
Without hardware, an SCO system is just a CD-ROM sitting in a box. So, that's what we'll be covering in Chapter 11. Here we talk about what hardware you have available to you and how to configure that hardware to allow your SCO to access it.
In Chapter 12 is the first chapter of the "hands-on" section. This chapter is on installing and upgrading your system. This appears this far into the book for two reasons. First, if you're like me, you buy a book on a software product after it's already installed. Therefore, installing or upgrade is not high on your list of priorities. Second, there are many concepts and issues that we had to address first, before we can really address the issue of installing.
Chapter 13 talks about making your the network components of your system work. We'll address some of the key configuration issues as well as emphasizing some of the areas that users commonly have trouble with.
A common thing done after the operating system is installed is adding new hardware to your system. We talked about what kinds of hardware is available already, so chapter 14 talks about adding this hardware to an existing system. We'll go into many of the problems and other issues that are frequently encountered when adding hardware.
Chapter 15 is about system monitoring. This vague heading discusses the tools you can use and the files that you can look at to get a picture of the way your system is behaving and how it is configured. At the end of the chapter, I provide you with a script that can gather much of this information for you.
Chapter 16 also has the vague heading of "problem solving." Here we talk about the tools available to you to determine if your system is behaving correctly and what you can do about it.
So, what happens if what you learned in the first 16 chapters is not enough? I realize that this book cannot address every issue. Therefore, they may come a time you need to get help from somewhere else. That's what chapter 19 is all about. Here we talk about other places that you can get answers to your questions.
As I said this book will not cover everything. It cannot be everything to everyone and answer all your questions. However, I am sure that after reading it you will have gained the understanding to go beyond this book and find the answers yourself.
Throughout the book you will find several symbols. The first symbol looks like a mountain. The mountain is supposed to represent is Mount Everest. Everest is the code name used for SCO OpenServer 5 prior to it shipping. Therefore, anytime that you see this symbol, there is something that is different between Open Desktop 3.0 and Open Server 5.
The next symbol is a magnifying glass. This is used to indicate something that you should jot down or take a closer look at. Often I used it to indicate pieces of information that are "neat" or interesting.
The last symbol is an lightning bolt. I used this symbol represent those issues that you need to watch out for.
Through the book I tell you stories about my experiences in SCO Support. Often the customer I am talking about may appear like an idiot or it may seem like I am trying to make fun of them. 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 you are doing. Once you are done reading this book, you won't have those problems any more.
Well, I hope you enjoy reading and using this book as much as I enjoyed working on it.
Next: Introduction to Operating Systems
Copyright 1996-1998 by James Mohr. All rights reserved. Used by permission of the author.
Be sure to visit Jim's great Linux Tutorial web site at http://www.linux-tutorial.info/