ps zeigt eine Momentaufnahme laufender Prozesse, top überwacht sie live und kill beendet sie. Zusammen sind sie das Basiswerkzeug, um zu verstehen, was auf einem Linux-System gerade arbeitet — und es bei Bedarf zu stoppen.
ps: Prozesse anzeigen
ps aux # alle Prozesse mit CPU-/Speichernutzung (Standard)
ps -ef # alle Prozesse, volle Kommandozeile
ps aux | grep nginx # nach einem Dienst filtern
ps -e --forest # Prozessbaum (Eltern-Kind-Beziehung)
ps -u michael # nur Prozesse eines Benutzers
ps -p 1234 -o pid,cmd # gezielt eine PID abfragen
Die PID (Process ID) ist die Nummer, mit der man einen Prozess später anspricht. ps aux zeigt sie in der zweiten Spalte.
top: Live-Überwachung
top # Live-Ansicht, aktualisiert sich selbst
top -o %MEM # nach Speichernutzung sortieren
htop # komfortablere Variante (falls installiert)
In top sortiert P nach CPU, M nach Speicher, k beendet einen Prozess (PID eingeben), q verlässt die Ansicht.
kill: Prozesse beenden
kill 1234 # Signal TERM: sauberes Beenden anfordern
kill -9 1234 # Signal KILL: sofort beenden (letzte Möglichkeit)
killall nginx # alle Prozesse mit diesem Namen beenden
pkill -f "node app.js" # per Namensmuster beenden
kill -l # Liste aller Signale anzeigen
Die Reihenfolge ist wichtig: erst kill PID (Signal 15, TERM — der Prozess kann aufräumen), erst wenn das nicht wirkt kill -9 (Signal 9, KILL — hartes Beenden ohne Aufräumen).
Praxis-Tipps
pgrep nginxliefert nur die PID-Nummern — perfekt für Skripte.- Hängende Prozesse lassen sich oft mit
kill -9beenden; vorher aberkillversuchen, sonst gehen ungesicherte Daten verloren. - Mit
ps -o pid,%cpu,%mem,cmd --sort=-%cpubekommt man die CPU-lastigsten Prozesse als Liste. nice -n 10 ./schwer.shstartet einen Prozess mit niedrigerer Priorität, damit er andere nicht ausbremst.
Verwandte Grundlagen: Bash-Befehle, sort, uniq und cut und systemctl und journalctl.
systemctl steuert Dienste (Services) und Systemzustände unter systemd — dem Standard-Init-System moderner Linux-Distributionen. journalctl liest die zentrale Log-Sammlung (Journal). Zusammen verwalten sie, was beim Boot startet, was gerade läuft und was schiefgelaufen ist.
systemctl: Dienste steuern
systemctl status nginx # Status: läuft, aktiviert, letzte Log-Zeilen
systemctl start nginx # Dienst starten
systemctl stop nginx # Dienst stoppen
systemctl restart nginx # neu starten (nach Konfig-Änderungen)
systemctl reload nginx # Konfiguration neu laden ohne Neustart
systemctl enable nginx # automatischer Start beim Booten
systemctl disable nginx # Autostart entfernen
systemctl --failed # alle fehlgeschlagenen Dienste anzeigen
systemctl list-units --type=service --state=running # laufende Dienste
systemctl daemon-reload # Unit-Dateien nach Änderungen neu einlesen
journalctl: Logs lesen
journalctl -u nginx # Logs eines Dienstes
journalctl -u nginx -f # -f: live mitverfolgen (wie tail -f)
journalctl --since "1 hour ago" # seit einem Zeitpunkt
journalctl --since today # seit heute
journalctl -p err # nur Fehler (err) und Schlimmeres
journalctl -n 50 # die letzten 50 Zeilen
journalctl -b # seit dem letzten Boot
journalctl -k # Kernel-Meldungen
Typische Fehlersuche
systemctl status apache2 # zeigt den Fehler direkt an
journalctl -u apache2 -p err --since today # Fehler des Tages
systemctl restart apache2 # nach Config-Änderung
systemctl --failed # welche Dienste nicht starten
Praxis-Tipps
- Nach Änderungen an
/etc/systemd/system/immersystemctl daemon-reloadausführen, sonst ignoriert systemd die neue Datei. systemctl enable --now nginxstartet den Dienst UND aktiviert den Autostart in einem Schritt.- Wer
journalctl-Ausgaben weiterverarbeiten will, nutzt die Pipe:journalctl -u nginx | grep Fehler. - Das Journal speichert auch Kernel-Meldungen —
journalctl -k -p errzeigt Hardware-Probleme.
Verwandte Grundlagen: Bash-Befehle, ps, top und kill und grep-Befehle.
TypeScript – Schnellreferenz
TypeScript ist JavaScript mit statischen Typen – der Standard für große Web-Projekte und Angular/React-Anwendungen.
Typen und Interfaces
const name: string = "Hanse";
const alter: number = 42;
const aktiv: boolean = true;
interface Kunde {
name: string;
alter: number;
email?: string; // optional
}
const k: Kunde = { name: "Hanse", alter: 42 };
Union Types und Type Alias
type Id = string | number;
type Status = "aktiv" | "inaktiv";
let id: Id = 42;
let status: Status = "aktiv";
Generics
function erste<T>(liste: T[]): T | undefined {
return liste[0];
}
const x = erste([1, 2, 3]); // number
Klassen
class Kunde {
constructor(public name: string, private alter: number) {}
istVolljaehrig(): boolean {
return this.alter >= 18;
}
}
tsc-Befehle
| Aufgabe | Befehl |
|---|---|
| Kompilieren | npx tsc datei.ts |
| Watch-Modus | npx tsc --watch |
| Konfiguration | npx tsc --init |
| Strikte Prüfung | npx tsc --strict |
Verwandt: JavaScript · HTML & CSS · API
PowerShell – Schnellreferenz
PowerShell ist Microsofts Skript- und Automatisierungssprache für Windows, Azure und Office 365 – objektbasiert statt reiner Textausgabe.
Cmdlets und Pipelines
Get-Process # laufende Prozesse
Get-Service # Windows-Dienste
Get-ChildItem # Dateien (ls)
Get-Process | Where-Object { $_.CPU -gt 100 }
Get-Service | Sort-Object Status
Variablen und Ausgabe
$name = "Hanse"
$alter = 42
$liste = @(1, 2, 3)
Write-Host "Hallo, $name!"
Bedingungen und Schleifen
if ($alter -ge 18) {
Write-Host "Volljährig"
} else {
Write-Host "Minderjährig"
}
foreach ($item in $liste) {
Write-Host $item
}
for ($i = 0; $i -lt 5; $i++) {
Write-Host $i
}
Funktionen
function Begruesse($name) {
return "Hallo, $name!"
}
Begruesse "Welt"
Häufige Verwaltungsbefehle
| Aufgabe | Befehl |
|---|---|
| Dienst neu starten | Restart-Service wuauserv |
| Prozess beenden | Stop-Process -Name notepad |
| Skript ausführen | powershell -File skript.ps1 |
| Ausführungsrichtlinie | Set-ExecutionPolicy RemoteSigned |
HTML & CSS – Schnellreferenz
HTML strukturiert Inhalte, CSS gestaltet sie. Zusammen bilden sie das Fundament jeder Website – auch dieser.
HTML-Grundgerüst
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>Meine Seite</title>
</head>
<body>
<h1>Überschrift</h1>
<p>Ein Absatz mit <a href="https://...">Link</a>.</p>
</body>
</html>
Wichtigste HTML-Tags
| Tag | Bedeutung |
|---|---|
<h1>–<h6> | Überschriften |
<p> | Absatz |
<a href="/..."> | Link |
<img src="/..."> | Bild |
<ul> / <li> | Liste |
<table>, <tr>, <td> | Tabelle |
<div>, <span> | Container |
<form>, <input> | Formular |
CSS-Selektoren
/* Element */
p { color: #333; }
/* Klasse */
.card { border: 1px solid #ccc; }
/* ID */
#header { background: #1C5E66; }
/* Verschachtelt */
.card h2 { font-size: 1.5rem; }
Flexbox
.container {
display: flex;
justify-content: space-between;
align-items: center;
gap: 1rem;
}
CSS Grid
.grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 1rem;
}
Responsive Design
@media (max-width: 768px) {
.container { flex-direction: column; }
}
Verwandt: JavaScript · PHP · DNS