salt.modules.win_service
Windows Service module.
Changed in version 2016.11.0: Rewritten to use PyWin32
-
Check if a service is available on the system.
- Parameters
-
name (str) -- The name of the service to check
- Returns
-
Trueif the service is available,Falseotherwise - Return type
CLI Example:
salt '*' service.available <service name>
salt.modules.win_service.available(name)
-
Create the named service.
New in version 2015.8.0.
- Parameters
-
name (str) -- Specifies the service name. This is not the display_name
bin_path (str) -- Specifies the path to the service binary file. Backslashes must be escaped, eg:
C:\path\to\binary.exeexe_args (str) -- Any additional arguments required by the service binary.
display_name (str) -- The name to be displayed in the service manager. If not passed, the
namewill be useddescription (str) -- A description of the service
-
service_type (str) --
Specifies the service type. Default is
own. Valid options are as follows:kernel: Driver service
filesystem: File system driver service
adapter: Adapter driver service (reserved)
recognizer: Recognizer driver service (reserved)
own (default): Service runs in its own process
share: Service shares a process with one or more other services
-
start_type (str) --
Specifies the service start type. Valid options are as follows:
boot: Device driver that is loaded by the boot loader
system: Device driver that is started during kernel initialization
auto: Service that automatically starts
manual (default): Service must be started manually
disabled: Service cannot be started
start_delayed (bool) -- Set the service to Auto(Delayed Start). Only valid if the start_type is set to
Auto. If service_type is not passed, but the service is already set toAuto, then the flag will be set. Default isFalse-
error_control (str) --
The severity of the error, and action taken, if this service fails to start. Valid options are as follows:
normal (normal): Error is logged and a message box is displayed
severe: Error is logged and computer attempts a restart with the last known good configuration
critical: Error is logged, computer attempts to restart with the last known good configuration, system halts on failure
ignore: Error is logged and startup continues, no notification is given to the user
load_order_group (str) -- The name of the load order group to which this service belongs
dependencies (list) -- A list of services or load ordering groups that must start before this service
-
account_name (str) --
The name of the account under which the service should run. For
owntype services this should be in thedomain\usernameformat. The following are examples of valid built-in service accounts:NT AuthorityLocalService
NT AuthorityNetworkService
NT AuthorityLocalSystem
.LocalSystem
account_password (str) -- The password for the account name specified in
account_name. For the above built-in accounts, this can be None. Otherwise a password must be specified.run_interactive (bool) -- If this setting is True, the service will be allowed to interact with the user. Not recommended for services that run with elevated privileges.
- Returns
-
A dictionary containing information about the new service
- Return type
CLI Example:
salt '*' service.create <service name> <path to exe> display_name='<display name>'
salt.modules.win_service.create(name, bin_path, exe_args=None, display_name=None, description=None, service_type='own', start_type='manual', start_delayed=False, error_control='normal', load_order_group=None, dependencies=None, account_name='.\\LocalSystem', account_password=None, run_interactive=False, **kwargs)
-
Create a task in Windows task scheduler to enable restarting the salt-minion
- Returns
-
Trueif successful, otherwiseFalse - Return type
CLI Example:
salt '*' service.create_win_salt_restart_task()
salt.modules.win_service.create_win_salt_restart_task()
-
Delete the named service
- Parameters
- Returns
-
-
Trueif successful, otherwiseFalse. Also returnsTrue -
if the service is not present
-
- Return type
CLI Example:
salt '*' service.delete <service name>
salt.modules.win_service.delete(name, timeout=90)
-
Disable the named service to start at boot
- Parameters
-
name (str) -- The name of the service to disable
- Returns
-
Trueif disabled,Falseotherwise - Return type
CLI Example:
salt '*' service.disable <service name>
salt.modules.win_service.disable(name, **kwargs)
-
Check to see if the named service is disabled to start on boot
- Parameters
-
name (str) -- The name of the service to check
- Returns
-
True if the service is disabled
- Return type
CLI Example:
salt '*' service.disabled <service name>
salt.modules.win_service.disabled(name)
-
Enable the named service to start at boot
- Parameters
-
name (str) -- The name of the service to enable.
-
start_type (str) --
Specifies the service start type. Valid options are as follows:
boot: Device driver that is loaded by the boot loader
system: Device driver that is started during kernel initialization
auto: Service that automatically starts
manual: Service must be started manually
disabled: Service cannot be started
start_delayed (bool) -- Set the service to Auto(Delayed Start). Only valid if the start_type is set to
Auto. If service_type is not passed, but the service is already set toAuto, then the flag will be set.
- Returns
-
Trueif successful,Falseotherwise - Return type
CLI Example:
salt '*' service.enable <service name>
salt.modules.win_service.enable(name, start_type='auto', start_delayed=False, **kwargs)
-
Check to see if the named service is enabled to start on boot
- Parameters
-
name (str) -- The name of the service to check
- Returns
-
True if the service is set to start
- Return type
CLI Example:
salt '*' service.enabled <service name>
salt.modules.win_service.enabled(name, **kwargs)
-
Run the Windows Salt restart task
- Returns
-
Trueif successful, otherwiseFalse - Return type
CLI Example:
salt '*' service.execute_salt_restart_task()
salt.modules.win_service.execute_salt_restart_task()
-
Return all installed services
- Returns
-
Returns a list of all services on the system.
- Return type
CLI Example:
salt '*' service.get_all
salt.modules.win_service.get_all()
-
Return a list of disabled services. Disabled is defined as a service that is marked 'Disabled' or 'Manual'.
- Returns
-
A list of disabled services.
- Return type
CLI Example:
salt '*' service.get_disabled
salt.modules.win_service.get_disabled()
-
Return a list of enabled services. Enabled is defined as a service that is marked to Auto Start.
- Returns
-
A list of enabled services
- Return type
CLI Example:
salt '*' service.get_enabled
salt.modules.win_service.get_enabled()
-
The Display Name is what is displayed in Windows when services.msc is executed. Each Display Name has an associated Service Name which is the actual name of the service. This function allows you to discover the Service Name by returning a dictionary of Display Names and Service Names, or filter by adding arguments of Display Names.
If no args are passed, return a dict of all services where the keys are the service Display Names and the values are the Service Names.
If arguments are passed, create a dict of Display Names and Service Names
- Returns
-
A dictionary of display names and service names
- Return type
CLI Examples:
salt '*' service.get_service_name salt '*' service.get_service_name 'Google Update Service (gupdate)' 'DHCP Client'
salt.modules.win_service.get_service_name(*args)
-
Return the SID for this windows service
- Parameters
-
name (str) -- The name of the service for which to return the SID
- Returns
-
A string representing the SID for the service
- Return type
CLI Example:
salt '*' service.getsid <service name>
salt.modules.win_service.getsid(name)
-
Get information about a service on the system
- Parameters
-
name (str) -- The name of the service. This is not the display name. Use
get_service_nameto find the service name. - Returns
-
A dictionary containing information about the service.
- Return type
CLI Example:
salt '*' service.info spooler
salt.modules.win_service.info(name)
-
The inverse of service.available.
- Parameters
-
name (str) -- The name of the service to check
- Returns
-
Trueif the service is missing,Falseotherwise - Return type
CLI Example:
salt '*' service.missing <service name>
salt.modules.win_service.missing(name)
-
Modify a service's parameters. Changes will not be made for parameters that are not passed.
New in version 2016.11.0.
- Parameters
-
name (str) -- The name of the service. Can be found using the
service.get_service_namefunctionbin_path (str) -- The path to the service executable. Backslashes must be escaped, eg:
C:\path\to\binary.exeexe_args (str) -- Any arguments required by the service executable
display_name (str) -- The name to display in the service manager
description (str) -- The description to display for the service
-
service_type (str) --
Specifies the service type. Default is
own. Valid options are as follows:kernel: Driver service
filesystem: File system driver service
adapter: Adapter driver service (reserved)
recognizer: Recognizer driver service (reserved)
own (default): Service runs in its own process
share: Service shares a process with one or more other services
-
start_type (str) --
Specifies the service start type. Valid options are as follows:
boot: Device driver that is loaded by the boot loader
system: Device driver that is started during kernel initialization
auto: Service that automatically starts
manual: Service must be started manually
disabled: Service cannot be started
start_delayed (bool) -- Set the service to Auto(Delayed Start). Only valid if the start_type is set to
Auto. If service_type is not passed, but the service is already set toAuto, then the flag will be set.-
error_control (str) --
The severity of the error, and action taken, if this service fails to start. Valid options are as follows:
normal: Error is logged and a message box is displayed
severe: Error is logged and computer attempts a restart with the last known good configuration
critical: Error is logged, computer attempts to restart with the last known good configuration, system halts on failure
ignore: Error is logged and startup continues, no notification is given to the user
load_order_group (str) -- The name of the load order group to which this service belongs
dependencies (list) -- A list of services or load ordering groups that must start before this service
-
account_name (str) --
The name of the account under which the service should run. For
owntype services this should be in thedomain\usernameformat. The following are examples of valid built-in service accounts:NT AuthorityLocalService
NT AuthorityNetworkService
NT AuthorityLocalSystem
.LocalSystem
account_password (str) -- The password for the account name specified in
account_name. For the above built-in accounts, this can be None. Otherwise a password must be specified.run_interactive (bool) -- If this setting is True, the service will be allowed to interact with the user. Not recommended for services that run with elevated privileges.
- Returns
-
a dictionary of changes made
- Return type
CLI Example:
salt '*' service.modify spooler start_type=disabled
salt.modules.win_service.modify(name, bin_path=None, exe_args=None, display_name=None, description=None, service_type=None, start_type=None, start_delayed=None, error_control=None, load_order_group=None, dependencies=None, account_name=None, account_password=None, run_interactive=None)
-
Restart the named service. This issues a stop command followed by a start.
- Parameters
-
-
name --
The name of the service to restart.
Note
If the name passed is
salt-miniona scheduled task is created and executed to restart the salt-minion service. -
timeout (int) --
The time in seconds to wait for the service to stop and start before returning. Default is 90 seconds
Note
The timeout is cumulative meaning it is applied to the stop and then to the start command. A timeout of 90 could take up to 180 seconds if the service is long in stopping and starting
New in version 2017.7.9,2018.3.4.
-
- Returns
-
Trueif successful, otherwiseFalse - Return type
CLI Example:
salt '*' service.restart <service name>
salt.modules.win_service.restart(name, timeout=90)
-
Start the specified service.
Warning
You cannot start a disabled service in Windows. If the service is disabled, it will be changed to
Manualstart.- Parameters
- Returns
-
-
Trueif successful, otherwiseFalse. Also returnsTrue -
if the service is already started
-
- Return type
CLI Example:
salt '*' service.start <service name>
salt.modules.win_service.start(name, timeout=90)
-
Return the status for a service. If the name contains globbing, a dict mapping service name to True/False values is returned.
Changed in version 2018.3.0: The service name can now be a glob (e.g.
salt*)- Parameters
-
name (str) -- The name of the service to check
- Returns
-
True if running, False otherwise dict: Maps service name to True if running, False otherwise
- Return type
CLI Example:
salt '*' service.status <service name>
salt.modules.win_service.status(name, *args, **kwargs)
-
Stop the specified service
- Parameters
- Returns
-
-
Trueif successful, otherwiseFalse. Also returnsTrue -
if the service is already stopped
-
- Return type
CLI Example:
salt '*' service.stop <service name>
salt.modules.win_service.stop(name, timeout=90)
© 2021 SaltStack.
Licensed under the Apache License, Version 2.0.
https://docs.saltproject.io/en/latest/ref/modules/all/salt.modules.win_service.html