Before I describe how systemd init works, I need to introduce these three key concepts:
- Unit, which is a configuration file that describes a target, a service, and several other things. Units are text files that contain properties and values.
- Service, which is a daemon that can be started and stopped, very much like a System V init service.
- Target, which is a group of services, similar to, but more general than, a System V init runlevel. There is a default target which is the group of services that are started at boot time.
You can change states and find out what is going on using the systemctl command.