Wednesday, June 24, 2009

Solaris/UNIX Boot Process

Some new UNIX users (maybe new admins) or admins in training have been asking for a less technical overview of the UNIX/Solaris boot process. So in order to cater their request here's a brief overview of what goes on when booting:

The directories or startup script names might vary depending on the versions/releases you are using.

1. Start the operating system on a host.
2. The kernel runs /sbin/init, as part of the booting process.
3. /sbin/init runs the /etc/rcS.d/ startup script.
4. The script runs a number of system startup tasks, including establishing the minimum host and network configurations for diskless and dataless operations. /etc/rcS.d/ also mounts the /usr file system.
1. If the local database files contain the required configuration information (host name and IP address), the script uses it.
2. If the information is not available in local host configuration files, /etc/rcS.d/ uses RARP to acquire the host's IP address.
5. If the local files contain domain name, host name, and default router address, the machine uses them. If the configuration information is not in local files, then the system uses the Bootparams protocol to acquire the host name, domain name, and default router address. Note that the required information must be available on a network configuration server that is located on the same network as the host. This is necessary because no internetwork communications exist at this point.
6. After /etc/rcS/ completes its tasks and several other boot procedures have executed, /etc/rc2.d/S69inet runs. This script executes startup tasks that must be completed before the name services (NIS, NIS+, or DNS) can start. These tasks include configuring the IP routing and setting the domain name.
7. At completion of the S69inet tasks, /etc/rc2.d/S71rpc runs. This script starts the NIS, NIS+, or DNS name service.
8. After /etc/rc2.d/S71 runs, /etc/rc2.d/S72inetsvc runs. This script starts up services that depend on the presence of the name services. S72inetsvc also starts the daemon inetd, which manages user services such as telnet.

Readers who read this page, also read:

Bookmark and Share My Zimbio