In this guide: systemctl: manage services. Status, restart, enable, logs.
Commands below target a typical Linux setup (Ubuntu/Debian). On other distros, package/service names may differ.
If something goes wrong: check the service is running, listening on the expected port, and that your firewall allows the connection. For web services, `nginx -t` and `journalctl -u nginx` are good starting points. If a service won’t start, begin with `systemctl status` and `journalctl -u <service>` for the reason/stack trace.
After completing the steps below, verify the result: service status, logs, and network reachability. This saves hours when an issue shows up later.
Below you’ll find a quick checklist, verification commands, and common pitfalls. This helps you not only “do it”, but also confirm what a correct outcome looks like.
Quick checklist
- Check service status and logs after each change.
- Keep headroom for disk and memory: many “random” issues are OOM/disk-full.
- Do not edit system files without a backup copy.
- Make one small change at a time and verify the result immediately.
- Keep notes of what you changed (file/command/time).
Verify the result
# Verify / sanity checks
uptime
free -h
df -h
sudo systemctl --failed --no-pager || trueCommon pitfalls
- Editing configs without validating syntax (sshd/nginx).
- Full disk (logs/caches/Docker) causes cascading failures.
sudo systemctl status nginx --no-pager
sudo systemctl restart nginx
sudo systemctl enable --now nginxsudo journalctl -u nginx -n 200 --no-pagerNeed a VPS now?
Rent a WHITEWHALE VDS and launch in minutes.
European locations, transparent pricing, quick self-serve ordering.
