Commit | Line | Data |
---|---|---|
800ffe89 NW |
1 | This is a new version of /sbin/init, with many features: |
2 | already implemented and working: | |
3 | o modular design (separate function for each state) | |
4 | o error logging via syslog() | |
5 | o extensive debugging facilities (compile time option) | |
6 | o detection of failing getty processes (exit status and runtime) | |
7 | o if a getty process is failing repeatedly, retry it after | |
8 | configurable time intervals. | |
9 | o recovery from non-fatal errors such as out of memory or | |
10 | fork failed. | |
11 | o a manual page | |
12 | o most parameters can be changed from a configuration file (default | |
13 | startup state, retry time etc) | |
14 | o some system parameters can also be set from the configuration file | |
15 | (default process limits, initial environment variables) | |
16 | o fully compatible with old init (if config file does not exist) | |
17 | planned but not yet implemented: | |
18 | o redirecting error messages to stderr instead of syslog if init | |
19 | is executed by the user (Syntaxcheck) | |
20 | o support for ty_window (for window systems) | |
21 | o maybe sometime support for /etc/inittab | |
22 | ||
b2e86651 NW |
23 | What you can define (Add "CFLAGS += -D..." to the Makefile): |
24 | -DDEBUG enables debugging facilities: | |
25 | you can increment debug level with debug keyword in | |
26 | config file, -d option, or by sending SIGUSR1 to init. | |
27 | SIGUSR2 sets debug level to 0. | |
28 | -DUNTRUSTED debugging code: on SIGINT it execs /sbin/init.ori | |
29 | (do this only in singleuser mode !) | |
30 | -DCONFIGURE on startup (and when requested), read /etc/init.conf | |
31 | and set parameters in it. | |
32 | -DFAKE_SYSLOG do not use syslog, but write to /dev/console. | |
33 | This makes it MUCH smaller ! | |
34 | -DSMALL do not use perror, but write error codes. | |
35 | Makes it even smaller, but requires -DFAKE_SYSLOG. | |
36 | For the floppy version, compile this with -DFAKE_SYSLOG -DSMALL. If compiled | |
37 | with gcc1, it is not bigger than the original init (20k). | |
38 | ||
39 | If you want to use CONFIGURE, you also have to copy init.conf to /etc . | |
40 | ||
800ffe89 NW |
41 | I'm interested in any feedback you have ! |
42 | ||
43 | Christoph Robitschko | |
44 | chmr@edvz.tu-graz.ac.at |