UNIX System Administration Handbook - Evi Nemeth [455]
causes all subsequent commands that the user runs to have their use of physical memory limited to 32 megabytes. This feature is roughly equivalent to renice for memory-bound processes. You might tactfully suggest that repeat offenders put such a line in their .cshrc files.
If a runaway process doesn’t seem to be the source of poor performance, there are two other possible causes to investigate. The first is an overloaded network. Many programs are so intimately bound up with the network that it’s hard to tell where system performance ends and network performance begins. See Chapter 20 for more information about the tools used to monitor networks.
Some network overloading problems are hard to diagnose because they come and go very quickly. For example, if every machine on the network runs a network-related
program out of cron at a particular time each day, there will often be a brief but dramatic glitch. Every machine on the net will hang for five seconds, and then the problem will disappear as quickly as it came.
Server-related delays are another possible cause of performance crises. UNIX systems are constantly consulting remote servers for NFS, NIS, DNS, and any of a dozen other facilities. If a server is dead or some other problem makes it expensive to communicate with, the effects can ripple back through client systems.
For example, on a busy system, some process may use the gethostent library routine every few seconds or so. If a DNS glitch makes this routine take two seconds to complete, you will likely perceive a difference in overall performance.
1. www.cisco.com and www.alteonwebsystems.com
2. top itself can be quite a CPU hog, so be judicious in your use of it.
3. It is not always necessary to save the contents of a page that’s being recycled. Text pages and other pages that can be retrieved from their original sources are simply discarded.
4. That is, it takes a long time to switch between applications, but performance is acceptable when an application is repeating a simple task.
5. A large virtual address space or resident set used to be a suspicious sign, but shared libraries have made these numbers less useful. Most versions of ps are not very smart about separating system-wide shared library overhead from the address spaces of individual processes. Many processes wrongly appear to have megabytes of active memory.
25.5 RECOMMENDED READING
COCKCROFT, ADRIAN AND RICHARD PETTIT. Sun Performance and Tuning: Java and the Internet. Upper Saddle River, NJ: Prentice Hall. 1998.
LOUKIDES, MIKE. System Performance Tuning. Sebastopol: O’Reilly. 1991.
26 Cooperating with Windows
It’s a fact of life that Windows is not going away. We can’t ignore it. We must peacefully coexist with it. One way to look at the situation is that UNIX has brought TCP/IP and the Internet to the table, while Windows has brought millions of users. The challenge for system administrators is to host the resulting Satanic banquet.
Fortunately, modern tools can significantly reduce the chance of PC-to-UNIX transplant rejection. It really is the case that both platforms have their strengths and that they can be made to work together. Windows is a popular and featureful desktop platform, capable of bridging the gap between the user and the network cable coming out of the wall. UNIX, on the other hand, is a rock solid, scalable infrastructure platform.
This chapter addresses a variety of topics faced by administrators in this postmodern, PCs-and-UNIX-living-together world.
26.1 FILE AND PRINT SHARING
Perhaps the most powerful level of PC/UNIX integration is achieved by sharing directories that live on a UNIX host (or a dedicated UNIX-like file server) with desktop PCs that run Windows.1
The shared directories can be made to appear transparently under Windows, either as drives or as an extension to the regular Windows network file tree. Either NFS or CIFS can be used to implement this functionality.
NFS: the Network File System
NFS was designed to share files among UNIX