Unit files in /etc/ override unit files in /lib/. Note that while Debian
uses /lib/, other distributions may use /usr/lib/ instead.

If there is a directory with the same name as the unit file plus a .d suffix,
any file *.conf it contains is parsed after the unit, and can be used to add
or override configuration options.

For example:

/lib/systemd/system/beep.service.d/foo.conf can be used to tweak
the contents of /lib/systemd/system/beep.service, so it is possible for a
package to distribute a tweak to the configuration of another package.

/etc/systemd/system/beep.service.d/foo.conf can be used to tweak the
contents of /lib/systemd/system/beep.service, so it is possible a system
administrator to extend a packaged unit without needing to replace it
entirely.

Similarly, a unitname.wants/ or unitname.requires/ directory can be used to
extend Wants= and Requires= dependencies on other units, by placing
symlinks to other units in them.