Worum geht’s
Ein Linux-Server ohne GUI ist im Second-Level Alltag. Du startest und stoppst
Dienste, liest ihre Logs, korrigierst Dateirechte und arbeitest dich über die
Shell zur Ursache eines Problems vor. Wer systemctl, journalctl und das
Rechtemodell beherrscht, diagnostiziert Dienstausfälle in Minuten statt Stunden.
Konzept
Drei Bausteine tragen die tägliche Server-Arbeit:
- Shell & Navigation:
cd,ls -la,cat,grep, Pipes (|) und Umleitungen (>,>>). Übergrep -i error /var/log/syslogfilterst du Logzeilen, mittail -ffolgst du einer Datei live. - systemd-Dienste: jeder Dienst ist eine Unit.
systemctl status nginxzeigt Zustand, PID und die letzten Logzeilen;start/stop/restartsteuern ihn,enableaktiviert den Autostart beim Booten. Logs einer Unit liestjournalctl -u nginx. - Dateirechte: jede Datei hat Besitzer / Gruppe / Andere mit den Rechten
r(4) w(2) x(1).
chmod 640 datei=rw-Besitzer,r--Gruppe,---Andere.chown user:group dateiändert den Besitzer. Ein Dienst, der seine Konfig nicht lesen darf, startet nicht — Rechte sind eine häufige Fehlerquelle.
Die oktale Rechte-Schreibweise addiert pro Stelle: 7 = rwx, 5 = r-x,
4 = r--, 0 = ---.
Beispiel-Fall
Gegeben: nginx läuft nicht mehr, nach systemctl restart nginx kommt ein
Fehler. Finde die Ursache.
systemctl status nginx→ Zustandfailed, Hinweis „see journalctl”.journalctl -u nginx -n 20→ Zeileopen() "/etc/nginx/sites/app.conf" failed (13: Permission denied). Fehlercode 13 = EACCES → Rechteproblem.ls -l /etc/nginx/sites/app.conf→-rw------- root root. nginx läuft als Userwww-dataund darf die Datei nicht lesen.chmod 644 /etc/nginx/sites/app.conf→ jetzt darf „Andere” lesen (r--).systemctl restart nginx→active (running).nginx -tbestätigt die gültige Konfiguration.
Merke die Kette: Status → Log → Fehlercode → Rechte/Pfad prüfen → korrigieren → verifizieren. Sie trägt bei fast jedem Dienstausfall.
Anwenden
Übe die Schritte auf deinem eigenen Homeserver. Der Blog-Beitrag
„Home-Server-Setup 2025” richtet eine passende Umgebung mit Docker und
systemd-Diensten ein, an der du systemctl und journalctl gefahrlos testen
kannst — am besten in einer VM oder einem Wegwerf-Container.
Selbsttest
Praxis-Challenge
Lege auf einem Test-Linux eine Datei /srv/test.conf an, setze sie mit
chmod 600 und Besitzer root. Starte einen Dienst (oder Container), der sie
als anderer User lesen soll — beobachte den Fehler im Journal. Korrigiere die
Rechte mit chmod 644, starte neu und belege über journalctl, dass der
Fehler verschwunden ist. Notiere den Fehlercode aus der ersten Logzeile.