The service module for macOS
New in version 2016.3.0.
This module has support for services in the following locations.
/System/Library/LaunchDaemons/ /System/Library/LaunchAgents/ /Library/LaunchDaemons/ /Library/LaunchAgents/ # As of version "2019.2.0" support for user-specific services were added. /Users/foo/Library/LaunchAgents/
Note
As of the 2019.2.0 release, if a service is located in a LaunchAgent path and a runas user is NOT specified, the current console user will be used to properly interact with the service.
Check that the given service is available.
| Parameters: | name (str) -- The name of the service | 
|---|---|
| Returns: | True if the service is available, otherwise False | 
| Return type: | bool | 
CLI Example:
salt '*' service.available com.openssh.sshd
Disable a launchd service. Raises an error if the service fails to be disabled
| Parameters: | |
|---|---|
| Returns: | 
 
  |  
| Return type: | 
CLI Example:
salt '*' service.disable org.cups.cupsd
Check if the specified service is not enabled. This is the opposite of service.enabled
| Parameters: | |
|---|---|
| Returns: | 
 True if the specified service is NOT enabled, otherwise False  |  
| Return type: | 
CLI Example:
salt '*' service.disabled org.cups.cupsd
Enable a launchd service. Raises an error if the service fails to be enabled
| Parameters: | |
|---|---|
| Returns: | 
 
  |  
| Return type: | 
CLI Example:
salt '*' service.enable org.cups.cupsd
Check if the specified service is enabled
| Parameters: | |
|---|---|
| Returns: | 
 True if the specified service enabled, otherwise False  |  
| Return type: | 
CLI Example:
salt '*' service.enabled org.cups.cupsd
Return a list of services that are enabled or available. Can be used to find the name of a service.
| Parameters: | runas (str) -- User to run launchctl commands | 
|---|---|
| Returns: | A list of all the services available or enabled | 
| Return type: | list | 
CLI Example:
salt '*' service.get_all
Return a list of all services that are enabled. Can be used to find the name of a service.
| Parameters: | runas (str) -- User to run launchctl commands | 
|---|---|
| Returns: | A list of all the services enabled on the system | 
| Return type: | list | 
CLI Example:
salt '*' service.get_enabled
Run a launchctl command and raise an error if it fails
| Parameters: | |
|---|---|
| Returns: | 
 
  |  
| Return type: | 
CLI Example:
salt '*' service.launchctl debug org.cups.cupsd
Run launchctl list and return the output
| Parameters: | |
|---|---|
| Returns: | 
 If a name is passed returns information about the named service, otherwise returns a list of all services and pids  |  
| Return type: | 
CLI Example:
salt '*' service.list salt '*' service.list org.cups.cupsd
The inverse of service.available Check that the given service is not available.
| Parameters: | name (str) -- The name of the service | 
|---|---|
| Returns: | True if the service is not available, otherwise False | 
| Return type: | bool | 
CLI Example:
salt '*' service.missing com.openssh.sshd
Unloads and reloads a launchd service. Raises an error if the service fails to reload
| Parameters: | |
|---|---|
| Returns: | 
 
  |  
| Return type: | 
CLI Example:
salt '*' service.restart org.cups.cupsd
Show properties of a launchctl service
| Parameters: | name (str) -- Service label, file name, or full path | 
|---|---|
| Returns: | The service information if the service is found | 
| Return type: | dict | 
CLI Example:
salt '*' service.show org.cups.cupsd # service label salt '*' service.show org.cups.cupsd.plist # file name salt '*' service.show /System/Library/LaunchDaemons/org.cups.cupsd.plist # full path
Start a launchd service. Raises an error if the service fails to start
Note
To start a service in macOS the service must be enabled first. Use service.enable to enable the service.
| Parameters: | |
|---|---|
| Returns: | 
 
  |  
| Return type: | 
CLI Example:
salt '*' service.start org.cups.cupsd
Return the status for a service.
| Parameters: | |
|---|---|
| Returns: | 
 The PID for the service if it is running, or 'loaded' if the service should not always have a PID, or otherwise an empty string  |  
| Return type: | 
CLI Example:
salt '*' service.status cups
Stop a launchd service. Raises an error if the service fails to stop
Note
Though service.stop will unload a service in macOS, the service will start on next boot unless it is disabled. Use service.disable to disable the service
| Parameters: | |
|---|---|
| Returns: | 
 
  |  
| Return type: | 
CLI Example:
salt '*' service.stop org.cups.cupsd
    © 2019 SaltStack.
Licensed under the Apache License, Version 2.0.
    https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.mac_service.html