+ <refsect1>
+ <title>Unit load path</title>
+
+ <para>Unit files are loaded from a set of paths
+ determined during compilation, described in the two
+ tables below. Unit files found in directories higher
+ in the hierarchy override files with the same name
+ lower in the hierarchy, thus allowing overrides.
+ </para>
+
+ <para>When systemd is running in session mode
+ (<option>--user</option>) and the variable
+ <varname>$SYSTEMD_UNIT_PATH</varname> is set, this
+ contents of this variable overrides the unit load
+ path.
+ </para>
+
+ <table>
+ <title>
+ Load path when running in system mode (<option>--system</option>).
+ </title>
+
+ <tgroup cols='2'>
+ <colspec colname='path' />
+ <colspec colname='expl' />
+ <thead>
+ <row>
+ <entry>Path</entry>
+ <entry>Description</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><filename>/run/systemd/generator.early</filename></entry>
+ <entry>Generated units</entry>
+ </row>
+ <row>
+ <entry><filename>&SYSTEM_CONFIG_UNIT_PATH;</filename></entry>
+ <entry morerows='1'>Local configuration</entry>
+ </row>
+ <row>
+ <entry><filename>/etc/systemd/system</filename></entry>
+ </row>
+ <row>
+ <entry><filename>/run/systemd/systemd</filename></entry>
+ <entry>Volatile units</entry>
+ </row>
+ <row>
+ <entry><filename>/run/systemd/generator</filename></entry>
+ <entry>Generated units</entry>
+ </row>
+ <row>
+ <entry><filename>/usr/local/lib/systemd/system</filename></entry>
+ <entry>Units for local packages</entry>
+ </row>
+ <row>
+ <entry><filename>&systemunitdir;</filename></entry>
+ <entry>Systemd package configuration</entry>
+ </row>
+ <row>
+ <entry><filename>/usr/lib/systemd/system</filename></entry>
+ <entry morerows='1'>Units for installed packages</entry>
+ </row>
+ <row>
+ <entry><filename>/lib/systemd/system</filename></entry>
+ </row>
+ <row>
+ <entry><filename>/run/systemd/generator.late</filename></entry>
+ <entry>Generated units</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <table>
+ <title>
+ Load path when running in session mode (<option>--user</option>).
+ </title>
+
+ <tgroup cols='2'>
+ <colspec colname='path' />
+ <colspec colname='expl' />
+ <thead>
+ <row>
+ <entry>Path</entry>
+ <entry>Description</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><filename>/tmp/systemd-generator.early.<replaceable>XXXXXX</replaceable></filename></entry>
+ <entry>Generated units</entry>
+ </row>
+ <row>
+ <entry><filename>&USER_CONFIG_UNIT_PATH;</filename></entry>
+ <entry morerows='1'>Local configuration</entry>
+ </row>
+ <row>
+ <entry><filename>/etc/systemd/user</filename></entry>
+ </row>
+ <row>
+ <entry><filename>/run/systemd/user</filename></entry>
+ <entry>Volatile units</entry>
+ </row>
+ <row>
+ <entry><filename>/tmp/systemd-generator.<replaceable>XXXXXX</replaceable></filename></entry>
+ <entry>Generated units</entry>
+ </row>
+ <row>
+ <entry><filename>/usr/local/lib/systemd/user</filename></entry>
+ <entry morerows='1'>Units for local packages</entry>
+ </row>
+ <row>
+ <entry><filename>/usr/local/share/systemd/user</filename></entry>
+ </row>
+ <row>
+ <entry><filename>&userunitdir;</filename></entry>
+ <entry>Systemd package configuration</entry>
+ </row>
+ <row>
+ <entry><filename>/usr/lib/systemd/user</filename></entry>
+ <entry morerows='1'>Units for installed packages</entry>
+ </row>
+ <row>
+ <entry><filename>/usr/share/systemd/user</filename></entry>
+ </row>
+ <row>
+ <entry><filename>/tmp/systemd-generator.late.<replaceable>XXXXXX</replaceable></filename></entry>
+ <entry>Generated units</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+
+ <para>Note: the paths listed above are set at
+ compilation time and differ between distributions. The
+ "authorative" list is printed by
+ <command>systemd</command> at during start and daemon
+ reconfiguration.</para>
+
+ <para>Additional units might be loaded into systemd
+ ("linked") from directories not on the unit load
+ path. See the <command>link</command> command for
+ <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
+ </para>
+ </refsect1>
+