That is correct, when you call `systemctl enable foo.unit` then the [Install] section of the unit file is "executed". "Static" means that the unit has no [Install] section, meaning it is permanently enabled/disabled as far as the systemctl enable/disable tool is concerned. Other than pulling themselves in when other units start, a unit can also symlink another unit name to itself using the Alias= option, and specify other units to enable/disable as a group using the Also= option. On 27 March 2014 07:13, Gesh <gesh@xxxxxxxxxxx> wrote: > On March 19, 2014 9:16:57 PM GMT+02:00, Ary Kleinerman <akleinerman@xxxxxxxxxxxxx> wrote: >>> There's not really much magic going on. Are you aware of: >>> >>> /etc/systemd/system >>> >>> This contains symlinks that do already pretty much what you describe, >>and this >>> is systemd's native configuration. >>> >>Paul, >>Don't forget >>/run/systemd/system: Runtime units and /usr/lib/systemd/system: Units >>of installed packages >> >>Regards, >>Ary > > Thanks for the pointers. > If I understand what's going on correctly, units specify in their [Install] section whether, when they're enabled, they should be pulled in by other units. > Those symlinks usually populate the appropriate directory under /etc/systemd/system/. > Besides that, some packages install symlinks under /usr/lib/systemd/system/ as part of their files to get pulled in by other units without requiring user intervention. > Finally, systemctl list-unit-files will list all unit files with their enabled/disabled/static status, where static means that they run by default (when pulled in) and disabled means they can be installed - that is, they have an [Install] section - but haven't been yet. > And systemctl enable/disable manages the symlinks under /etc/systems/system specified by the [Install] section. > Is my understanding of the situation correct? > Thanks, > Gesh