Documentation of =- (equals minus) in systemd unit files

This is documented in systemd.exec:



The argument passed should be an absolute filename or wildcard expression, optionally prefixed with "-", which indicates that if the file does not exist, it will not be read and no error or warning message is logged.

And in systemd.service:


For each of the specified commands, the first argument must be an absolute path to an executable. Optionally, this filename may be prefixed with a number of special characters:

Table 1. Special executable prefixes

ExecStartPre=, ExecStartPost=

If any of those commands (not prefixed with -) fail, the rest are not executed and the unit is considered failed.

(To find the most complete documentation for a systemd directive, look it up in systemd.directives.)

Additionally, a line like


looks like another "equals minus"-Syntax but instead is just an After= directive listing the special system unit -.mount, which is the root mount point. Docs:


Systemd Unit