Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ inittab(4) — DG/UX 4.00

Media Vault

Software Library

Restoration Projects

Artifacts Sought



                                                               inittab(4)



        _________________________________________________________________
        inittab                                               File Format
        script for the init process
        _________________________________________________________________


        DESCRIPTION

        The inittab file contains the instructions used by the init(1M)
        program which is the general process dispatcher in the DG/UX
        system.  Most of init's process dispatching is for the line
        process /etc/getty, which initiates individual terminal lines.
        Other processes typically invoked by init are daemons and the
        shell.

        The inittab file is composed of entries with the following
        format:

             id:level:action:process

        Each entry is delimited by a New Line, however, a backslash (\)
        preceding a New Line indicates a continuation of the entry.  Up
        to 512 characters per entry are permitted.  You can insert
        comments in the process field using the sh(1) convention for
        comments.  Comments for lines that spawn getty(1M) processes are
        displayed by the who(1) command.  Comments should contain some
        information about the line, such as its location.  Maximum entry
        size is the only limit imposed on the number of entries within
        the inittab file.

        The entry fields are:

        id   One to four characters used to uniquely identify an entry.
             For tty lines, the entry must begin with the number of the
             given tty line, such as 04::respawn:/etc/getty tty04 9600.

        level
             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.  For
             example, if the system is in run level 1, only those entries
             having a 1 in the level field are processed. When init(1M)
             is requested to change run levels, all processes without an
             entry in the level field for the target run level will be
             sent the warning signal (SIGTERM).  They are given a 20-
             second grace period before being forcibly terminated by a
             kill signal (SIGKILL).  The level field can define multiple
             run levels for a process by selecting more than one run



        DG/UX 4.00                                                 Page 1
               Licensed material--property of copyright holder(s)





                                                               inittab(4)



             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.

             Three other values, a, b, and c, can appear in the level
             field, even though they are not true run levels .  Entries
             with these characters in the level 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(1M) 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(1M) 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(1M) goes into the single-user state.

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

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

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

                  once          When init(1M) enters a run level that
                                matches the entry's level, start the
                                process. Do not wait for its termination.
                                When it dies, do not restart the process.
                                Upon entering a new run level, if 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 when
                                init(1M) reads inittab at boot time.
                                Init starts the process and does not wait
                                for its termination.  When the process



        DG/UX 4.00                                                 Page 2
               Licensed material--property of copyright holder(s)





                                                               inittab(4)



                                dies, init does not restart it.  The
                                level must be the default or match init's
                                run level at boot time.  This action is
                                useful for an initialization function
                                following a hardware reboot of the
                                system.

                  bootwait      Process the entry only when init reads
                                inittab at boot time.  Init starts the
                                process, waits for its termination and,
                                when it dies, does not restart the
                                process.

                  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      A synonym for the respawn action.  It is
                                given a different keyword to break its
                                association with run levels.  Ondemand is
                                used only with the a, b, or c values
                                described in the level field.

                  initdefault   An entry with this action is only scanned
                                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 level
                                field and using that as its initial
                                state. If the level field is empty, this
                                is interpreted as 0123456 and init will
                                enter run level 6.  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.  This
                                entry should only be 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 keyword is a sh(1) command to be executed.  The
                  entire process field is prefixed with exec and passed
                  to a forked sh(1) as sh -c 'exec command'.  For this



        DG/UX 4.00                                                 Page 3
               Licensed material--property of copyright holder(s)





                                                               inittab(4)



                  reason, any legal sh(1) 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), initrc(1M), sh(1), who(1)
        Installing and Managing the DG/UX System







































        DG/UX 4.00                                                 Page 4
               Licensed material--property of copyright holder(s)



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