Chapter One
An Overview of Red Hat Linux In This Chapter
Introducing Red Hat Linux
What is Linux?
Linux's roots in UNIX
Common Linux features
Primary advantages of Linux
What is Red Hat Linux?
Why choose Red Hat Linux?
The culture of free software
Linux was a phenomenon waiting to happen. The computer industry suffered from a rift. In the 1980s and 1990s, people had to choose between inexpensive, market-driven PC operating systems from Microsoft and expensive, technology-driven operating systems such as UNIX. Free software was being created all over the world, but lacked a common platform to rally around. Linux has become that common platform.
Red Hat Linux is the most popular commercial distribution of Linux. Red Hat and other commercial distributions, such as Caldera's OpenLinux, have taken the Linux concept a step further. With Red Hat Linux, users no longer have to download, compile, and check Linux source code to make sure that all the right pieces are put together for Linux to work. Basically, Red Hat has made it possible for Linux to be used by people other than computer geeks.
Red Hat Linux has also made Linux a more viable alternative for corporate users. Many companies have felt insecure about relying on a free operating system to handle their critical data. With Red Hat Linux, they can rely on Red Hat, Inc. (www.redhat.com) to provide tested versions of that software and technical support if there are problems.
Introducing Red Hat Linux
With Red Hat Linux 9, Red Hat continues to solidify and simplify the world's most popular commercial Linux distribution. While technical people continue to choose Red Hat Linux because of its reputation for solid performance, Red Hat is making it easier for business people and home users to do their work (or just have fun).
New and enhanced graphical interfaces in Red Hat Linux 9 have made it possible for everyone to get even complex features working quickly. In particular, improvements have been made graphical tools for:
Sharing printers
Configuring firewalls
Setting up file sharing
With further improvements to existing graphical tools for adding applications, configuring system services, setting up wired and wireless networks, tuning your sound and video, and managing users and groups, you won't need your neighborhood techie standing over your shoulder to get stuff done with Red Hat Linux.
Over 1,400 individual software packages (compared to just over 600 in Red Hat Linux 6.2) included in this latest release. These packages contain features that would cost you hundreds thousands of dollars to duplicate if you bought them as separate commercial products. These features let you:
Connect your computers to a LAN or the Internet.
Create documents and publish your work on paper or on the Web.
Work with multimedia content to manipulate images, play music files, view video, even burn your own CDs.
Play games individually or over a network.
Communicate over the Internet using a variety of Web tools for browsing, chatting, transferring files, participating in newsgroups, and sending and receiving e-mail.
Protect your computing resources by having Red Hat Linux act as a firewall and/or router to protect against intruders coming in through public networks.
Configure a computer to act as a network server, such as a print server, Web server, server, mail server, news server, and a database server.
This is just a partial list of what you can do with Red Hat Linux. Using this book as your guide, you will find that there are many more features built into Red Hat Linux as well.
Support for new video cards, printers, storage devices, and applications are being added every day. Linux programmers around the world are no longer the only ones creating hardware drivers. Every day more hardware vendors are creating their own drivers, so they can sell products to the growing Linux market. New applications are being created to cover everything from personal productivity tools to programs that access massive corporate databases.
Remember that old Pentium computer in your closet? Don't throw it away! Just because a release of Red Hat Linux is out doesn't mean that you need all new hardware for it to run. Support for many old computer components get carried from one release to the next. There are old PCs running Red Hat Linux today as routers (to route data between your LAN and the Internet), firewalls (to protect your network from outside intrusion), and file servers (to store shared files on your LAN) - with maybe an Ethernet card or an extra hard disk added.
At this point, you may feel that Linux is something you want to try out. This brings us to the basic question: What is Linux?
What Is Linux?
Linux is a free operating system that was created by Linus Torvalds when he was a student at the University of Helsinki in 1991. Torvalds started Linux by writing a kernel - the heart of the operating system - partly from scratch and partly by using publicly available software. (For the definition of an operating system and a kernel, see the sidebar "What Is an Operating System?" later in this chapter.) Torvalds then released the system to his friends and to a community of "hackers" on the Internet and asked them to work with it, fix it, and enhance it. It took off.
Today, there are hundreds of software developers around the world contributing software to the Linux effort. Because the source code for the software is freely available, anyone can work on it, change it, or enhance it. Developers are encouraged to feed their fixes and improvements back into the community so that Linux can continue to grow and improve.
On top of the Linux kernel effort, the creators of Linux also drew on a great deal of system software and applications that are now bundled with Linux from the GNU software effort (GNU stands for "GNU is Not UNIX"), which is directed by the Free Software Foundation (www.gnu.org). There is a vast amount of software that can be used with Linux, all of which includes features that can compete with or surpass those of any other operating system in the world.
If you have heard Linux described as a free version of UNIX, there is good reason for it. Although much of the code for Linux started from scratch, the blueprint for what the code would do was created to follow POSIX standards. POSIX (Portable Operating System Interface for UNIX) is a computer industry operating system standard that every major version of UNIX complied with. In other words, if your operating system was POSIX-compliant, it was UNIX. See the next section describing Linux's roots in the UNIX operating system.
Linux's Roots in UNIX
Linux grew within a culture of free exchange of ideas and software. Like UNIX - the operating system on which Linux is based - the focus was on keeping communications open among software developers. Getting the code to work was the goal, without much concern about who owned the code, and the Internet was the primary communications medium. What, then, were the conditions that made the world ripe for a computer system such as Linux?
In the 1980s and 1990s, while Microsoft flooded the world with personal computers running DOS and Windows operating systems, power users demanded more from an operating system. They ached for systems that could run on networks, support many users at once (multiuser), and run many programs at once (multitasking). DOS (Disk Operating System) and Windows didn't cut it.
UNIX, on the other hand, grew out of a culture where technology was king and marketing people were, well, hard to find. Bell Laboratories in Murray Hill, New Jersey, was a think tank where ideas came first and profits were somebody else's problem. A quote from Dennis Ritchie, co-creator of UNIX and designer of the C programming language, in a 1980 lecture on the evolution of UNIX, sums up the spirit that started UNIX. He was commenting on both his hopes and those of his colleagues for the UNIX project after a similar project called Multics had just failed:
What we wanted to preserve was not just a good environment in which to do programming, but a system around which a fellowship could form. We knew from experience that the essence of communal computing as supplied by remote-access, time-shared machines, is not just to type programs into a terminal instead of a keypunch, but to encourage close communication.
In that spirit, the first source code of UNIX was distributed free to universities. Like Linux, the availability of UNIX source code made it possible for a diverse population of software developers to make their own enhancements to UNIX and share them with others.
By the early 1980s, UNIX development moved from the organization in Murray Hill to a more commercially oriented development laboratory in Summit, New Jersey (a few miles down the road). During that time, UNIX began to find commercial success as the computing system of choice for applications such as AT&T's telephone switching equipment, for supercomputer applications such as modeling weather patterns, and for controlling NASA space projects.
Major computer hardware vendors licensed the UNIX source code to run on their computers. To try to create an environment of fairness and community to its OEMs (original equipment manufacturers), AT&T began standardizing what these different ports of UNIX had to be able to do to still be called UNIX. To that end, compliance with POSIX standards and the AT&T UNIX System V Interface Definition (SVID) were specifications UNIX vendors could use to create compliant UNIX systems. Those same documents also served as road maps for the creation of Linux.
Today, Linux continues to aim toward POSIX compliance, as well as compliance with standards set by the new owner of the UNIX trademark, The Open Group (http://www.unix-systems.org/).
Common Linux Features
No matter what version of Linux you use, the piece of code common to all is the Linux kernel. Although the kernel can be modified to include support for the features you want, every Linux kernel can offer the following features:
Multiuser - Not only can you have many user accounts available on a Linux system, you can also have multiple users logged in and working on the system at the same time. Users can have their own environments arranged the way they want: their own home directory for storing files and their own desktop interface (with icons, menus, and applications arranged to suit them). User accounts can be password-protected, so that users can control who has access to their applications and data.
Multitasking - In Linux, it is possible to have many programs running at the same time, which means that not only can you have many programs going at once, but that the Linux operating system can itself have programs running in the background. Many of these system processes make it possible for Linux to work as a server, with these background processes listening to the network for requests to log in to your system, view a Web page, print a document, or copy a file. These background processes are referred to as daemons.
Graphical User Interface (X Window System) - The powerful framework for working with graphical applications in Linux is referred to as the X Window System (or simply X). X handles the functions of opening X-based graphical user interface (GUI) applications and displaying them on an X server process (the process that manages your screen, mouse, and keyboard).
On top of X, you use an X-based desktop environment to provide a desktop metaphor and window manager to provide the look-and-feel of your GUI (icons, window frames, menus, and colors, or a combination of those items called themes). There are several desktop environments and several desktop managers to choose from. (Red Hat provides a few desktop managers, but focuses on GNOME and KDE desktop environments.)
Hardware support - You can configure support for almost every type of hardware that can be connected to a computer. There is support for floppy disk drives, CD-ROMs, removable disks (such as DVDs and Zip drives), sound cards, tape devices, video cards, and most anything else you can think of.
Networking connectivity - To connect your Linux system to a network, Linux offers support for a variety of local area network (LAN) boards, modems, and serial devices. In addition to LAN protocols, such as Ethernet (both wired and wireless), all the most popular upper-level networking protocols can be built-in. The most popular of these protocols is TCP/IP (used to connect to the Internet). Other protocols, such as IPX (for Novell networks) and X.25 (a packet-switching network type that is popular in Europe), are also available.
Network servers - Providing networking services to the client computers on the LAN or to the entire Internet is what Linux does best. A variety of software packages are available that enable you to use Linux as a print server, file server, FTP server, mail server, Web server, news server, or workgroup (DHCP or NIS) server.
Application support - Because of compatibility with POSIX and several different application programming interfaces (APIs), a wide range of freeware and shareware software is available for Linux. Most GNU software from the Free Software Foundation will run in Linux (although some may take a bit of tweaking).
Primary Advantages of Linux
When compared to different commercially available operating systems, Linux's best assets are its price and its reliability. Most people know that its initial price is free (or at least under $100 when it comes in a box or with a book). However, when people talk about Linux's affordability, they are usually thinking of its total cost, which includes the capability of using inexpensive hardware and compatible free add-on applications. Although commercial operating systems tend to encourage upgrading to later hardware, Linux doesn't (although faster hardware and larger disks are nice to have).
In terms of reliability, the general consensus is that Linux is comparable to many commercial UNIX systems but more reliable than most desktop-oriented operating systems. This is especially true if you rely on your computer system to stay up because it is a Web server or a file server. (You don't have to reboot every time you change something.)
Another advantage of using Linux is that help is always available on the Internet. There is probably someone out there in a Linux newsgroup willing to help you get around your problem.
Continues...
Excerpted from Red Hat Linux 9 Bible by Christopher Negus Copyright © 2003 by Wiley Publishing, Inc.. Excerpted by permission.
All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.