--- title: About the systemd_service Resource --- # systemd_service Use the `systemd_service` InSpec audit resource to test a service using SystemD. ## Syntax 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 ## Matchers This InSpec audit resource has the following matchers: ### be <%= partial "/shared/matcher_be" %> ### be_enabled The `be_enabled` matcher tests if the named service is enabled: it { should be_enabled } ### be_installed The `be_installed` matcher tests if the named service is installed: it { should be_installed } ### be_running The `be_running` matcher tests if the named service is running: it { should be_running } ### cmp <%= partial "/shared/matcher_cmp" %> ### eq <%= partial "/shared/matcher_eq" %> ### include <%= partial "/shared/matcher_include" %> ### match <%= partial "/shared/matcher_match" %> ## Examples None.