|update-service(8)||System Manager's Manual||update-service(8)|
NAME¶update-service - add/remove a service to/from system-wide service supervision
SYNOPSIS¶update-service --add|--remove service-directory [service-name ]
update-service --list|--check [service-name]
update-service --auto|--noauto service-directory
DESCRIPTION¶service-directory must be a directory to be used by runsv(8), service-name must not start with a dot, and must not contain a slash.
update-service adds or removes the service-directory to the system-wide service supervision provided through runit 's runsvdir(8), lists all registered system-wide services, or checks for a specific service-name whether it is registered.
When adding a service, and the service-directory resides in /etc/, update-service makes sure that the ./supervise/ subdirectories in the service-directory, and the optional service-directory/log/, are symbolic links pointing into /var/lib/supervise/, unless they already are symbolic links.
- --add | -a
- Add the service directory service-directory to the system-wide
service supervision, under the name service-name. If
service-name is not specified, update-service will use the
basename of service-directory. You can use the sv(8) program
to control the newly added service, or query its status, e.g.:
# sv status service-name
- --remove | -r
- Remove the service directory service-directory, which has been
added under the name service-name, from the system-wide service
supervision. If service-name is not specified,
update-service will use the basename of service-directory.
When removing the service-directory, the exit command is
sent to the corresponding runsv(8) process, telling it to take the
service down and exit afterwards. You can use the sv(8) program to
control the removed service, or query its status, e.g.:
# sv status service-directory
When the service directory service-directory is removed, the service service-name will be marked as disabled by creating a .service-name symlink. This will prevent tools like dh_runit(1) and runit-helper from auto-enabling service-name at install or upgrade of the package that ships service-directory. The .service-name symlink will be removed as the service-directory is added again to the system-wide service supervision or when the package that ships service-directory is purged.
- --list | -l
- If service-name is specified, update-service checks whether service-name is registered as system-wide service, prints a message and exits non-zero if not, or prints the service-name and the directory it points to and exits zero if yes. If service-name is not specified, it prints the names of all system-widely registered services, one per line.
- --check | -c
- The same as --list, but update-service doesn't print anything to standard out or standard error.
- --auto | -u
- Remove the down file, if any, from the directory service-directory. This way, the service represented by the service-directory will be started and monitored as soon as a runsv process is started for that directory; the requested status of the service will be 'up'. This is the default. If service-name is given, will be ignored as --auto directly act on the service-directory and thus only takes service-directory as argument.
- --noauto | -n
- Touch a down file into the service-directory. This way the service
represented by service-directory will not be automatically started
when a runsv process is started for that directory. The requested status
of the service will be 'down'. A service set to --noauto does not
start automatically at boot or when a runsvchdir(8) takes place,
but can still be started using the sv(8) program, e.g.:
# sv up service-name
If service-name is given, will be ignored as --noauto directly act on the service-directory and thus only takes service-directory as argument.
- The environment variable $SVDIR overrides the default services directory /etc/service/.