Eu encontrei uma explicação muito boa aqui
The BSD halt and reboot commands were low-level, drastic, and immediate. The considerate way to shut down a BSD system was the shutdown command, which did all of the things that one expects to happen: wall messages to users, services gracefully killed, log entries written, logins disabled, and so forth.
Ele também explica que no conjunto de ferramentas systemd ele sempre desliga os serviços primeiro como @muru mencionado.