In my computers /lib/systemd/system directory I see a file multiuser.target - that file contains:
[Unit]
Description=Multi-User System
Documentation=man:systemd.special(7)
Requires=basic.target
Conflicts=rescue.service rescue.target
After=basic.target rescue.service rescue.target
AllowIsolate=yes
The line: Requires: basic.target which I assume means "run" the basic.target file.
But in that same /lib/systemd/system directory there is also a multi-user.target.wants/ sub-directory. It contains a bunch more unit files:
/lib/systemd/system $tree multi-user.target.wants/
multi-user.target.wants/
├── dbus.service -> ../dbus.service
├── getty.target -> ../getty.target
├── systemd-ask-password-wall.path -> ../systemd-ask-password-wall.path
├── systemd-logind.service -> ../systemd-logind.service
├── systemd-update-utmp-runlevel.service -> ../systemd-update-utmp-runlevel.service
└── systemd-user-sessions.service -> ../systemd-user-sessions.service
which of these units, i.e. file: basic.target or all of the units in sub-directory multi-user.wants.target is run when multi-user.target is the default boot target? is it all of the above? if so, what is the order?
basic.targetand all the units inmulti-user.targer.wantsand they are all launched asynchronously?