invoke-rc.d - executes System-V style init script actions
invoke-rc.d [--quiet] [--force] [--try-anyway] [--disclose-deny]
[--query] [--no-fallback] name action [initscript parameters...]
invoke-rc.d [--help]
invoke-rc.d is a generic interface to execute System V style init
script /etc/init.d/name actions, obeying runlevel constraints as well
as any local policies set by the system administrator.
All access to the init scripts by Debian packages' maintainer scripts
should be done through invoke-rc.d.
This manpage documents only the usage and behavior of invoke-rc.d. For
a discussion of the System V style init script arrangements please see
init(8) and the dpkg programmers' manual.
A far more detailed description of the invoke-rc.d interface and the
policy layer is available in the sysvinit package documentation.
The standard actions are: start, stop, force-stop, restart, reload,
force-reload, and status. Other actions are accepted, but they can
cause problems to policy-rc.d (see the INIT SCRIPT POLICY section), so
warnings are generated if the policy layer is active.
Please note that not all init scripts will implement all the actions
listed above, and that the policy layer may override an action to
another action(s), or even deny it.
Any extra init script parameters will be passed to the init script(s)
being executed.
If an action must be carried out regardless of any local policies, use
the --force switch.
--help Display usage help.
--quiet
Quiet mode, no error messages are generated.
--force
Tries to run the init script regardless of policy and init
script subsystem errors. Use of this option in Debian main-
tainer scripts is severely discouraged.
--try-anyway
Tries to run the init script if a non-fatal error is detected.
--disclose-deny
Return status code 101 instead of status code 0 if the init
script action is denied by the policy layer.
--query
Returns one of the status codes 100-106. Does not run the init
script, and implies --disclose-deny and --no-fallback.
--no-fallback
Ignores any fallback action requests by the policy layer. Warn-
ing: this is usually a very bad idea for any actions other than
start.
Should an init script be executed, invoke-rc.d always returns the status
code returned by the init script. Init scripts should not return
status codes in the 100+ range (which is reserved in Debian and by the
LSB). The status codes returned by invoke-rc.d proper are:
0 Success. Either the init script was run and returned exit status
0 (note that a fallback action may have been run instead of
the one given in the command line), or it was not run because of
runlevel/local policy constrains and --disclose-deny is not in
effect.
1 - 99 Reserved for init.d script, usually indicates a failure.
100 Init script ID (name) unknown. This means the init script was
not registered successfully through update-rc.d or that the init
script does not exist.
101 Action not allowed. The requested action will not be performed
because of runlevel or local policy constraints.
102 Subsystem error. Init script (or policy layer) subsystem malfunction.
Also, forced init script execution due to --try-anyway
or --force failed.
103 Syntax error.
104 Action allowed. Init script would be run, but --query is in
effect.
105 Behavior uncertain. It cannot be determined if action should be
carried out or not, and --query is in effect.
106 Fallback action requested. The policy layer denied the
requested action, and supplied an allowed fallback action to be
used instead.
invoke-rc.d introduces the concept of a policy layer which is used to
verify if an init script should be run or not, or if something else
should be done instead. This layer has various uses, the most immediate
ones being avoiding that package upgrades start daemons out-of-runlevel,
and that a package starts or stops daemons while inside a chroot
jail.
The policy layer has the following abilities: deny or approve the execution
of an action; request that another action (called a fallback) is
to be taken, instead of the action requested in invoke-rc.d's command
line; or request multiple actions to be tried in order, until one of
them succeeds (a multiple fallback).
invoke-rc.d itself will only pay attention to the current runlevel, and
block any tries to start an init script in a runlevel it is not configured
to be started at. Other policies are implemented with the use of
the policy-rc.d helper, and are only available if /usr/sbin/policy-rc.d
is installed in the system.
/etc/init.d/*
System V init scripts.
/usr/sbin/policy-rc.d
Init script policy layer helper (not required).
/etc/runlevel.conf
file-rc runlevel configuration (if the file-rc package is being
used).
/etc/rc?.d/*
System V runlevel configuration (if the file-rc package is not
being used).
Please report any bugs using the Debian bug tracking system,
http://bugs.debian.org/, packages file-rc or sysvinit (depending on
which version of invoke-rc.d you are using).
dpkg programmers manual,
/etc/init.d/skeleton,
update-rc.d(8),
init(8),
policy-rc.d(8).
Debian Project 1 March 2001 INVOKE-RC.D(8)
[ Back ] |