Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ () — Motorola System V 88k Release 3.2 Version 1.2C

Media Vault

Software Library

Restoration Projects

Artifacts Sought



  INITTAB(4)                                             INITTAB(4)



  NAME
       inittab - script for the init process

  DESCRIPTION
       The inittab file supplies the script to init's role as a
       general process dispatcher. The process that constitutes the
       majority of init's process dispatching activities is the
       line process /etc/getty that initiates individual terminal
       lines.  Other processes typically dispatched by init are
       daemons and the shell.

       The inittab file is composed of entries that are position
       dependent and have the following format:

            id:rstate:action:process

       Each entry is delimited by a newline, however, a backslash
       (\) preceding a newline indicates a continuation of the
       entry.  Up to 512 characters per entry are permitted.
       Comments may be inserted in the process field using the
       sh(1) convention for comments.  Comments for lines that
       spawn gettys are displayed by the who(1) command.  It is
       expected that they will contain some information about the
       line such as the location.  There are no limits (other than
       maximum entry size) imposed on the number of entries within
       the inittab file.  The entry fields are:

       id        This is one or two characters used to uniquely
                 identify an entry.

       rstate    This defines the run-level in which this entry is
                 to be processed. Run-levels effectively correspond
                 to a configuration of processes in the system.
                 That is, each process spawned by init is assigned
                 a run-level or run-levels in which it is allowed
                 to exist.  The run-levels are represented by a
                 number ranging from 0 through 6.  As an example,
                 if the system is in run-level 1, only those
                 entries having a 1 in the rstate field will be
                 processed. When init is requested to change run-


  Page 1                                                   May 1989


















  INITTAB(4)                                             INITTAB(4)



                 levels, all processes which do not have an entry
                 in the rstate field for the target run-level will
                 be sent the warning signal (SIGTERM) and allowed a
                 20-second grace period before being forcibly
                 terminated by a kill signal (SIGKILL).  The rstate
                 field can define multiple run-levels for a process
                 by selecting more than one run-level in any
                 combination from 0-6.  If no run-level is
                 specified, then the process is assumed to be valid
                 at all run-levels 0-6.  There are three other
                 values, a, b and c, which can appear in the rstate
                 field, even though they are not true run-levels.
                 Entries which have these characters in the rstate
                 field are processed only when the telinit [see
                 init(1M)] process requests them to be run
                 (regardless of the current run-level of the
                 system).  They differ from run-levels in that init
                 can never enter run-level a, b or c.  Also, a
                 request for the execution of any of these
                 processes does not change the current run-level.
                 Furthermore, a process started by an a, b or c
                 command is not killed when init changes levels.
                 They are only killed if their line in /etc/inittab
                 is marked off in the action field, their line is
                 deleted entirely from /etc/inittab, or init goes
                 into the SINGLE USER state.

       action    Key words in this field tell init how to treat the
                 process specified in the process field.  The
                 actions recognized by init are as follows:

                 respawn       If the process does not exist then
                               start the process, do not wait for
                               its termination (continue scanning
                               the inittab file), and when it dies
                               restart the process.  If the process
                               currently exists then do nothing and
                               continue scanning the inittab file.

                 wait          Upon init's entering the run-level


  Page 2                                                   May 1989


















  INITTAB(4)                                             INITTAB(4)



                               that matches the entry's rstate,
                               start the process and wait for its
                               termination.  All subsequent reads
                               of the inittab file while init is in
                               the same run-level will cause init
                               to ignore this entry.

                 once          Upon init's entering a run-level
                               that matches the entry's rstate,
                               start the process, do not wait for
                               its termination.  When it dies, do
                               not restart the process.  If upon
                               entering a new run-level, where the
                               process is still running from a
                               previous run-level change, the
                               program will not be restarted.

                 boot          The entry is to be processed only at
                               init's boot-time read of the inittab
                               file. Init is to start the process,
                               not wait for its termination; and
                               when it dies, not restart the
                               process.  In order for this
                               instruction to be meaningful, the
                               rstate should be the default or it
                               must match init's run-level at boot
                               time.  This action is useful for an
                               initialization function following a
                               hardware reboot of the system.

                 bootwait      The entry is to be processed the
                               first time init goes from single-
                               user to multi-user state after the
                               system is booted.  (If initdefault
                               is set to 2, the process will run
                               right after the boot.)  Init starts
                               the process, waits for its
                               termination and, when it dies, does
                               not restart the process.



  Page 3                                                   May 1989


















  INITTAB(4)                                             INITTAB(4)



                 powerfail     Execute the process associated with
                               this entry only when init receives a
                               power fail signal [SIGPWR see
                               signal(2)].

                 powerwait     Execute the process associated with
                               this entry only when init receives a
                               power fail signal (SIGPWR) and wait
                               until it terminates before
                               continuing any processing of
                               inittab.

                 off           If the process associated with this
                               entry is currently running, send the
                               warning signal (SIGTERM) and wait 20
                               seconds before forcibly terminating
                               the process via the kill signal
                               (SIGKILL).  If the process is
                               nonexistent, ignore the entry.

                 ondemand      This instruction is really a synonym
                               for the respawn action.  It is
                               functionally identical to respawn
                               but is given a different keyword in
                               order to divorce its association
                               with run-levels.  This is used only
                               with the a, b or c values described
                               in the rstate field.

                 initdefault   An entry with this action is only
                               scanned when init initially invoked.
                               Init uses this entry, if it exists,
                               to determine which run-level to
                               enter initially.  It does this by
                               taking the highest run-level
                               specified in the rstate field and
                               using that as its initial state. If
                               the rstate field is empty, this is
                               interpreted as 0123456 and so init
                               will enter run-level 6.


  Page 4                                                   May 1989


















  INITTAB(4)                                             INITTAB(4)



                               Additionally, if init does not find
                               an initdefault entry in
                               /etc/inittab, then it will request
                               an initial run-level from the user
                               at reboot time.

                 sysinit       Entries of this type are executed
                               before init tries to access the
                               console (i.e., before the Console
                               Login: prompt).  It is expected that
                               this entry will be only used to
                               initialize devices on which init
                               might try to ask the run-level
                               question.  These entries are
                               executed and waited for before
                               continuing.

       process   This is a sh command to be executed.  The entire
                 process field is prefixed with exec and passed to
                 a forked sh as sh -c 'exec command'.  For this
                 reason, any legal sh syntax can appear in the
                 process field.  Comments can be inserted with the
                 ; #comment syntax.

  FILES
       /etc/inittab

  SEE ALSO
       exec(2), open(2), signal(2).
       getty(1M), init(1M) in the System Administrator's Reference
       Manual.
       sh(1), who(1) in the User's Reference Manual.










  Page 5                                                   May 1989
















Typewritten Software • bear@typewritten.org • Edmonds, WA 98026