🚧 Under construction — VoTechWorks is being built. A free tech program — complimentary, as our commitment to get America working.
voTechWorksGrade 13 · a vocational technology learning center, by urbanicity
newSchoolWorks.com › VoTechWorks › Technology & Design › Data Center Technician › Linux Basics for Data Center Technicians › Lesson 6
TEC-DATA82-07 · Lesson 6 · 14 clock hours · lab

Service Management, Logging, and System Monitoring

Objective. Students will start, stop, restart, enable, and disable system services with systemctl, interpret service status output, query the system journal with journalctl, and locate relevant entries in /var/log to diagnose a simulated service failure.

⚠ Pending professional review

This lesson, its worked examples and its practice questions has not yet been verified by an industry-certified professional or by a certification or approval body. It is a study draft and may contain errors. Do not use it as instructions for work on a job site or on live equipment. Always follow your instructor, your supervising professional, and current official references and regulations.

VoTechWorks program approval and accreditation are still in progress. Credentials are issued only by the certifying bodies named in each program, after their own exams.

Service Management, Logging, and System Monitoring

In a data center, Linux servers run critical services around the clock. Knowing how to start, stop, and diagnose those services — and how to read the logs that explain what went wrong — is a core daily skill for every data center technician.

systemd and systemctl

Most modern Linux distributions (RHEL, CentOS, Debian, Ubuntu) use systemd as their init system. systemd is the first process started by the kernel (PID 1) and is responsible for bringing up all other services in a defined order.

You interact with systemd through the systemctl command. The table below covers the essential subcommands:

| Command | What it does |

|---|---|

| `systemctl status sshd` | Shows current state of the SSH daemon |

| `systemctl start sshd` | Starts the service immediately |

| `systemctl stop sshd` | Stops the service immediately |

| `systemctl restart sshd` | Stops then starts the service |

| `systemctl enable sshd` | Marks the service to start at boot |

| `systemctl disable sshd` | Prevents the service from starting at boot |

When you run `systemctl status sshd`, the output contains three fields you must be able to read:

A service can be enabled (starts at boot) but currently inactive, or active (running right now) but disabled (will not survive a reboot). These are independent states — keep that distinction clear.

The System Journal and journalctl

systemd records every service's standard output, standard error, and kernel messages in a structured binary database called the journal. You query it with journalctl.

Useful journalctl options:

The journal is your first stop when a service shows `failed` status. Look for lines containing `error`, `failed`, `permission denied`, or specific port/address conflicts.

Traditional Log Files in /var/log

Before systemd, services wrote logs directly to text files under /var/log. Many services still do both. Key files for a data center technician:

Use `grep`, `tail -f`, or `less` to search and follow these files. For example: `grep sshd /var/log/auth.log | tail -20` narrows results quickly during an incident.

Diagnosing a Simulated Service Failure

A common real-world scenario: someone edits `/etc/ssh/sshd_config` and enters an invalid port number or a syntax error. sshd then refuses to start. Your diagnostic workflow:

1. Run `systemctl status sshd` — note `failed` or `inactive (dead)`.

2. Run `journalctl -u sshd -n 30` — look for the specific error message (e.g., `Invalid port` or `error: Bind to port`).

3. Check `/var/log/auth.log` or `/var/log/secure` for corroborating entries.

4. Open the configuration file with a text editor (as root or with sudo), correct the error, and save.

5. Run `systemctl restart sshd` and verify with `systemctl status sshd` that it returns `active (running)`.

6. Document every step in your incident note: time, symptom, root cause, corrective action, verification.

Basic System Monitoring Tools

Before escalating a ticket or opening a change request, a technician takes a snapshot of server health using standard command-line tools:

Safety Notes

While this lesson is software-focused, physical safety still applies in the data center:

Key terms8

systemdThe init system and service manager used by most modern Linux distributions; it starts as PID 1 and manages all other system services and their dependencies.
systemctlThe command-line tool used to start, stop, restart, enable, disable, and inspect the status of systemd-managed services.
unit fileA configuration file read by systemd that defines how a service should be started, stopped, and supervised; stored in directories such as /lib/systemd/system/.
journalctlThe command used to query the systemd journal, a structured binary log of all service output and kernel messages collected since the journal was initialized.
Active stateThe live runtime state of a systemd service shown in systemctl status output; common values are active (running), inactive (dead), and failed.
load averageA measure of the average number of processes waiting for CPU time over the past 1, 5, and 15 minutes; a sustained average above the number of CPU cores signals a performance issue.
/var/log/auth.logA text log file on Debian/Ubuntu systems that records authentication events including SSH logins, failed password attempts, and sudo usage; called /var/log/secure on RHEL/CentOS.
enable / disable (systemctl)systemctl subcommands that control whether a service is configured to start automatically at boot, independent of whether the service is currently running.
In class: systemd deep-dive lab: students run systemctl status, start, stop, restart, enable, and disable on the sshd and cron services; they capture the before-and-after output in their lab log and annotate what each state field (Active, Loaded, Main PID) means. · Simulated service-failure diagnosis: instructor intentionally breaks the sshd configuration (incorrect port entry in sshd_config) on a lab server; students must detect the failure with systemctl status sshd, trace the error in journalctl -u sshd and /var/log/auth.log or /var/log/secure, identify the misconfiguration, correct it, and restore the service — all documented in a structured incident note. · Monitoring tools introduction: students run top, htop, df -h, free -m, and uptime to capture a snapshot of server resource utilization, then record the results in a table and flag any metric that would trigger an alert in a real data center environment (e.g., disk above 80% full, load average above CPU count).
Materials: Lab servers; systemctl and journalctl man pages; CompTIA Server+ Study Guide (server monitoring and troubleshooting chapter); CNet CDCTP learner handbook (operational procedures section); incident-note template; lab log notebooks.
Check: Instructor reviews incident note for correct root-cause identification, corrective action, and restored service; resource-utilization table is checked for correct values and threshold annotations. Pass mark: service restored with correct configuration, incident note complete with root cause and fix, and resource table with at least one correctly flagged threshold (all three elements required to pass).

Practice check8

Answer each question, then check it. Nothing is recorded; this is your own practice.

CompTIA Server+: Server Management and Troubleshooting
1. A technician runs `systemctl status sshd` and sees the Active field read `failed`. Which command should the technician run next to find the specific error message that caused the failure?
CompTIA Server+: Server Administration
2. A Linux server on Debian has been edited by a junior technician and sshd will not start. The technician checks /etc/ssh/sshd_config and finds the line `Port 99999`. What is the correct action?
CompTIA Linux+ / Server+: Service Management
3. Which systemctl command marks the sshd service to start automatically every time the server boots, without affecting its current running state?
CNet CDCTP: Operational Procedures and Monitoring
4. A technician runs `df -h` and sees the /var partition is at 91% used. According to standard data center monitoring practice, what should the technician do?
CompTIA Server+: Performance Monitoring
5. A server has 4 CPU cores. A technician runs `uptime` and sees load averages of 5.2, 6.1, 6.8. What does this indicate?
CompTIA Server+: Server Management
6. What is the difference between the Loaded and Active fields in `systemctl status` output?
CompTIA Server+: Troubleshooting and Logging
7. On a RHEL-based server, where would a technician look for SSH authentication failure messages in addition to the systemd journal?
OSHA 10: Hazard Recognition and Control
8. A technician is about to physically reseat a NIC inside a running server rack to resolve a connectivity issue noticed while managing services. What must the technician do before opening the chassis?
Record this lesson on my transcript. Sign in with your key and enrollment email to record lessons (enroll free if you have no key). This page stays open to read and practise.