In This Book UNIX System and Network Administration

1.4.4 In This Book

This text covers related issues for both system administration and network administration on a UNIX platform. This is a challenging but doable task, given the many different UNIX platforms and flavors. To make the terminology simpler, we will use the term UNIX Administration to address both UNIX systems and network administration; the administration personnel we will call UNIX administrators. This will not make UNIX administration easier, nor it will simplify our task; however, it could help to clarify some of the topics under discussion. UNIX systems administration related issues are: System startup and shutdown • User and group accounts management • System resources management • Filesystems • System quotas • System security • Backup and restoration of the system • Automating routine tasks • Printing and spooling system • Terminals and modem handling • Accounting • System performance tuning • System customization — kernel reconfiguration • UNIX network administration related issues are: Network interface and connectivity • Data routing • Data multiplexing • Network security • Domain name service • Network information service — NIS • Network filesystem — NFS • UNIX remote commands • Network applications telnet, FTP, etc • Remote printing • Electronic mail • UUCP • X windowing • Despite many promises, wishes, advertisements, and attempts to standardize UNIX, the differences among existing UNIX favors are not negligible. The differences exist in UNIX implementations, but the main differences are seen in the UNIX administration. This text attempts to cover most of the UNIX administrative topics on both the BSD and System V ATT UNIX platforms. This is primarily achieved through brief theoretical explanations of certain topics, and the selective presentation of 28 29

Chapter 2: The Unix Model — Selected Topics

2.1 Introduction

UNIX administration presents a complex job that requires certain skills to be accomplished successfully. These skills range from a basic knowledge of computer hardware, operating systems, and programming techniques, up to ethics, psychology, and social behavior. It supposes a responsible approach to very challenging problems, and a readiness for a nonstop follow−up of everything done. An administrator usually covers many different systems different hardware, different configurations, different software, different purposes, and each of those systems is the baby that requires a certain amount of attention, and the administrator must pay that attention. Of course the level of the required skills varies; it would be wrong to expect that an UNIX administrator especially a successful one has to graduate in each of the listed fields to be able to respond to all administrative demands. However, it is true that some of the required skills need more than just a basic knowledge; mostly these are strictly UNIX−related skills. Nobody can fight with UNIX administrative challenges without being familiar with the UNIX operating system, the UNIX commands and how to use them. An even deeper expertise in UNIX internals could be very instrumental in an easier UNIX administration. Script programming is another fighting arena. An average UNIX administration time consists of 75 to 80 of shell programming, and only the rest is a manual administration from the keyboard. Some selected UNIX topics are briefly discussed in this chapter to point out the most important issues for a successful UNIX administration. A certain level of knowledge of the discussed topics is still supposed — this chapter is simply trying to highlight the needed background for a comprehensive UNIX administration. The chapter should refresh the readers memory and push ahead to consider all holes in the readers knowledge and understanding of discussed issues. Another purpose is to present in one place most of the relevant UNIX fundamentals needed for better understanding of different administrative tasks. The reader is also advised to look into other literature for more detailed descriptions, if necessary. The terminology used is common in the UNIX community. To help readers better understand the material, a number of examples and figures illustrate the discussed UNIX topics.

2.2 Files

In UNIX everything is a file, or rather, file−like — this makes file issues central to UNIX. What does this really mean? A file is a collection of data, or, better, a sequence of bytes, stored in a memory or on a disk. A file can be a program that can be executed. When such a program is running, it creates a process. Therefore, a file lies in the origin of every process. On UNIX each device is also described by a file — these are called special device files, but are still file−like entities. Even users on UNIX are file related, as they have associated attributes such as what they are allowed access to that are specified in a file−like way. UNIX has a hierarchical tree−structured directory organization known collectively as the filesystem or filesystem. The base of this tree is the root directory with the special name the slash character. In UNIX all user−available disk space is integrated into a single directory tree under , so the physical disk unit the disk drive itself where a file resides is not a part of the UNIX file specification. 30