1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
|
#
# For a description of the syntax of this configuration file,
# see scripts/kbuild/config-language.txt.
#
comment "-------------------------------------------------"
comment "Init Utilities"
comment "-------------------------------------------------"
config KEMBTK_BUSYB_BOOTCHARTD
bool "bootchartd"
default y
help
bootchartd is commonly used to profile the boot process
for the purpose of speeding it up. In this case, it is started
by the kernel as the init process. This is configured by adding
the init=/sbin/bootchartd option to the kernel command line.
It can also be used to monitor the resource usage of a specific
application or the running system in general. In this case,
bootchartd is started interactively by running bootchartd start
and stopped using bootchartd stop.
config KEMBTK_BUSYB_FEATURE_BOOTCHARTD_BLOATED_HEADER
bool "Compatible, bloated header"
default y
depends on KEMBTK_BUSYB_BOOTCHARTD
help
Create extended header file compatible with "big" bootchartd.
"Big" bootchartd is a shell script and it dumps some
"convenient" info int the header, such as:
title = Boot chart for `hostname` (`date`)
system.uname = `uname -srvm`
system.release = `cat /etc/DISTRO-release`
system.cpu = `grep '^model name' /proc/cpuinfo | head -1` ($cpucount)
system.kernel.options = `cat /proc/cmdline`
This data is not mandatory for bootchart graph generation,
and is considered bloat. Nevertheless, this option
makes bootchartd applet to dump a subset of it.
config KEMBTK_BUSYB_FEATURE_BOOTCHARTD_CONFIG_FILE
bool "Support bootchartd.conf"
default y
depends on KEMBTK_BUSYB_BOOTCHARTD
help
Enable reading and parsing of $PWD/bootchartd.conf
and /etc/bootchartd.conf files.
config KEMBTK_BUSYB_HALT
bool "poweroff, halt, and reboot"
default y
help
Stop all processes and either halt, reboot, or power off the system.
config KEMBTK_BUSYB_FEATURE_CALL_TELINIT
bool "Call telinit on shutdown and reboot"
default y
depends on KEMBTK_BUSYB_HALT && !KEMBTK_BUSYB_INIT
help
Call an external program (normally telinit) to facilitate
a switch to a proper runlevel.
This option is only available if you selected halt and friends,
but did not select init.
config KEMBTK_BUSYB_TELINIT_PATH
string "Path to telinit executable"
default "/sbin/telinit"
depends on KEMBTK_BUSYB_FEATURE_CALL_TELINIT
help
When busybox halt and friends have to call external telinit
to facilitate proper shutdown, this path is to be used when
locating telinit executable.
config KEMBTK_BUSYB_INIT
bool "init"
default y
select KEMBTK_BUSYB_FEATURE_SYSLOG
help
init is the first program run when the system boots.
config KEMBTK_BUSYB_FEATURE_USE_INITTAB
bool "Support reading an inittab file"
default y
depends on KEMBTK_BUSYB_INIT
help
Allow init to read an inittab file when the system boot.
config KEMBTK_BUSYB_FEATURE_KILL_REMOVED
bool "Support killing processes that have been removed from inittab"
depends on KEMBTK_BUSYB_FEATURE_USE_INITTAB
help
When respawn entries are removed from inittab and a SIGHUP is
sent to init, this option will make init kill the processes
that have been removed.
config KEMBTK_BUSYB_FEATURE_KILL_DELAY
int "How long to wait between TERM and KEMBTK_BUSYB_KILL (0 - send TERM only)" if KEMBTK_BUSYB_FEATURE_KILL_REMOVED
range 0 1024
default 0
depends on KEMBTK_BUSYB_FEATURE_KILL_REMOVED
help
With nonzero setting, init sends TERM, forks, child waits N
seconds, sends KEMBTK_BUSYB_KILL and exits. Setting it too high is unwise
(child will hang around for too long and could actually kill
the wrong process!)
config KEMBTK_BUSYB_FEATURE_INIT_SCTTY
bool "Run commands with leading dash with controlling tty"
default y
depends on KEMBTK_BUSYB_INIT
help
If this option is enabled, init will try to give a controlling
tty to any command which has leading hyphen (often it's "-/bin/sh").
More precisely, init will do "ioctl(STDIN_FILENO, TIOCSCTTY, 0)".
If device attached to STDIN_FILENO can be a ctty but is not yet
a ctty for other session, it will become this process' ctty.
This is not the traditional init behavour, but is often what you want
in an embedded system where the console is only accessed during
development or for maintenance.
NB: using cttyhack applet may work better.
config KEMBTK_BUSYB_FEATURE_INIT_SYSLOG
bool "Enable init to write to syslog"
default y
depends on KEMBTK_BUSYB_INIT
config KEMBTK_BUSYB_FEATURE_EXTRA_QUIET
bool "Be _extra_ quiet on boot"
default y
depends on KEMBTK_BUSYB_INIT
help
Prevent init from logging some messages to the console during boot.
config KEMBTK_BUSYB_FEATURE_INIT_COREDUMPS
bool "Support dumping core for child processes (debugging only)"
default y
depends on KEMBTK_BUSYB_INIT
help
If this option is enabled and the file /.init_enable_core
exists, then init will call setrlimit() to allow unlimited
core file sizes. If this option is disabled, processes
will not generate any core files.
config KEMBTK_BUSYB_FEATURE_INITRD
bool "Support running init from within an initrd (not initramfs)"
default y
depends on KEMBTK_BUSYB_INIT
help
Legacy support for running init under the old-style initrd. Allows
the name linuxrc to act as init, and it doesn't assume init is PID 1.
This does not apply to initramfs, which runs /init as PID 1 and
requires no special support.
config KEMBTK_BUSYB_INIT_TERMINAL_TYPE
string "Initial terminal type"
default "linux"
depends on KEMBTK_BUSYB_INIT
help
This is the initial value set by init for the TERM environment
variable. This variable is used by programs which make use of
extended terminal capabilities.
Note that on Linux, init attempts to detect serial terminal and
sets TERM to "vt102" if one is found.
config KEMBTK_BUSYB_MESG
bool "mesg"
default y
help
Mesg controls access to your terminal by others. It is typically
used to allow or disallow other users to write to your terminal
config KEMBTK_BUSYB_FEATURE_MESG_ENABLE_ONLY_GROUP
bool "Enable writing to tty only by group, not by everybody"
default y
depends on KEMBTK_BUSYB_MESG
help
Usually, ttys are owned by group "tty", and "write" tool is
setgid to this group. This way, "mesg y" only needs to enable
"write by owning group" bit in tty mode.
If you set this option to N, "mesg y" will enable writing
by anybody at all. This is not recommended.
|