$ systemctl --version
$ whereis systemd
$ whereis systemctl
$ sudo systemctl reboot
$ sudo systemctl poweroff
$ sudo systemctl halt
$ sudo systemctl suspend
$ sudo systemctl hibernate
$ sudo systemctl hybrid-sleep
$ sudo systemctl rescue
Service Management
$ sudo systemctl start application
$ sudo systemctl start application.service
$ sudo systemctl restart application.service
$ sudo systemctl reload application.service
$ sudo systemctl status application.service
$ sudo systemctl stop application.service
$ sudo systemctl reload-or-restart application
$ sudo systemctl reload-or-restart application.service
$ sudo systemctl enable application
$ sudo systemctl enable application.service
$ sudo systemctl disable application.service
Checking for Specific States
$ systemctl is-active application
$ systemctl is-active application.service
$ systemctl is-enabled application.service
$ systemctl is-failed application.service
System State Overview
$ systemctl list-units
$ systemctl list-units --all
$ systemctl list-units --all --state=inactive
$ systemctl list-units --failed
$ systemctl list-units --type=service
$ systemctl status
$ sysystemctl status bluetooth.service
$ systemctl -H root@rhel7.example.com status httpd.service
$ systemctl is-active application.service # Use in shell script
$ systemctl is-failed application.service
$ systemctl is-enabled application.service
$ sudo systemctl start apache.service
$ sudo systemctl stop apache.service
$ sudo systemctl restart apache.service
$ sudo systemctl kill apache.service
$ sudo systemctl reload apache.service
$ sudo systemctl daemon-reload
$ systemctl show httpd.service
$ systemctl show -p CPUShares httpd.service
$ sudo systemctl set-property httpd.service CPUShares=500
$ systemctl list-dependencies nginx.service
$ systemctl list-dependencies --all nginx.service
$ cd /etc/systemd/system/
$ cd /usr/lib/systemd/system/
$ sudo systemctl enable clamd@scan.service
$ sudo ln -s '/usr/lib/systemd/system/clamd@scan.service' '/etc/systemd/system/multi-user.target.wants/clamd@scan.service'
$ sudo systemctl disable clamd@scan.service
$ systemctl list-unit-files
$ systemctl list-unit-files --type=service
Setting the Default Target
$ systemctl get-default
$ sudo systemctl set-default multi-user.target
Traditional runlevel New target name Symbolically linked to...
Runlevel 0 | runlevel0.target -> poweroff.target
Runlevel 1 | runlevel1.target -> rescue.target
Runlevel 2 | runlevel2.target -> multi-user.target
Runlevel 3 | runlevel3.target -> multi-user.target
Runlevel 4 | runlevel4.target -> multi-user.target
Runlevel 5 | runlevel5.target -> graphical.target
Runlevel 6 | runlevel6.target -> reboot.target
Listing Available Targets
$ systemctl list-unit-files --type=target
$ systemctl list-units --type=target
Isolating Targets
$ systemctl list-dependencies multi-user.target
$ sudo systemctl isolate multi-user.target