Linux is a freely available UNIX-like operating system that runs on a wide variety of systems. Linus Torvalds and other programmers originally developed Linux for the Intel 80x86 processor. Nowadays, Linux is also available for systems based on other processors, such as Intel's new 64-bit Itanium IA64 architecture processor, the Motorola 68000 family, the Alpha AXP processor, the Sun SPARC and UltraSPAC processors, Hewlett-Packard's HP PA-RISC processor, the PowerPC and PowerPC64 processors, ARM family of processors, and the MIPS R4x00 and R5x00 processors. More recently, IBM has announced Linux for its S/390 and zSeries mainframes. This book covers Red Hat Linux for the Intel 80x86 and Pentium processors (these are known as the IA32 architecture processors, or i386, because they support the instruction set of the 80386 processor).
Red Hat Linux is a specific Linux distribution. A Linux distribution is essentially a package consisting of the Linux operating system and a collection of applications, together with an easy-to-use installation program. All Linux distributions include the core Linux operating system (the kernel); the XFree86 X Window System for x86 systems; one or more graphical desktops, such as GNOME and KDE; and a large selection of applications. Everything comes in ready-to-run binary format, but the source code and documentation are also included. By now, each Linux distribution includes so much software that it comes on multiple CD-ROMs. For example, this book comes with two CD-ROMs containing the Publisher's Edition of Red Hat Linux. The source code CD-ROM is not included but is available upon request (see coupon on the final page of this book).
Like many other Linux distributions, Red Hat Linux is a commercial distribution. You can buy Red Hat Linux in computer stores and bookstores. The GNU (which stands for 'GNU's Not UNIX') General Public License that applies to Linux allows for such commercial, for-profit distribution, but requires that the software be distributed in source-code form, and stipulates that anyone can copy and distribute the software in source-code form to anyone else.
In an effort to unite several different Linux distributions and promote widespread adoption, a number of Linux companies (Conectiva, The SCO Group, SuSE, and Turbolinux) have formed the UnitedLinux group, and in November 2002, the group released version 1.0 of its UnitedLinux product. UnitedLinux is expected to compete with the Red Hat Linux distribution.
Both the Linux kernel and Red Hat Linux have gone through a number of versions. The version numbers are unrelated, but each has particular significance.
After Linux version 1.0 was released on March 14, 1994, the loosely organized Linux development community adopted a version-number scheme. Versions 1.x.y and 2.x.y, where x is an even number, are stable versions. The number y is the patch level, which is incremented as problems are fixed. Notice that these version numbers are of the form Major.Minor.Patch, where Major and Minor are integers denoting the major and minor version numbers, and Patch is another integer representing the patch level.
Versions 2.x.y with an odd x number are beta releases for developers only; they may be unstable, so you should not adopt these versions for day-to-day use. Developers add new features to these odd-numbered versions of Linux.
When this book was written, the latest stable version of the Linux kernel was 2.4.20 (note that information about the latest version of the Linux kernel is available at http://www.kernel.org/). This book's companion CD-ROMs contain the latest version of the Linux kernel as of Spring 2003.
If you hear about a later version of Linux or about helpful patches (minor corrections) to the current version, you can obtain the patches and rebuild the kernel by following the instructions in Chapter 21. That chapter also describes how you can download the new kernel from Red Hat.
Red Hat assigns the Red Hat Linux version numbers, such as 7.3 or 8.1. They are of the form x.y, where x is the major version and y the minor version. Unlike with the Linux kernel version numbers, there is no special meaning associated with odd and even minor versions. Nowadays if the minor version number is zero, it's simply dropped - as in Red Hat Linux 9. Each version of Red Hat Linux includes specific versions of the Linux kernel and other major components, such as the XFree86, GNOME, KDE, and various applications such as the OpenOffice.org suite.
Red Hat releases new versions of Red Hat Linux on a regular basis. For example, Red Hat Linux 5.2 came out in November 1998, 6.0 in April 1999, 7.0 in September 2000, 8.0 in September 2002, and Red Hat Linux 9 on March 31, 2003. Typically, each new major version of Red Hat Linux provides significant new features. Red Hat Linux 6.x brought in the GNOME and KDE graphical desktops; Red Hat Linux 7.0 offered features such as support for the Universal Serial Bus (USB) keyboard and mice, XFree86 4.0, and strengthened network security with Kerberos. Red Hat Linux 8.0 provided a uniform look-and-feel for both GNOME and KDE desktops, included the OpenOffice.org office suite, and added many graphical configuration tools. Red Hat Linux 9 includes the Common UNIX Printing System (CUPS), Apache 2.0 Web server, and the Native POSIX Thread Library. In all major versions, Red Hat also updates the core components from the kernel to the GNU C Compiler and associated libraries. Often these behind-the-scenes changes to the core operating system provide significant benefits such as support for newer interfaces and a more secure system.