Richard Blum

Mastering Linux System Administration


Скачать книгу

and low‐disk space environments fvwm Supports some advanced desktop features such as virtual desktops and Panels, but runs in low‐memory environments fvwm95 Derived from fvwm, but made to look like a Windows 95 desktop

Snapshot of the Xfce desktop as seen in the MX Linux distribution

      If you are using an older PC, try a Linux distribution that uses one of these desktops and see what happens. You may be pleasantly surprised.

      THE COMMAND‐LINE INTERFACE

      While having a fancy graphical desktop interface is nice, there are drawbacks. The extra processing power required to interact with the graphics card takes away crucial CPU time that can be used for other programs. Nowhere is this more important than in a server environment.

      Because of that, many Linux servers don't load a graphical desktop and instead rely on a text‐based interface, called the command‐line interface (CLI). The CLI provides a way for users to start programs, manage files on the filesystem, and manage processes running on the Linux system using simple text commands. The CLI is produced by a program called a shell. The shell allows you to enter text commands, and then it interprets the commands and then executes them in the kernel.

      The shell contains a set of internal commands that you use to control things such as copying files, moving files, renaming files, displaying the programs currently running on the system, and stopping programs running on the system. Besides the internal commands, the shell also allows you to enter the name of a program at the command prompt. The shell passes the program name off to the kernel to start it.

      You can also group shell commands into files to execute as a program. Those files are called shell scripts. Any command that you can execute from the command line can be placed in a shell script and run as a group of commands. This provides great flexibility in creating utilities for commonly run commands, or processes that require several commands grouped together.

SHELL DESCRIPTION
ash A simple, lightweight shell that runs in low‐memory environments but has full compatibility with the Bash Shell
korn A programming shell compatible with the Bourne shell but supporting advanced programming features like associative arrays and floating‐point arithmetic
tcsh A shell that incorporates elements from the C programming language into shell scripts
zsh An advanced shell that incorporates features from bash, tcsh, and korn, providing advanced programming features, shared history files, and themed prompts

      Most Linux distributions include more than one shell, although usually they pick one of them to be the default. If your Linux distribution includes multiple shells, feel free to experiment with different shells and see which one fits your needs.

      Now that you have seen the four main components required for a complete Linux system, you may be wondering how you are going to get them all put together to make a Linux system. Fortunately, there are people who have already done that for you.

      A complete Linux system package is called a distribution. There are lots of different Linux distributions available to meet just about any computing requirement you could have. Most distributions are customized for a specific user group, such as business users, multimedia enthusiasts, software developers, or average home users. Each customized distribution includes the software packages required to support specialized functions, such as audio‐ and video‐editing software for multimedia enthusiasts, or compilers and integrated development environments (IDEs) for software developers.

      The different Linux distributions are often divided into two categories.

       Core Linux distributions

       Specialized distributions

      The following sections describe these different types of Linux distributions and show some examples of Linux distributions in each category.

      Core Linux Distributions

DISTRIBUTION DESCRIPTION
Slackware One of the original Linux distribution sets, popular with Linux geeks
Red Hat Enterprise A commercial business distribution used mainly for Internet servers
Gentoo A distribution designed for advanced Linux users, containing only Linux source code
openSUSE Different distributions for business and home use
Debian Popular with Linux experts and commercial Linux products

      In the early days of Linux, a distribution was released as a set of floppy disks. You had to download groups of files and then copy them onto disks. It would usually take 20 or more disks to make an entire distribution! Needless to say, this was a painful experience.

      Nowadays, Linux distributions are released as an ISO image file. The ISO image file is a complete disk image of a DVD as a single file. You use a software application to either burn the ISO image file onto