DescriptionA unit configuration file whose name ends in
- .service encodes information about a process
- controlled and supervised by systemd.
+ .service encodes information
+ about a process controlled and supervised by
+ systemd.
This man page lists the configuration options
specific to this unit type. See
systemd.unit5
for the common options of all unit configuration
files. The common configuration items are configured
- in the generic [Unit] and [Install] sections. The
- service specific configuration options are configured
- in the [Service] section.
-
- Additional options are listed in systemd.exec5.
+ in the generic [Unit] and
+ [Install] sections. The service
+ specific configuration options are configured in the
+ [Service] section.
+
+ Additional options are listed in
+ systemd.exec5,
+ which define the execution environment the commands
+ are executed in.
+
+ Unless DefaultDependencies=
+ is set to , service units will
+ implicitly have dependencies of type
+ Requires= and
+ After= on
+ basic.target as well as
+ dependencies of type Conflicts= and
+ Before= on
+ shutdown.target. These ensure
+ that normal service units pull in basic system
+ initialization, and are terminated cleanly prior to
+ system shutdown. Only services involved with early
+ boot or late system shutdown should disable this
+ option.
+
+ If a service is requested under a certain name
+ but no unit configuration file is found, systemd looks
+ for a SysV init script by the same name (with the
+ .service suffix removed) and
+ dynamically creates a service unit from that
+ script. This is useful for compatibility with
+ SysV.Options
- Service files must include a [Service] section,
- which carries information about the service and the
- process it supervises. A number of options that may be
- used in this section are shared with other unit
- types. These options are documented in
+ Service files must include a
+ [Service] section, which carries
+ information about the service and the process it
+ supervises. A number of options that may be used in
+ this section are shared with other unit types. These
+ options are documented in
systemd.exec5. The
- options specific to the [Service] section of service
- units are the following:
+ options specific to the [Service]
+ section of service units are the following:
@@ -139,14 +168,18 @@
Behaviour of
is similar to
- , however it
- is expected that the daemon acquires a
+ , however it is
+ expected that the daemon acquires a
name on the D-Bus bus, as configured
by
BusName=. systemd
will proceed starting follow-up units
after the D-Bus bus name has been
- acquired.
+ acquired. Service units with this
+ option configured implicitly have
+ dependencies on the
+ dbus.target
+ unit.
Behaviour of
is similar to
@@ -159,10 +192,13 @@
starting follow-up units after this
notification message has been sent. If
this option is used
- (see
+ NotifyAccess= (see
below) must be set to open access to
the notification socket provided by
- systemd.
+ systemd. If
+ NotifyAccess= is not
+ set, it will be implicitly set to
+ .
@@ -216,11 +252,12 @@
services. This option may not be
specified more than once. Optionally,
if the absolute file name is prefixed
- with @, the second token will be
- passed as argv[0] to the executed
- process, followed by the further
- arguments specified. Unless
- is set,
+ with @, the second
+ token will be passed as
+ argv[0] to the
+ executed process, followed by the
+ further arguments specified. Unless
+ Type=forking is set,
the process started via this command
line will be considered the main
process of the
@@ -308,7 +345,7 @@
forcibly via SIGTERM, and after
another delay of this time with
SIGKILL. (See
-
+ KillMode=
below.) Takes a unit-less value in seconds, or a
time span value such as "5min
20s". Pass 0 to disable the timeout
@@ -446,7 +483,7 @@
Processes will first be
terminated via SIGTERM. If then after
a delay (configured via the
- option)
+ TimeoutSec= option)
processes still remain, the
termination request is repeated with
the SIGKILL signal. See
@@ -501,7 +538,7 @@
See Also
- systemd8,
+ systemd1,
systemctl8,
systemd.unit5,
systemd.exec5