Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 1 | # /etc/inittab init(8) configuration for BusyBox |
| 2 | # |
Eric Andersen | c7bda1c | 2004-03-15 08:29:22 +0000 | [diff] [blame] | 3 | # Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org> |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 4 | # |
| 5 | # |
| 6 | # Note, BusyBox init doesn't support runlevels. The runlevels field is |
| 7 | # completely ignored by BusyBox init. If you want runlevels, use sysvinit. |
| 8 | # |
| 9 | # |
| 10 | # Format for each entry: <id>:<runlevels>:<action>:<process> |
| 11 | # |
| 12 | # <id>: WARNING: This field has a non-traditional meaning for BusyBox init! |
| 13 | # |
| 14 | # The id field is used by BusyBox init to specify the controlling tty for |
| 15 | # the specified process to run on. The contents of this field are |
| 16 | # appended to "/dev/" and used as-is. There is no need for this field to |
| 17 | # be unique, although if it isn't you may have strange results. If this |
Denys Vlasenko | 2c0508b | 2013-03-29 14:35:44 +0100 | [diff] [blame] | 18 | # field is left blank, then the init's stdin/out will be used. |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 19 | # |
| 20 | # <runlevels>: The runlevels field is completely ignored. |
| 21 | # |
Eric Andersen | c7bda1c | 2004-03-15 08:29:22 +0000 | [diff] [blame] | 22 | # <action>: Valid actions include: sysinit, respawn, askfirst, wait, once, |
Eric Andersen | 730f826 | 2001-12-17 23:13:08 +0000 | [diff] [blame] | 23 | # restart, ctrlaltdel, and shutdown. |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 24 | # |
| 25 | # Note: askfirst acts just like respawn, but before running the specified |
| 26 | # process it displays the line "Please press Enter to activate this |
| 27 | # console." and then waits for the user to press enter before starting |
| 28 | # the specified process. |
| 29 | # |
Denys Vlasenko | b22bbff | 2009-07-04 16:50:43 +0200 | [diff] [blame] | 30 | # Note: unrecognized actions (like initdefault) will cause init to emit |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 31 | # an error message, and then go along with its business. |
| 32 | # |
| 33 | # <process>: Specifies the process to be executed and it's command line. |
| 34 | # |
Eric Andersen | 3555fd0 | 2001-07-30 19:28:33 +0000 | [diff] [blame] | 35 | # Note: BusyBox init works just fine without an inittab. If no inittab is |
| 36 | # found, it has the following default behavior: |
| 37 | # ::sysinit:/etc/init.d/rcS |
| 38 | # ::askfirst:/bin/sh |
| 39 | # ::ctrlaltdel:/sbin/reboot |
| 40 | # ::shutdown:/sbin/swapoff -a |
| 41 | # ::shutdown:/bin/umount -a -r |
Eric Andersen | 730f826 | 2001-12-17 23:13:08 +0000 | [diff] [blame] | 42 | # ::restart:/sbin/init |
Eric Andersen | 3555fd0 | 2001-07-30 19:28:33 +0000 | [diff] [blame] | 43 | # tty2::askfirst:/bin/sh |
| 44 | # tty3::askfirst:/bin/sh |
| 45 | # tty4::askfirst:/bin/sh |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 46 | # |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 47 | # Boot-time system configuration/initialization script. |
| 48 | # This is run first except when booting in single-user mode. |
| 49 | # |
| 50 | ::sysinit:/etc/init.d/rcS |
| 51 | |
| 52 | # /bin/sh invocations on selected ttys |
| 53 | # |
Eric Andersen | 7e3bf6e | 2000-09-14 22:01:31 +0000 | [diff] [blame] | 54 | # Note below that we prefix the shell commands with a "-" to indicate to the |
| 55 | # shell that it is supposed to be a login shell. Normally this is handled by |
| 56 | # login, but since we are bypassing login in this case, BusyBox lets you do |
| 57 | # this yourself... |
| 58 | # |
Eric Andersen | 3555fd0 | 2001-07-30 19:28:33 +0000 | [diff] [blame] | 59 | # Start an "askfirst" shell on the console (whatever that may be) |
Eric Andersen | 7e3bf6e | 2000-09-14 22:01:31 +0000 | [diff] [blame] | 60 | ::askfirst:-/bin/sh |
Eric Andersen | 7e3bf6e | 2000-09-14 22:01:31 +0000 | [diff] [blame] | 61 | # Start an "askfirst" shell on /dev/tty2-4 |
| 62 | tty2::askfirst:-/bin/sh |
| 63 | tty3::askfirst:-/bin/sh |
| 64 | tty4::askfirst:-/bin/sh |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 65 | |
| 66 | # /sbin/getty invocations for selected ttys |
Eric Andersen | 3555fd0 | 2001-07-30 19:28:33 +0000 | [diff] [blame] | 67 | tty4::respawn:/sbin/getty 38400 tty5 |
| 68 | tty5::respawn:/sbin/getty 38400 tty6 |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 69 | |
| 70 | # Example of how to put a getty on a serial line (for a terminal) |
Eric Andersen | 3555fd0 | 2001-07-30 19:28:33 +0000 | [diff] [blame] | 71 | #::respawn:/sbin/getty -L ttyS0 9600 vt100 |
| 72 | #::respawn:/sbin/getty -L ttyS1 9600 vt100 |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 73 | # |
| 74 | # Example how to put a getty on a modem line. |
Eric Andersen | 3555fd0 | 2001-07-30 19:28:33 +0000 | [diff] [blame] | 75 | #::respawn:/sbin/getty 57600 ttyS2 |
Erik Andersen | 3695052 | 2000-01-06 01:16:59 +0000 | [diff] [blame] | 76 | |
Eric Andersen | 730f826 | 2001-12-17 23:13:08 +0000 | [diff] [blame] | 77 | # Stuff to do when restarting the init process |
| 78 | ::restart:/sbin/init |
| 79 | |
Erik Andersen | d7ce5e78 | 2000-02-09 04:40:25 +0000 | [diff] [blame] | 80 | # Stuff to do before rebooting |
Eric Andersen | 3555fd0 | 2001-07-30 19:28:33 +0000 | [diff] [blame] | 81 | ::ctrlaltdel:/sbin/reboot |
| 82 | ::shutdown:/bin/umount -a -r |
| 83 | ::shutdown:/sbin/swapoff -a |