Previous: Installing Linux Up: Linux Installation and Getting Started Next: System Administration
.
g, handling the low-level details of memory management, process scheduling, device access, and so on. In any UNIX system, the kernel is the software which controls access to system resources (such as memory and processor time) from user programs (such as a text editor). This is in sharp contrast to operating systems such as MS-DOS, which allow only a single program to run at a time.
A set of utilities which handle basic system tasks such as manipulating files, creating users, reporting system activity, and so on. These programs are essentially the same on any UNIX system, and provide a standard interface for users. For example, the command to copy a file on all UNIX systems is known as cp. Therefore, using Linux will be very similar, if not identical, to using other versions of UNIX.
The system libraries, which contain common subroutines used by software to handle everything from file I/O to displaying graphics. Linux implements shared libraries, which allow programs to share the code in these subroutines, reducing the size of program binaries significantly.
A set of system configuration files, containing information about the users on the system, available devices, network interface configuration, and so on. Many individual applications also have their own set of configuration files.
Online documentation, in the form of manual pages (often abbreviated as ``man pages''). Man pages document the commands, library routines, kernel system calls, file formats, and device driver interfaces available on the system. They are an excellent source of online help and are easy to use. The man pages available for Linux are incomplete, but most of the important system commands and library calls are documented.
And, of course, application software. There are many applications available for Linux, such as (a document processing system), Emacs (a powerful yet baroque text editor), the X Window System (a graphics interface), and more.
itemize
The application software is what really composes the Linux system from the user's point of view. However, it is all of these elements combined which form the entire system. As mentioned before, there isn't a single official distribution for all of this software. There are many distributions availab e-each of which differ somewhat in their installation methods and supported software, but all of which contain the essential elements listed above.
In this book, we focus on the Softlanding Linux System (SLS) distribution of Linux. SLS has become the de facto standard for Linux installations worldwide. Because of its completeness and ease of use, we will only cover how to get and install the SLS distribution here.
We don't mean to be biased towards a particular release; however, it takes a lot of time and effort to keep up with all of the Linux distributions available. However, all of the concepts discussed in this book apply to Linux distributions other than SLS.
ware Foundation in Cambridge, Massachusetts. However, programmers all over the world have contributed to the growing pool of Linux software.
Linux supports almost all of the features of commercial versions of UNIX, as well as many not found on proprietary UNIX systems. Furthermore, Linux is closely compatible with the IEEE POSIX.1 standard, and has been developed with software portability in mind, thus supporting many important features of other UNIX standards. Linux also utilizes all of your system's memory-without memory limits or segmentation. The Linux system runs exclusively in 80386's protected mode, which allows it to operate as a true 32-bit operating system. A little-known fact about the 80386 and 80486 chips is that, internally, these processors were designed to support multitasking systems such as UNIX. Unfortunately, even MS-DOS 6.0 has yet to exploit these features.
There is a rumor abound that UNIX is a large, unwieldy system, unapproachably hungry for resources such as disk space and memory. In Linux, the proof to dispell those myths was implemented. Linux is small, fast, and flexible. It requires fewer resources than IBM's OS/2, and uses less space than many MS-DOS or Microsoft Windows systems including large applications (such as Microsoft Word or Lotus 1-2-3). Linux has built-in support for networking, multitasking, and other features which you'll see touted as ``New Technology'' in systems such as in Windows NT. In fact, UNIX (and now, Linux) has implemented this ``New Technology'' for well over 15 years. The proprietary PC software industry is still catching up.
When using Linux, keep in mind that it is truly ``a hacker's operating system''---developed by and for UNIX hackers. This is a strong distinction between commercial versions of UNIX, which are designed for customers, not for hackers. Commercial versions of UNIX are expected to work ``out of the box''. This is not the case with Linux.
Because of this distinction, many newcomers get easily frustrated with Linux. The only problem is a lack of basic UNIX know-how. Setting up and running your own UNIX system is something which most UNIX users never get to do, even after years of experience. Linux has provided UNIX newcomers the unique opportunity to ``do it yourself''---but nobody said it was going to be easy.
It takes a lot of time and effort to run your own UNIX system (and a certain knack for fixing problems). Even with standard Linux distributions, such as SLS, there are sometimes little quirks which need to be fixed by hand in order for everything to work correctly. If you have previous UNIX experience, it should be easy to find these problems. However, if you're new to UNIX, it would serve you well to read up on using and running a UNIX system before you dive in.
Put simply, Linux isn't for everyone. Many users get in ``over their heads'' when getting started with Linux. To keep your head above water, we strongly encourage you to find a good book on using UNIX, as well as a book on UNIX system administration. In this manual, we include an introductory UNIX and system administration tutorial, but this is the bare minimum that is needed to get started.
The Linux Documentation Project is working to solve this dilemma. In the future, the LDP's Linux User's Guide and Linux System Administration Guide will be available. Until then, you'll need to rely on other sources.
See Appendix for a list of relevant UNIX books and other sources of information.
-----------------------------------------------