Introductory Notes System Startup and Shutdown

Chapter 4: System Startup and Shutdown

4.1 Introductory Notes

UNIX systems run continuously under normal circumstances. Shutting down and powering−off a UNIX system should be done rarely, usually only when a hardware upgrade is being performed or a system is being allocated, or occasionally when another action requiring a system shutdown is performed. In real life, system shutdown is more frequent, because unpredictable situations always occur. Power−cycling a UNIX system is not the only way the system can be shut down. Rebooting is also a familiar task for any UNIX administrator; UNIX administrators know well how system rebooting can be healthy for overall system maintenance. Nevertheless, keeping the UNIX system running is the most visible task of a system administrator. If the system crashes, everyone will complain, your phone will ring constantly, and you will find yourself anxiously trying to fix the problem and bring the system back into production. Quickly you will learn how important the system you are in charge of really is, and how many users depend on it. Even more important, you will learn how crucial a smooth, fast, proper system startup can be. This chapter covers topics related to normal UNIX system startup and shutdown procedures. Invoking a system startup and shutdown is quite simple; the main requirement is to be the superuser on the system an easy task for an administrator. On the other hand, making the system behave correctly, especially during startup, requires a great deal of knowledge and administrative skill. Proper system startup is supposed to customize and set the myriad of existing system configuration files that will control each portion of the UNIX system. Some of these files include system−related configuration data, but there are also site−added applications; the bottom line is that the system should be fully operational after any system startup. Given the complexity of properly configuring the system startup, this chapter could easily be located at the end of the overall text, rather than at its beginning. However, discussing the administration of a running UNIX system without knowing how that system came to be running seems strange; it is as though we are talking about administering a nonexistent UNIX system. So this material remains in the beginning by design; it will focus on the topic of global system startup and shutdown, and we will return to individual startup and shutdown issues later, whenever it is appropriate in discussing specific UNIX topics. From an administrative standpoint, system shutdown is the simpler procedure; at the end of the procedure a system must terminate all running processes, dismount all filesystems, and stop any other system activity. System shutdown works even if we never touch the default shutdown procedure — or perhaps it is better to say it mostly works, because the author of this text has witnessed a UNIX system that could not be shut down from the command line, and the only choice was to power−cycle the system. Our administrative task is to provide a graceful system shutdown. Everything must be stopped in a regular way, or the administrator will have to use the brute force method of power−cycling. System startup, on the other hand, must be done properly or the system will never come up. Obviously, more attention should be paid to system startup, and we will spend much more time discussing the startup procedure than the shutdown process. System startup is often referred to as system booting. Although booting specifies only one phase in the overall system startup, the two terms are commonly interchanged, as you will see in this chapter. Strictly speaking, system startup has a broader meaning than system booting. 87 The two major UNIX platforms BSD and System V have different startup and shutdown procedures, with, of course, the main differences occurring in startup. Among existing commercial UNIX flavors, the System V approach is more common; it provides more flexibility and some other administrative advantages. However, the BSD approach is some−what easier to understand, and we will start our discussion with the BSD startupshutdown procedure. Once the startupshutdown concept is well understood, it will be easy to continue with the System V procedure.

4.2 System Startup