2016-09-22 12:43:57 +00:00
---
title: About the systemd_service Resource
---
# systemd_service
Use the `systemd_service` InSpec audit resource to test a service using SystemD.
2017-10-03 21:35:10 +00:00
<br>
2016-09-27 19:03:23 +00:00
## Syntax
2016-09-22 12:43:57 +00:00
A `systemd_service` resource block declares the name of a service and then one (or more) matchers to test the state of the service:
describe systemd_service('service_name') do
it { should be_installed }
it { should be_enabled }
it { should be_running }
end
where
* `('service_name')` must specify a service name
* `be_installed`, `be_enabled`, and `be_running` are valid matchers for this resource; all matchers available to the `service` resource may be used
The path to the service manager's control may be specified for situations where the path isn't available in the current `PATH`. For example:
describe systemd_service('service_name', '/path/to/control') do
it { should be_enabled }
it { should be_installed }
it { should be_running }
end
2017-10-03 21:35:10 +00:00
<br>
2016-09-22 12:43:57 +00:00
2017-10-03 21:35:10 +00:00
## Matchers
2016-09-22 12:43:57 +00:00
2017-10-03 21:35:10 +00:00
This InSpec audit resource has the following matchers. For a full list of available matchers please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
2016-09-22 12:43:57 +00:00
2016-09-27 19:03:23 +00:00
### be_enabled
2016-09-22 12:43:57 +00:00
The `be_enabled` matcher tests if the named service is enabled:
it { should be_enabled }
2016-09-27 19:03:23 +00:00
### be_installed
2016-09-22 12:43:57 +00:00
The `be_installed` matcher tests if the named service is installed:
it { should be_installed }
2016-09-27 19:03:23 +00:00
### be_running
2016-09-22 12:43:57 +00:00
The `be_running` matcher tests if the named service is running:
it { should be_running }