Synopses & Reviews
A modern computer system that's not part of a network is even more of an anomaly today than it was when we published the first edition of this book in 1991. But however widespread networks have become, managing a network and getting it to perform well can still be a problem.Managing NFS and NIS, in a new edition based on Solaris 8, is a guide to two tools that are absolutely essential to distributed computing environments: the Network Filesystem (NFS) and the Network Information System (formerly called the "yellow pages" or YP).The Network Filesystem, developed by Sun Microsystems, is fundamental to most Unix networks. It lets systems ranging from PCs and Unix workstations to large mainframes access each other's files transparently, and is the standard method for sharing files between different computer systems.As popular as NFS is, it's a "black box" for most users and administrators. Updated for NFS Version 3, Managing NFS and NIS offers detailed access to what's inside, including:
- How to plan, set up, and debug an NFS network
- Using the NFS automounter
- Diskless workstations
- A new transport protocol for NFS (TCP/IP)
- New security options (IPSec and Kerberos V5)
- Diagnostic tools and utilities
- NFS client and server tuning
NFS isn't really complete without its companion, NIS, a distributed database service for managing the most important administrative files, such as the passwd
file and the hosts
file. NIS centralizes administration of commonly replicated files, allowing a single change to the database rather than requiring changes on every system on the network.If you are managing a network of Unix systems, or are thinking of setting up a Unix network, you can't afford to overlook this book.
About the Author
Mike Eisler graduated from the University of Central Florida with a master's degree in computer science in 1985. His first exposure to NFS and NIS came while working for Lachman Associates, Inc., where he was responsible for porting NFS and NIS to System V platforms. He later joined Sun Microsystems, Inc., responsible for projects such as NFS server performance, NFS/TCP, WebNFS, NFS secured with Kerberos V5, NFS Version 4, and JavaCard security. Mike has authored or coauthored several Request For Comments documents for the Internet Engineering Task Force, relating to NFS and security. He is currently a Technical Director at Network Appliance, Inc.
Ricardo Labiaga is a staff engineer at Sun Microsystems, Inc., where he concentrates on networking and wireless technologies. Ricardo spent 8 years in the Solaris NFS group at Sun, where he worked on a variety of development projects with a primary focus on automounting and the NFS server. Ricardo is responsible for implementing significant functionality and performance enhancements to the automounter, as well as leading the NFS Server Logging design team. He holds a master of science degree in computer engineering from The University of Texas at El Paso.
Hal Stern is a technical consultant with Sun Microsystems, where he specializes in networking, performance tuning, and kernel hacking. Hal earned a Bachelor of Science degree from Princeton University in 1984. Before joining Sun, Hal was a member of the technical staff at Polygen Corporation, developing UNIX-based molecular modelling and chemical information system products. Hal also worked on the Massive Memory Machine project as a member of the Research Staff in Princeton University's Department of Computer Science. His interests include large installation system administration, virtual memory management systems, performance, local and wide-area networking, interactive graphics, applications in financial services, cosmology, and the history of science. Hal is active in the Sun User's Group and has served on the advisory trustee board of the Princeton Broadcasting Service for seven years. Hal and his wife Toby live in Burlington, Massachusetts. At home, Hal enjoys carpentry, jazz music, cooking, and watching the stock market.
Table of Contents
Preface; Who this book is for; Versions; Organization; Conventions used in this book; Differences between the first edition and second edition; Comments and questions; Hal's acknowledgments from the first edition; Acknowledgments for the second edition; Chapter 1: Networking Fundamentals; 1.1 Networking overview; 1.2 Physical and data link layers; 1.3 Network layer; 1.4 Transport layer; 1.5 The session and presentation layers; Chapter 2: Introduction to Directory Services; 2.1 Purpose of directory services; 2.2 Brief survey of common directory services; 2.3 Name service switch; 2.4 Which directory service to use; Chapter 3: Network Information Service Operation; 3.1 Masters, slaves, and clients; 3.2 Basics of NIS management; 3.3 Files managed under NIS; 3.4 Trace of a key match; Chapter 4: System Management Using NIS; 4.1 NIS network design; 4.2 Managing map files; 4.3 Advanced NIS server administration; 4.4 Managing multiple domains; Chapter 5: Living with Multiple Directory Servers; 5.1 Domain name servers; 5.2 Implementation; 5.3 Fully qualified and unqualified hostnames; 5.4 Centralized versus distributed management; 5.5 Migrating from NIS to DNS for host naming; 5.6 What next?; Chapter 6: System Administration Using the Network File System; 6.1 Setting up NFS; 6.2 Exporting filesystems; 6.3 Mounting filesystems; 6.4 Symbolic links; 6.5 Replication; 6.6 Naming schemes; Chapter 7: Network File System Design and Operation; 7.1 Virtual filesystems and virtual nodes; 7.2 NFS protocol and implementation; 7.3 NFS components; 7.4 Caching; 7.5 File locking; 7.6 NFS futures; Chapter 8: Diskless Clients; 8.1 NFS support for diskless clients; 8.2 Setting up a diskless client; 8.3 Diskless client boot process; 8.4 Managing client swap space; 8.5 Changing a client's name; 8.6 Troubleshooting; 8.7 Configuration options; 8.8 Brief introduction to JumpStart administration; 8.9 Client/server ratios; Chapter 9: The Automounter; 9.1 Automounter maps; 9.2 Invocation and the master map; 9.3 Integration with NIS; 9.4 Key and variable substitutions; 9.5 Advanced map tricks; 9.6 Side effects; Chapter 10: PC/NFS Clients; 10.1 PC/NFS today; 10.2 Limitations of PC/NFS; 10.3 Configuring PC/NFS; 10.4 Common PC/NFS usage issues; 10.5 Printer services; Chapter 11: File Locking; 11.1 What is file locking?; 11.2 NFS and file locking; 11.3 Troubleshooting locking problems; Chapter 12: Network Security; 12.1 User-oriented network security; 12.2 How secure are NIS and NFS?; 12.3 Password and NIS security; 12.4 NFS security; 12.5 Stronger security for NFS; 12.6 Viruses; Chapter 13: Network Diagnostic and Administrative Tools; 13.1 Broadcast addresses; 13.2 MAC and IP layer tools; 13.3 Remote procedure call tools; 13.4 NIS tools; 13.5 Network analyzers; Chapter 14: NFS Diagnostic Tools; 14.1 NFS administration tools; 14.2 NFS statistics; 14.3 snoop; 14.4 Publicly available diagnostics; 14.5 Version 2 and Version 3 differences; 14.6 NFS server logging; 14.7 Time synchronization; Chapter 15: Debugging Network Problems; 15.1 Duplicate ARP replies; 15.2 Renegade NIS server; 15.3 Boot parameter confusion; 15.4 Incorrect directory content caching; 15.5 Incorrect mount point permissions; 15.6 Asynchronous NFS error messages; Chapter 16: Server-Side Performance Tuning; 16.1 Characterization of NFS behavior; 16.2 Measuring performance; 16.3 Benchmarking; 16.4 Identifying NFS performance bottlenecks; 16.5 Server tuning; Chapter 17: Network Performance Analysis; 17.1 Network congestion and network interfaces; 17.2 Network partitioning hardware; 17.3 Network infrastructure; 17.4 Impact of partitioning; 17.5 Protocol filtering; Chapter 18: Client-Side Performance Tuning; 18.1 Slow server compensation; 18.2 Soft mount issues; 18.3 Adjusting for network reliability problems; 18.4 NFS over wide-area networks; 18.5 NFS async thread tuning; 18.6 Attribute caching; 18.7 Mount point constructions; 18.8 Stale filehandles; Appendix A: IP Packet Routing; A.1 Routers and their routing tables; A.2 Static routing; Appendix B: NFS Problem Diagnosis; B.1 NFS server problems; B.2 NFS client problems; B.3 NFS errno values; Appendix C: Tunable Parameters; Colophon;