FINIT(8) | System Manager's Manual (smm) | FINIT(8) |
finit
—
/sbin/finit |
[ -- ] [debug ]
[finit.cond=foo[,bar[,baz]] ]
[finit.config=/path/to/alt/finit.conf ]
[finit.debug ]
[finit.fstab=/etc/fstab.alt ]
[finit.status=<on,off> ]
[finit.status_style=<classic,modern> ]
[loglevel=<0-7> ]
[panic=SEC ] [quiet ]
[rescue | recover ] [single |
S ] |
/sbin/telinit |
[-hv q | Q | 0-9 ] |
sd_notify()
and s6 notification is also
supported.finit
support the following command line
parameters to alter the behavior at boot. Notice the
--
separator needed to tell the kernel
which paramters should be given to PID 1. For more information on this, and
available kernel command line options, see
bootparam(7).
debug
loglevel=7
(below) is
used.finit.cond=foo[,bar[,baz]]
<boot/foo>
condition,
optionally multiple conditions can be set using the same option, separated
with a comma. Alternatively, multiple
foo.cond=arg
can be given. Each will
result in a <boot/arg>
condition
being set to control the rest of the system bootstrap.
Very useful for selecting different boot modes, e.g. manufacturing test,
firmware upgrade, or rescue mode.
Note:
<boot/...>
conditions cannot be
cleared with initctl
!finit.config=/path/to/alternative/finit.conf
rcsd
/path/to/finit.d to override the default
rcS.d directory.finit.debug
finit.fstab=/path/to/fstab.alt
finit
to use an alternate
fstab
to mount the file system from.
Remember, this file must be on the
root=...
file system provided to Finit
from the kernel. If this file is missing,
finit
falls back to its built-in
default, which can be changed at build time using the
--with-fstab=/path/to/footab
configure
option. It is even possible to completely disable the built-in using
--without-fstab
, meaning
finit
must
be started with the finit.fstab
option.
Should finit
discover that there is no
fstab file available, including the fallback, it triggers the same failure
mode as when fsck
fails, starting
sulogin(8), if
that is availble. When sulogin
is
missing, or when the user exits from
sulogin
, the system is rebooted.
Default fstab, unless changed at build-time:
/etc/fstabfinit.status=<on,off>
finit.show_status
, which still works
but is deprecated.finit.status_style=<classic,modern>
loglevel=<0-7>
debug
. Also, when
loglevel=7
, Finit will
not disable kernel logs to the console. This
is very useful when debugging the kernel at system bring-up. Since
loglevel=7
is the same as
debug
this means you have to use
quiet
for a quiet boot, until sysklogd
takes over logging of kernel events.panic=SEC
quiet
loglevel
and
quiet
above.rescue
|
recover
sulogin
program (Finit, or from
util-linux/Busybox), you will be given a root login to a maintenance
shell. However, if sulogin
is missing,
the file /lib/finit/rescue.conf is read
and the system booted in a limited fallback mode. See
finit.conf(5)
for more information.single
|
S
[1]
will be started, e.g., a
tty [1] @console nologin
configuration
presents you with a root console without login.
Note: by definition, single user mode does not
have networking enabled. This is also true for runlevel 1.finit.fstab
, ensuring that
necessary filesystems like: /dev,
/proc,
/sys, and
/run are available and can provide the
system with the services required.
With that out of the way, a set of plugins take over:
bootmisc.so
modprobe.so
procps.so
net
pid
name:id
, gives the condition
pid/name:idservice
service/foo/ready
can be used as a
condition for service bar
, provided
foo
properly signals its readiness to
Finit.sys
usr
initctl cond [set|clr] foo
finit
to reload its configuration
file(s), same as initctl reload
initctl
) socket.finit
to perform a system
shutdown, same as initctl poweroff
initctl reboot
finit
was conceived and reverse engineered by
Claudio Matsuoka. Since v1.0, maintained by Joachim Wiberg, with contributions
by many others.April 22, 2023 | Linux |