This book is about Linux, a version of Unix that runs on ordinary personal computers. It's for people who want to learn the basics of installing and using Linux (and thereby Unix) without getting bogged down in too much detail or technobabble.
To be sure, there are other Linux books on the shelf--but you'll find this one unique because it's short and to the point. Oddly enough, most computer books seem to be written for people who already understand the topic. This book has been carefully crafted and edited so that both the novice and the more experienced computer user will get what they want--Linux on their PCs with a minimum of fuss, and the know- how to use Linux effectively.
Because Unix is the foundation for much of the Internet, many people are using or encountering it nowadays. As the Internet grows, Unix will become more popular, creating an array of new opportunities. If you're simply curious, looking to gain new job skills, or thinking about Linux as a low-cost platform for operating your own Internet server, this book is for you.
You'll find plain-English information here about installing Linux on a personal computer and using it productively. After a brief history and overview of Linux, the book provides a concise and occasionally light-hearted treatment of these topics:
The CD-ROM accompanying this book contains Red Hat Linux version 6. The Red Hat distribution was selected because it's the most popular Linux product on the market, is very easy to install, and requires minimal configuration.
Until recently, running Unix meant investing in a powerful workstation that cost megabucks. Linux changes all that, because it's a complete version of the Unix operating system (software that controls the basic functions of the personal computer) that runs on ordinary 386, 486, and Pentium systems. The added fact that it's freely available and "open source" makes it all the more attractive.
Linux is perfect for people who want to operate their own low-cost Internet servers, and it's robust enough to satisfy the needs of many Internet service providers. Linux is a multiuser and multitasking environment, and it can access huge amounts of memory (gigabytes) and huge amounts of disk storage space (terabytes). Linux offers virtually everything that Windows NT has been promising for years and may not deliver in a truly stable form for some time to come.
Don't make the mistake of assuming that Linux is some kind of watered-down or underpowered Unix for the masses. Linux is Unix. POSIX certification (compliance with the industry standards for Unix) makes it official that Linux can do everything that a Unix system is supposed to do. The only difference is that Linux works on a personal computer, whereas other versions of Unix run on larger workstations or mainframes.
Linux is also being taken very seriously by the computer industry, with new Linux-compatible versions of popular software packages being announced every month. The Apache Web server software running on Linux platforms powers about half of all Web sites today. Even more telling, Microsoft considers Linux a major threat to its Windows NT operating system.
In the early 90s, a geek named Linus Torvalds at the University of Helsinki in Finland thought it would be fun to write a Unix kernel from scratch. He called it Linux, and it was cool but pretty much useless without all the utility programs needed to make it a complete operating system. At the same time, Richard Stallman and his pals at the Free Software Foundation were writing a bunch of freeware Unix utilities collectively known as the GNU Project. It was cool but pretty much useless without a kernel to make it a complete operating system. Fortunately, the two parties decided to collaborate.
News of Linux spread quickly over the Internet, and many other Unix programmers joined the effort to enhance it. What we now know as Linux is a combination of Torvald's Linux kernel, the GNU Project software, and some other nifty software bit and pieces developed by programmers from all around the world.
Today Linux is a complete and reliable implementation of the Unix operating system, with the following notable features:
Note: GNU is one of those recursive acronyms that computer scientists love; it stands for GNU's Not Unix. The GNU Project is an effort sponsored by the Free Software Foundation to provide freely available Unix software. See Appendix C for related information.
Most flavors of Unix require an expensive, high-powered workstation, but Linux is unique in that it runs on personal computers (Intel-based 386, 486, and Pentium machines) and was written totally from scratch without using any of the original AT&T UNIX code. (Throughout this book, UNIX refers to the original trademarked UNIX project invented by AT&T. The term Unix is used here as a generic term for other variants of the operating system.)
Because of that (and because the author is a nice guy), Linux is free. Appendix C has more information on the GNU General Public License--the terms under which Linux can be distributed--but the gist of it is this: You can modify and sell or give away the software so long as you provide full source code and don't impose any restrictions on what others do with it.
Although it's not essential, a working knowledge of DOS will help you grasp the concepts in this book. You don't need to be a hacker to use Linux, but it is an operating system, and operating systems can be technically challenging. Still, the book aims to provide enough background for most people to tackle just about any Linux problem they may encounter.
Sometime in the mid 1960s, a bunch of geeks at AT&T's Bell Labs decided it would be fun to create a new operating system called Multics. (This was no small task, because computers at the time were about the size of a football field and two stories high.) Multics fizzled in 1969 when Bell cut the cord, but some of the geeks continued work on what became known as UNIX; and it became wildly popular inside AT&T.
Since AT&T was not allowed to sell computer software at the time, it gave away UNIX (complete with source code) to any educational institution. AT&T produced new versions of UNIX called System III and System V in the early 1980s, but all the while, geeks at the University of California at Berkeley and other places were busy hacking away on their own versions of Unix based on the AT&T code. Some cross- pollination did occur, but there are still significant differences between the Berkeley (commonly called BSD Unix) and AT&T flavors. In the early 1990s, AT&T sold UNIX to Novell, which was bought by Digital Equipment Corporation, which sold it to SCO (Santa Cruz Operation), which markets it as UNIXWare.
Today, there are now lots of Unix variants sold or given away by many different companies and universities. While these various flavors can make it difficult to write portable software, efforts to standardize Unix (two of the more notable ones being POSIX and COSE) offer hope for greater compatibility in the future.
Like any operating system, Unix has some cryptic commands and less-than-intuitive aspects. (Three of the most important Unix commands have the peculiar names cat, grep, and awk.) Either serious hallucinogens or a warped sense of humor came into play at some point in the creation of Unix. I don't let this bother me, though, taking comfort in my favorite platitude: "Unix was written by geeks on drugs." Seriously, though, Unix is really no more difficult to learn than DOS or Windows--it's just different.
For a computer to do anything useful, it needs both application software (programs you use) and an operating system (programs the computer uses). The operating system sits between the physical hardware that makes up a computer (the monitor, keyboard, CPU, hard drive, and so forth) and the end-user software that people use to process documents, play games, and all that good stuff.
My brother Tom and I are both into computers. We're computer programmers by trade, but I'm quick to point out that we produce very different kinds of software. The difference, as I like to explain it, is this: I write software for people; Tom writes software for computers.
We commonly think of the CPU as the brain of a computer, but in reality, it can't do much besides crunch numbers and move data around in the computer's memory. The job of the operating system (OS) is twofold:
To work with computer hardware to process user requests by interpreting keystrokes from the keyboard, displaying images on the screen, storing files on the hard disk, sending documents to a printer, communicating over a modem.
To manage the application software's use of memory (RAM) and processor time.
If you've used a multitasking environment like Windows or a multiuser mainframe system, you've seen the concept of "time- slicing" in action. While your computer has only one CPU, which can do only one thing at a time, the OS can make it seem like several people or programs are using the CPU simultaneously. Similarly, even though the real memory (RAM) is shared by all running applications, the OS can make it seem like you have it all at your disposal, all the time, by sharing it between applications--using a technique called paging.
The OS time-slices by giving one user or application exclusive use of the hardware for a brief instant, and then doing the same for the next user or application. On systems with adequate horsepower, this approach works so that you never even know about that little game of round-robin going on behind the scenes. On a wimpy computer or a mainframe with too many users, it's toe-tappin' time for everybody.
Red Hat is a registered trademark and the Red Hat Shadow Man logo, RPM, the RPM logo, and Glint are trademarks of Red Hat Software, Inc.
Linux is a registered trademark of Linus Torvalds.
Motif and UNIX are registered trademarks of The Open Group. Netscape is a registered trademark of Netscape Communications Corporation in the United States and other countries.
TrueType is a registered trademark of Apple Computer, Inc.
Windows is a registered trademark of Microsoft Corporation.
All other trademarks and copyrights referred to are the property of their respective owners. Your mileage may vary. No warranty expressed or implied. Objects in mirror are closer than they appear. Consult your physician before using this product.
In this introduction to Linux, you've learned the basic tasks of an operating system and how it differs from application software. You're now an expert on Unix history, you understand that Linux is a version of Unix for ordinary PCs, and you can even pronounce the name correctly. You don't have a clue about hardware requirements or installation, but that's coming next.
Copyright 2000, Bob Rankin, All Rights Reserved