Sun Microsystems, Inc.
spacerspacer
spacer www.sun.com docs.sun.com |
spacer
black dot
 
 
11.  Run Levels and Boot Files (Tasks) Run Control Scripts Run Control Script Summaries The /sbin/rcS Script  Previous   Contents   Next 
   
 

Using a Run Control Script to Stop or Start Services

One advantage of having individual scripts for each run level is that you can run scripts in the /etc/init.d directory individually to stop system services without changing a system's run level.

How to Use a Run Control Script to Stop or Start a Service

  1. Become superuser.

  2. Stop the system service.

    # /etc/init.d/filename stop
  3. Restart the system service.

    # /etc/init.d/filename start
  4. Verify that the service has been stopped or started.

    # pgrep -f service

Example--Using a Run Control Script to Stop or Start a Service

For example, you can stop the NFS server daemons by typing the following:

# /etc/init.d/nfs.server stop
# pgrep -f nfs
#

Then, you can restart the NFS server daemons by typing the following:

# /etc/init.d/nfs.server start
# pgrep -f nfs 
141 143 245 247
# pgrep -f nfs -d, | xargs ps -fp
daemon   141    1 40   Jul 31 ?     0:00 /usr/lib/nfs/statd
root     143    1 80   Jul 31?      0:01 /usr/lib/nfs/lockd
root     245    1 34   Jul 31 ?     0:00 /usr/lib/nfs/nfsd -a 16
root     247    1 80   Jul 31 ?     0:02 /usr/lib/nfs/mountd

Adding a Run Control Script

If you want to add a run control script to start and stop a service, copy the script into the /etc/init.d directory. Then, create links in the rcn.d directory where you want the service to start and stop.

See the README file in each /etc/rcn.d directory for more information on naming run control scripts. The following procedure describes how to add a run control script.

How to Add a Run Control Script

  1. Become superuser.

  2. Add the script to the /etc/init.d directory.

    # cp filename /etc/init.d
    # chmod 0744 /etc/init.d/filename
    # chown root:sys /etc/init.d/filename
  3. Create links to the appropriate rcn.d directory.

    # cd /etc/init.d
    # ln filename /etc/rc2.d/Snnfilename
    # ln filename /etc/rcn.d/Knnfilename
  4. Verify that the script has links in the specified directories.

    # ls /etc/init.d/ /etc/rc2.d/ /etc/rcn.d/

Example--Adding a Run Control Script

The following example shows how to add a run control script for the xyz service.

# cp xyz /etc/init.d
# chmod 0744 /etc/init.d/xyz
# chown root:sys /etc/init.d/xyz
# cd /etc/init.d
# ln xyz /etc/rc2.d/S100xyz
# ln xyz /etc/rc0.d/K100xyz
# ls /etc/init.d /etc/rc2.d /etc/rc0.d

Disabling a Run Control Script

You can disable a run control script by renaming it with an underscore (_) at the beginning of the file name. Files that begin with an underscore or dot are not executed. If you copy a file by adding a suffix to it, both files will be run.

How to Disable a Run Control Script

  1. Become superuser.

  2. Rename the script by adding an underscore (_) to the beginning of the new file.

    # cd /etc/rcn.d
    # mv filename _filename
  3. Verify that the script has been renamed.

    # ls _*
    # _filename

Example--Disabling a Run Control Script

The following example shows how to rename the S100datainit script.

# cd /etc/rc2.d
# mv S100datainit _S100datainit
# ls _*
# _S100datainit
 
 
 
  Previous   Contents   Next