systemctl is a command-line utility used to control the systemd system and service manager. It allows users to manage system services, check their status, enable/disable them at boot, and more.
Check the status of a service
Example Usage:
systemctl status sshd
What it does:
Displays the current status of the sshd service, including whether it is active, running, or failed.
Command-line Arguments Explained:
status: The main command to check the status of a unit.
sshd: The name of the service unit (e.g., SSH daemon).
Start a service
Example Usage:
systemctl start httpd
What it does:
Starts the httpd service immediately.
Command-line Arguments Explained:
start: The command to initiate the specified service.
httpd: The service unit to be started (e.g., Apache web server).
Stop a service
Example Usage:
systemctl stop nginx
What it does:
Stops the nginx service.
Command-line Arguments Explained:
stop: The command to terminate the specified service.
nginx: The service unit to be stopped (e.g., NGINX web server).
Restart a service
Example Usage:
systemctl restart postfix
What it does:
Restarts the postfix service, stopping and then starting it again.
Command-line Arguments Explained:
restart: The command to stop and then start the specified service.
postfix: The service unit to be restarted (e.g., mail transfer agent).
Reload a service configuration
Example Usage:
systemctl reload docker
What it does:
Reloads the configuration of the docker service without restarting it.
Command-line Arguments Explained:
reload: The command to reapply the service's configuration.
docker: The service unit to reload (e.g., container runtime).
Enable a service to start at boot
Example Usage:
systemctl enable crond
What it does:
Enables the crond service to start automatically during system boot.
Command-line Arguments Explained:
enable: The command to configure the service for automatic startup.
crond: The service unit to enable (e.g., cron daemon).
Disable a service from starting at boot
Example Usage:
systemctl disable cups
What it does:
Disables the cups service from starting automatically at boot.
Command-line Arguments Explained:
disable: The command to prevent the service from starting automatically.
cups: The service unit to disable (e.g., print spooler).
List all active service units
Example Usage:
systemctl list-units --type=service --state=running
What it does:
Lists all active service units that are currently in the "running" state.
Command-line Arguments Explained:
list-units: Displays the status of units.
--type=service: Filters the output to show only service units.
--state=running: Displays only units in the "running" state.
List all unit files
Example Usage:
systemctl list-unit-files
What it does:
Shows all unit files on the system with their loading and activation status.
Command-line Arguments Explained:
list-unit-files: Displays a list of all unit files.
Reload systemd configuration
Example Usage:
systemctl daemon-reload
What it does:
Reloads the systemd manager configuration after changes to unit files.
Command-line Arguments Explained:
daemon-reload: Forces systemd to re-read configuration files.
Check if a service is active
Example Usage:
systemctl is-active sshd
What it does:
Reports whether the sshd service is active (e.g., "active" or "inactive").
Command-line Arguments Explained:
is-active: The command to check the activation state of a unit.
sshd: The service unit to evaluate.
Check if a service is enabled
Example Usage:
systemctl is-enabled firewalld
What it does:
Checks if the firewalld service is configured to start at boot.
Command-line Arguments Explained:
is-enabled: The command to verify a unit’s enablement status.
firewalld: The service unit to check.
View the content of a unit file
Example Usage:
systemctl cat sshd.service
What it does:
Prints the contents of the sshd.service unit file for inspection.
Command-line Arguments Explained:
cat: The command to output a unit file's content.
sshd.service: The specific unit file to display.
List dependencies of a service
Example Usage:
systemctl list-dependencies nginx
What it does:
Displays the dependency hierarchy for the nginx service.
Command-line Arguments Explained:
list-dependencies: Shows dependencies of the specified unit.
nginx: The service unit to analyze for dependencies.
Show failed units
Example Usage:
systemctl --failed
What it does:
Lists all units that have failed to load or start.
Command-line Arguments Explained:
--failed: Filters units to show only those in a failed state.
Reset failed status of a unit
Example Usage:
systemctl reset-failed systemd-journald
What it does:
Clears the "failed" state flag for the systemd-journald unit.
Command-line Arguments Explained:
reset-failed: Clears the failed status of a unit.
systemd-journald: The unit to reset.
Disable terminal paging
Example Usage:
systemctl --no-pager status nginx
What it does:
Prevents the output of the status command from being paginated.
Command-line Arguments Explained:
--no-pager: Disables the use of a pager (e.g., less) for output.
status: Checks the status of the specified unit.
nginx: The service unit to check.
Check logs for a service
Refer to journalctl.
Show unit file details
Example Usage:
systemctl show sshd
What it does:
Prints detailed properties of the sshd unit file.
Command-line Arguments Explained:
show: Outputs detailed information about a unit.
sshd: The service unit to inspect.
Check the unit file’s state
Example Usage:
systemctl is-failed nginx
What it does:
Checks if the nginx service has failed to start or load.
Command-line Arguments Explained:
is-failed: Reports whether the specified unit has failed.
nginx: The service unit to check.