Bevor wir Logdateien bereinigen oder analysieren, müssen wir sie lesen und verstehen.
Linux bietet dafür mehrere Werkzeuge, die je nach Situation sinnvoll sind.
In diesem Kapitel lernst du, wie du Logfiles im Terminal öffnest, durchsuchst und die wichtigsten Meldungen schnell findest.
🔹 Logfiles finden
Die meisten Logs liegen unter /var/log/
.
Beispiele:
-
/var/log/syslog
→ allgemeine Systemmeldungen -
/var/log/auth.log
→ Anmeldeversuche, SSH-Logins -
/var/log/apache2/access.log
→ Apache-Webserver-Zugriffe -
/var/log/nginx/error.log
→ Nginx-Fehler
👉 Tipp: Viele Logs brauchen Root-Rechte (sudo), um sie zu lesen.
🔹 Mit cat
Logs vollständig ausgeben
Der einfachste Befehl:
cat /var/log/syslog
👉 Gibt die gesamte Datei aus.
Nachteil: Bei großen Logs ist das unübersichtlich.
🔹 Mit less
Logs bequem durchblättern
less /var/log/syslog
Bedienung:
-
Pfeiltasten
→ Zeilenweise bewegen -
Leertaste
→ Seite weiter -
/Muster
– vorwärts→ suchen (Datei nach unten hin durchsuchen) -
?Muster
– rückwärts→ suchen (Datei nach oben hin durchsuchen) -
q
→ beenden
👉 Ideal für große Logs, da du vor- und zurückscrollen kannst.
💡 Profi-Tipp: less
als Ersatz für tail -f
Während du in less
bist, kannst du mit Shift + F in den Follow-Modus wechseln.
Das funktioniert genauso wie tail -f
: neue Logzeilen werden sofort angezeigt.
Mit Strg + C kehrst du in den normalen Blättermodus zurück.
Vorteil: Du kannst sofort zurückscrollen oder mit /Muster
oder ?Muster
suchen, ohne less
verlassen zu müssen.
🔹 Mit tail
die letzten Einträge sehen
Logs sind dynamisch – neue Einträge kommen ständig dazu.
Mit tail
siehst du die letzten Zeilen:
tail /var/log/syslog
👉 Standardmäßig die letzten 10 Zeilen.
Mehr Zeilen anzeigen:
tail -n 50 /var/log/syslog
Live-Modus (neue Einträge sofort sehen):
tail -f /var/log/syslog
👉 Perfekt, wenn du ein Log während eines Tests oder Starts beobachten willst.
🔹 Mit grep
gezielt suchen
Um bestimmte Meldungen zu finden, nutze grep
:
grep "ERROR" /var/log/syslog
👉 Zeigt nur Zeilen, die „ERROR“ enthalten.
Kombiniert mit tail
:
tail -f /var/log/syslog | grep "sshd"
👉 Zeigt in Echtzeit nur SSH-bezogene Meldungen.
🔹 Beispiel: SSH-Logins prüfen
In /var/log/auth.log
findest du Login-Versuche.
Nur fehlgeschlagene Logins anzeigen:
grep "Failed password" /var/log/auth.log
👉 Damit erkennst du sofort Angriffsversuche oder Fehl-Logins deiner User.
🔹 Übungen
1. Öffne mit less
die Datei /var/log/syslog
.
- Scrolle durch und suche nach dem Wort „error“.
2. Beobachte mit tail -f
die Datei /var/log/auth.log
.
- Öffne in einem zweiten Terminal eine SSH-Verbindung und sieh dir an, wie sofort ein neuer Eintrag erscheint.
3. Suche mit grep
in auth.log
nach allen fehlgeschlagenen Logins (Failed password
).
- Zähle, wie viele es waren:
grep "Failed password" /var/log/auth.log | wc -l
✅ Zusammenfassung
-
cat
→ komplette Datei ausgeben (eher unübersichtlich bei großen Logs). -
less
→ komfortabel blättern, suchen, zurückspringen. - tail → letzte Zeilen sehen, mit
-f
im Live-Modus beobachten. -
grep
→ gezielt nach Begriffen suchen, auch in Kombination mittail
.
👉 Im nächsten Kapitel lernst du, wie du mit grep & regulären Ausdrücken noch flexibler in Logdateien suchen kannst.
📚 Inhaltsverzeichnis
👉 Log-Analyse Kapitel 1: Logs im Terminal lesen – cat, less, tail & grep
👉 Log-Analyse Kapitel 2: Filtern mit grep und regulären Ausdrücken
👉 Log-Analyse Kapitel 3: Logs bereinigen mit sed – inkl. Mehrdatei-Änderungen
👉 Log-Analyse Kapitel 4: Logs analysieren mit awk
👉 Log-Analyse Kapitel 5: Logs kombinieren mit grep, sed, awk, sort, uniq & cut
👉 Log-Analyse Kapitel 6: Praxisprojekt – Apache-/Nginx-Access-Logs analysieren
👉 Log-Analyse Kapitel 7: Praxisprojekt – Systemlogs analysieren (auth.log & journalctl)
⭐ Bonus-Kapitel
👉 Log-Analyse Kapitel 8 (Bonus): Eigene Auswertungs-Skripte für Logs schreiben
👉 Log-Analyse Kapitel 9 (Bonus): Logs visualisieren mit CSV & gnuplot