Richard Blum

Mastering Linux System Administration


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

FILESYSTEM DESCRIPTION
ext Linux extended filesystem—the original Linux filesystem
ext2 Second extended filesystem; provides advanced features over ext
ext3 Third extended filesystem; supports journaling
ext4 Fourth extended filesystem; supports advanced journaling
btrfs A newer, high‐performance filesystem that supports journaling and large files
exfat The extended Windows filesystem, used mainly for SD cards and USB sticks
hpfs OS/2 high‐performance filesystem
jfs IBM's journaling file system
iso9660 ISO 9660 filesystem (CD‐ROMs)
minix MINIX filesystem
msdos Microsoft FAT16
ncp NetWare filesystem
nfs Network File System
ntfs Support for Microsoft NT filesystem
proc Access to system information
smb Samba SMB filesystem for network access
sysv Older Unix filesystem
ufs BSD filesystem
umsdos Unix‐like filesystem that resides on top of msdos
vfat Windows 95 filesystem (FAT32)
XFS High‐performance 64‐bit journaling filesystem

      Any hard drive that a Linux server accesses must be formatted using one of the filesystem types listed in Table 1.2.

      The Linux kernel interfaces with each filesystem using the Virtual File System (VFS). This provides a standard interface for the kernel to communicate with any type of filesystem. VFS caches information in memory as each filesystem is mounted and used.

      The GNU Utilities

      Besides having a kernel to control hardware devices and launch programs, a computer operating system needs utilities to perform standard functions, such as controlling files and programs. While Linus created the Linux system kernel, he had no system utilities to run on it. Fortunately for him, at the same time he was working, a group of people were working together on the Internet trying to develop a standard set of computer system utilities that mimicked the popular Unix operating system.

      The GNU organization (GNU stands for GNU's Not Unix) developed a complete set of Unix utilities but had no kernel system to run them on. These utilities were developed under a software philosophy called open source software (OSS).

      The concept of OSS allows programmers to develop software and then release it to the world with no licensing fees attached. Anyone can use the software, modify it, or incorporate it into their own system without having to pay a license fee. Uniting Linus's Linux kernel with the GNU operating system utilities created a complete, functional, free operating system.

      While the bundling of the Linux kernel and GNU utilities is often just called Linux, you will see some Linux purists on the Internet refer to it as the GNU/Linux system to give credit to the GNU organization for its contributions to the cause.

      The GNU project was mainly designed for Unix system administrators to have a Unix‐like environment available. This focus resulted in the project porting many common Unix system command‐line utilities. The core bundle of utilities supplied for Linux systems is called the coreutils package.

      The GNU coreutils package consists of these three parts:

       Utilities for handling files

       Utilities for manipulating text

       Utilities for managing processes

      Each of these three main groups of utilities contains several utility programs that are invaluable to the Linux system administrator and programmer.

      Linux User Interfaces

      Having a world‐class operating system that can manage your computer hardware and software is great, but you also need some way to communicate with it. Back in the old days of computers, you communicated with the mainframe computer by punching holes into cards, feeding them into a card reader, and then waiting for the output to appear on a printer. Fortunately, those days are long gone.

      Thanks to the Apple macOS and Microsoft Windows operating systems, these days most desktop computer users expect some type of graphical display to interact with their system. Linux doesn't disappoint, offering a plethora of graphical desktops you can choose from. The following sections describe a few of the more popular ones.

      THE X WINDOW SOFTWARE

      Two basic elements control your video environment—the video card in your PC and your monitor. To display fancy graphics on your computer, the Linux software needs to know how to talk to both of them. The X Window software is the core element in presenting graphics.

      Linux isn't the only operating system that uses X Window; there are versions written for many different operating systems. In the Linux world, there are a few different software packages that can implement it. There are two X Window packages that are most commonly used in Linux:

        X.org

       Wayland

      The X.org package is the older of the two, based on the original Unix X Window System version 11 (often called X11). More Linux distributions are migrating to the newer Wayland software, which is more secure and easier to maintain.

      When you first install a Linux distribution, it attempts to detect your video card and monitor and then creates an X Window configuration file that contains the required information. During installation, you may notice a time when the installation program scans your monitor for supported video modes. Sometimes this causes your monitor to go blank for a few seconds. Because there are lots of different types of video cards and monitors out there, this process can take a little while to complete.

      The core X Window software produces a graphical display environment, but nothing else. While this is fine for running individual applications, it is not too useful for