Scroll to navigation

SERVICE(8) System Manager's Manual SERVICE(8)

NAME

service - run a System V init script

SYNOPSIS

service SCRIPT COMMAND [OPTIONS]

service --status-all

service --help | -h | --version

DESCRIPTION

service runs a System V init script, a systemd unit or a runit service in as predictable an environment as possible, removing most environment variables and with the current working directory set to /.

The SCRIPT parameter specifies a System V init script, located in /etc/init.d/SCRIPT, the name of a systemd unit or the name of a runit service. The existence of a systemd unit of the same name as a script in /etc/init.d will cause the unit to take precedence over the init.d script; the existence of a runit service enabled in /etc/service will cause the service to take precedence over the init.d script. The supported values of COMMAND depend on the invoked script. service passes COMMAND and OPTIONS to the init script unmodified. For systemd units, start, stop, status, and reload are passed through to their systemctl/initctl equivalents. For runit services, COMMAND is passed through sv; when sv does not understand the COMMAND it prints usage and exit with error.

All scripts should support at least the start and stop commands. As a special case, if COMMAND is --full-restart, the script is run twice, first with the stop command, then with the start command. Note, that unlike update-rc.d(8), service does not check /usr/sbin/policy-rc.d.

service --status-all runs all init scripts, in alphabetical order, with the status command. The status is [ + ] for running services, [ - ] for stopped services and [ ? ] for services without a status command. Under runit init, first all native runit services are checked and then the status of init.d scripts for which no runit equivalent is found is printed. This option does not consider systemd units.

EXIT CODES

service calls the init script and returns the status returned by it.

FILES

/etc/init.d
The directory containing System V init scripts.
/{lib,run,etc}/systemd/system
The directories containing systemd units.
/usr/share/runit/sv.current, /etc/sv
The directories containing runit services.

ENVIRONMENT


SEE ALSO

/etc/init.d/skeleton
update-rc.d(8)
init(8)
invoke-rc.d(8)
systemctl(1)
update-service(8)
sv(8)

AUTHOR

Miloslav Trmac <mitr@redhat.com>, Petter Reinholdtsen <pere@hungry.com>

License: GNU General Public License v2 (GPLv2)

COPYRIGHT

2006 Red Hat, Inc., Petter Reinholdtsen <pere@hungry.com>

Jan 2006