Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ inittab(4) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

who(1)

init(1M)

ttymon(1M)

exec(2)

open(2)

signal(2)

inittab(4)                                                       inittab(4)

NAME
     inittab - script for init

DESCRIPTION
     The file /etc/inittab controls process dispatching by init. The
     processes most typically dispatched by init are daemons.

     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 (\) preced-
     ing a newline indicates a continuation of the entry. Up to 512 charac-
     ters per entry are permitted. Comments may be inserted in the process
     field using the # character.

     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 pro-
               cessed. 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 are processed. When init is requested to change run
               levels, all processes that do not have an entry in the
               rstate field for the target run level are sent the warning
               signal SIGTERM and allowed a 5-second grace period before
               being forcibly terminated by the 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
               through 6. If no run level is specified, then the process is
               assumed to be valid at all run levels 0 through 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 an init or telinit process requests them
               to be run (regardless of the current run level of the sys-
               tem), [see init(1M)]. 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 killed only if their line in inittab is marked off
               in the action field, their line is deleted entirely from
               inittab, or init goes into singleuser state.




Page 1                       Reliant UNIX 5.44                Printed 11/98

inittab(4)                                                       inittab(4)

     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 (con-
                           tinue scanning the inittab file), and when the
                           process dies, restart the process. If the pro-
                           cess currently exists, do nothing and continue
                           scanning the inittab file.

               wait        When init enters the run level 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
                           cause init to ignore this entry.

               once        When init enters a run level that matches the
                           entry's rstate, start the process, do not wait
                           for its termination. When it dies, do not res-
                           tart the process. If init enters a new run level
                           and the process is still running from a previous
                           run level change, the program is not 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 singleuser to multiuser state after
                           the system is booted. (If initdefault is set to
                           2, the process runs right after the boot.) init
                           starts the process, waits for its termination
                           and, when it dies, does not restart the process.

               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 con-
                           tinuing any processing of inittab.





Page 2                       Reliant UNIX 5.44                Printed 11/98

inittab(4)                                                       inittab(4)

               off         If the process associated with this entry is
                           currently running, send the warning signal
                           SIGTERM and wait 5 seconds before forcibly ter-
                           minating the process with 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 lev-
                           els. This instruction is used only with the a, b
                           or c values described in the rstate field.

               initdefault An entry with this action is scanned only when
                           init is 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 init therefore enters run level 0.
                           This will cause the system to stop. Addition-
                           ally, if init does not find an initdefault entry
                           in inittab, it requests 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 ques-
                           tion. These entries are executed and waited for
                           before continuing.

     process   This is a 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.

               Comment can be appended to the process entry and is intro-
               duced with #.

               A maximum of 2,500 processes can be entered.

SEE ALSO
     who(1), init(1M), ttymon(1M), exec(2), open(2), signal(2).







Page 3                       Reliant UNIX 5.44                Printed 11/98

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