Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


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

NAME
     service - run or list system services

SYNOPSIS
     service [-elv]
     service [-ev] rc_script_name [rc_script_name ...]
     service [-v] rc_script_name action

DESCRIPTION
     The service command is a simple interface to the services startup system.

     Its purpose is to list the services or invoke actions on them as provided
     by the rc.d(8) scripts.  When used to invoke rc.d scripts, service will
     set the same environment that is used at boot time.

     The options are as follows:

     -e          List services that are enabled.  The list of scripts is
                 compiled using rcorder(8) the same way as is done in rc(8);
                 each script is first checked for an rcvar assignment and if
                 present, checked to see if it is enabled.  If one or more
                 rc_script_name are specified, only those are checked.  The
                 rc_script_name arguments are always specified without a path
                 prefix.

     -l          List all files in /etc/rc.d (the default of rc_directories as
                 defined in rc.conf(5)).  A script will be listed unless it
                 has the nostart keyword enabled.  Scripts are listed in the
                 order the rc.d system runs them at system boot time.

     -v          Report what rc_directories are defined or in which directory
                 the rc.d script was found when an action is invoked.

     The -e and -l options are mutually exclusive.  Only one of those may be
     used.

ENVIRONMENT
     When used to invoke rc.d scripts, the service command sets umask(2) to
     022, HOME to /, and PATH to /sbin:/bin:/usr/sbin:/usr/bin which is how
     they are set in /etc/rc at boot time.  The action is typically one of
     start, restart, or status, but can be any other argument supported by the
     rc_script_name.

EXIT STATUS
     service exits with status 0 when successful, status 1 when -e was given
     and no enabled script was found, or when an action is to be performed,
     but the rc_script_name given does not exist, or status >1 if another
     error occurs.

EXAMPLES
     These are typical usages of the service command:

     # service sshd restart
     Stopping sshd.
     Starting sshd.

     $ service -v inetd status
     inetd is located in /etc/rc.d
     inetd is running as pid 1713.

     $ if service -e inetd >/dev/null; then echo inetd is enabled; fi
     inetd is enabled

     $ if service -e foobar >/dev/null; then echo foobar is enabled; fi

     $ service -ve ccd motd hostapd my_pkg
     rc_directories is /etc/rc.d /usr/pkg/etc/rc.d
     /etc/rc.d/ccd
     /usr/pkg/etc/rc.d/my_pkg
     /etc/rc.d/motd

     In the last example, hostapd(8) was apparently left disabled and the
     additional directory /usr/pkg/etc/rc.d was configured by redefining the
     variable rc_directories in rc.conf; further, my_pkg=yes must have also
     been set.

SEE ALSO
     rc.conf(5), rc(8), rcorder(8)

HISTORY
     The service utility first appeared in NetBSD 7.0.

AUTHORS
     Written for FreeBSD by Douglas Barton <dougb@FreeBSD.org>.

     Adapted and extended to NetBSD by Adrian Steinmann <ast@marabu.ch>.

NetBSD 10.99                    March 12, 2023                    NetBSD 10.99