8:insserv

From Linux Man Pages

Jump to: navigation, search
      Insserv - Enable an installed system init script
      

Contents

SYNOPSIS

      insserv [-v] [-d] [-f] [[/]path/to/init.d/]script ...
 
      insserv [-v] [[/]path/to/init.d/]script[,start=<lvl1>[,<lvl2>]] ...
 
      insserv [-v] -r [-d] [-f] [[/]path/to/init.d/]script ...
 
      insserv -h
 
      /usr/lib/lsb/install_initd [[/]path/to/init.d/script]
 
      /usr/lib/lsb/remove_initd [[/]path/to/init.d/script]

DESCRIPTION

      insserv  enables  an  installed  system  init script (`boot script') by reading the comment header of the script,
      e.g.:
 
        ### BEGIN INIT INFO
        # Provides:       boot_facility_1 [ boot_facility_2 ...]
        # Required-Start: boot_facility_1 [ boot_facility_2 ...]
        # Required-Stop:  boot_facility_1 [ boot_facility_2 ...]
        # Should-Start:   boot_facility_1 [ boot_facility_2 ...]
        # Should-Stop:    boot_facility_1 [ boot_facility_2 ...]
        # Default-Start:  run_level_1 [ run_level_2 ...]
        # Default-Stop:   run_level_1 [ run_level_2 ...]
        # Description:    multiline_description
        ### END INIT INFO
 
      and calculating the dependencies between all scripts.  Please note,  that  the  Required-Stop,  Should-Stop,  and
      Default-Stop are ignored in SuSE Linux, because the SuSE boot script concept uses a differential link scheme (see
      init.d(7)).  With known dependencies and runlevel(s) insserv sets and reorders the corresponding  symbolic  links
      of the concerned runlevels directories (see init.d(7)).  Known runlevels are:
 
        0   used for System halt
        1   used for single user mode
        2   used for local multiuser without remote network
        3   used for full multiuser with network
        4   reserved for local use
        5   used for full multiuser with network and xdm
        6   used for System reboot
        S   used during boot into single user mode
        B   used during boot before any other runlevel
 
      insserv  scans  for  System Facilities in the configuration file /etc/insserv.conf and each file in the directory
      /etc/insserv.conf.d/.  Each line which begins with $ and a following name defines a system  facility  accordingly
      to  the  Linux  Standard  Base Specification (LSB), All names followed by such a system facility will declare the
      required dependencies of the facility.  Here is an example for /etc/insserv.conf:
 
        # All local filesystems are mounted
        # (done during boot phase)
        $local_fs       boot
 
        # Low level networking
        $network        network route
 
        # Named is operational
        $named          named
 
        # All remote filesystems are mounted
        # (in some cases /usr may be remote).
        $remote_fs      $local_fs nfs
 
        # System logger is operational
        $syslog         syslog
 
        # All network daemons are running
        $netdaemons     portmap inetd
 
        # Services which need to be interactive
        <interactive>   boot.crypto
 
      Names starting with a `+' sign are marked as optional.  If the service with the  name  after  the  plus  sign  is
      available it will be used, if not available it is ignored silently.  Words beginning with < and ending with > are
      keywords.  Currently <interactive> is the only know keyword for marking a service as an interactive one,  e.g.  a
      service which requires a passphrase or password input during boot or runlevel change.
 
      Beside  the defined System Facilities in the configuration file /etc/insserv.conf, insserv also knows the special
      facility $all.  This facility indicates that a service should be inserted at the end of  all  services.   Clearly
      all services using this facility will be grouped into one starting order.

OPTIONS

      Currently there are only four options for insserv.
 
      -v, --verbose
             Write out what is currently going on.
 
      -n, --dryrun
             Do not update symlinks.
 
      -r, --remove
             Remove the listed scripts from all runlevels.
 
      -d, --default
             Use default runlevels a defined in the scripts.  This may restore an edited runlevel link scheme.
 
      -f, --force
             Ignore if a required service is missed.
 
      -h, --help
             Print out short usage message.
 
      But you may use the argument syntax described in the following section.

ARGUMENTS

      [[/]path/to/init.d/]
             Relative  or  absolute  path  to  the  init scripts base directory.  For the SuSE Linux boot concept, this
             defaults to /etc/init.d/ in compliance with the LSB specification.  In this case insserv does not  add  or
             remove  a  script  to  the runlevels declared in the script headers, but may re-order the runlevels if the
             order of the currently enabled scripts has changed (see option -d).  Note that if a relative path is  used
             insserv has to be called from the root directory.
 
      [[/]path/to/init.d/]script ...
             List of scripts which have to be added to the runlevels. If a path is used it should point to the absolute
             or relative location of the boot scripts.  insserv checks for the existence of  these  scripts.   For  the
             runlevels the information found in the script is used.
 
      [[/]path/to/init.d/]script[,start=<lvl1>[,<lvl2>]] ...
             List  of  scripts  which have to be added to the specified runlevels to be started with.  You may use this
             extension to overwrite the default values  for  start  and  stop  runlevels  of  the  script.   Note  that
             <lvl1>, <lvl2>, ...   are  the  known  runlevels explained above.  The extension ,stop=<lvl1>[,<lvl2>]] is
             possible but ignored on SuSE Linux.
 
      -r [[/]path/to/init.d/]script ...
             List of scripts which should be removed from the runlevels. If a path is used it should point to the abso-
             lute or relative location of the boot scripts.  insserv checks for the existence of these scripts.

EXIT CODES

      The exit codes have the following conditions:
 
             0    Service was successfully installed or removed
 
             1    Service was not installed or removed

NOTE

      Please be aware that the following patterns of boot script file names will be not accepted by insserv:
 
               *.local
               *.rpm*
               *.ba*
               *.old
               *.new
               *.org
               *.orig
               *.save
               *.swp
               *.core
               *~
 
      with  the wildcard character *.  Beside this all boot script file names beginning with one of the following char-
      acters
 
               $.#%_+-\*[]^:()~
 
      will be ignored.

BUGS

      Boot script sometimes misses comments.

FILES

      /etc/insserv.conf
             configuration file for insserv which defines the LSB System Facilities.
 
      /etc/insserv.conf.d/
             directory for further configuration files for declaring LSB System Facilities.
 
      /etc/init.d/
             path to the SuSE boot script base directory as required by the Linux Standard Base Specification (LSB).
 
      /etc/init.d/.depend.boot,
      /etc/init.d/.depend.start,
      /etc/init.d/.depend.stop
             The make(1) like dependency files produced by insserv for booting, starting, and stopping with the help of
             startpar(8).

RELATED

      init.d(7), init(7), startproc(8), checkproc(8), killproc(8), startpar(8).

COPYRIGHT

      2000-2003 Werner Fink, 2000-2003 SuSE GmbH Nuernberg, Germany.

CATEGORY

Personal tools