uname — Kernel- und Systeminformationen ausgeben

Praxis-Guide zu uname: Kernel-Name, Kernel-Release, Hostname und CPU-Architektur ausgeben – plus Abgrenzung zu Distributions-Infos.

uname gehört zu den ersten Befehlen, die du auf einem fremden System ausführst: In Sekunden verrät es dir Kernel-Name, Kernel-Release, Hostnamen und CPU-Architektur. Besonders in Skripten ist es unverzichtbar, um plattform- oder architekturabhängig zu verzweigen – etwa beim Auswählen des richtigen Binaries für x86_64 oder aarch64. Dieser Guide zeigt dir die wichtigsten Optionen, sinnvolle Kombinationen und die Abgrenzung zu Distributions-Infos, die uname bewusst nicht liefert.

Gängige Verwendung

uname — Gibt nur den Betriebssystem-Namen aus. Üblicherweise 'Linux', 'Darwin' o. Ä.

uname

uname -a — Gibt alle verfügbaren Informationen aus: Kernel-Name, Hostname, Kernel-Release, Kernel-Version, Maschine, Prozessor, Hardware-Plattform und Betriebssystem.

uname -a

uname -r — Gibt das Kernel-Release (die Versionsnummer) aus. Praktisch, um zu prüfen, welcher Kernel läuft.

uname -r

uname -m — Gibt den Maschinen-Hardwarenamen (die Architektur) aus. Häufige Werte: x86_64, aarch64, arm64.

uname -m

Alle Optionen

uname -s — Gibt den Kernel-Namen (Betriebssystem-Namen) aus. Entspricht dem bloßen 'uname'. Beispielausgabe: Linux, Darwin.

uname -s

uname -n — Gibt den Hostnamen des Netzknotens aus. Entspricht 'hostname'.

uname -n

uname -r — Gibt das Kernel-Release aus. Beispiel: 6.6.87-microsoft-standard-WSL2.

uname -r

uname -v — Gibt die Kernel-Version aus (Build-Datum und -Nummer, nicht die Release-Nummer).

uname -v

uname -m — Gibt den Maschinen-Hardwarenamen (die CPU-Architektur) aus. Beispiel: x86_64, aarch64.

uname -m

uname -p — Gibt den Prozessortyp aus. Liefert auf manchen Systemen 'unknown'.

uname -p

uname -i — Gibt die Hardware-Plattform aus. Liefert auf manchen Systemen 'unknown' (Linux-spezifisch).

uname -i

uname -o — Gibt den Betriebssystem-Namen aus. Beispiel: GNU/Linux (GNU-Coreutils-Option; auf der BSD-Variante von macOS nicht verfügbar).

uname -o

Optionen kombinieren

uname -sr — Gibt Betriebssystem-Namen und Kernel-Release aus. Kurze Kombinationsform.

uname -sr

uname -mrs — Gibt Maschine, Kernel-Release und Betriebssystem-Namen aus.

uname -mrs

uname -snr — Gibt Betriebssystem-Namen, Hostnamen und Kernel-Release aus.

uname -snr

Praxisbeispiele & Skripte

[ $(uname -s) = 'Linux' ] && echo Linux — Erkennt Linux in einem Shell-Skript. Praktisch für plattformübergreifende Skripte.

[ $(uname -s) = 'Linux' ] && echo 'Running on Linux'

[ $(uname -m) = 'aarch64' ] && echo ARM — Erkennt die ARM64-Architektur (z. B. Apple Silicon, Raspberry Pi). Praktisch zur Auswahl des passenden Binaries.

[ $(uname -m) = 'aarch64' ] && echo 'ARM64 detected'

uname -r | grep -q 'WSL' && echo WSL — Erkennt das Windows-Subsystem für Linux (WSL) anhand des Kernel-Release-Strings.

uname -r | grep -q 'WSL' && echo 'Running inside WSL'

uname -r | cut -d. -f1,2 — Extrahiert nur die Haupt- und Nebenversionsnummer des Kernels.

uname -r | cut -d. -f1,2

Verwandte Werkzeuge

hostnamectl — Zeigt oder setzt den Hostnamen und zugehörige Einstellungen. Detaillierter als uname auf systemd-Systemen.

hostnamectl

lsb_release -a — Zeigt Informationen zur Linux-Distribution (Name, Version, Codename).

lsb_release -a

cat /etc/os-release — Zeigt Distributionsinformationen aus der OS-Release-Datei. Auf allen modernen Linux-Systemen verfügbar.

cat /etc/os-release

arch — Gibt die Maschinenarchitektur aus. Entspricht 'uname -m'.

arch

Fazit

uname ist ein reines Lese-Kommando – es verändert nichts und lässt sich gefahrlos in jedem Skript einsetzen. Für den schnellen Überblick reicht uname -a; brauchst du gezielt einzelne Werte, greifst du zu -r (Kernel-Release, etwa für passende Treiber oder Kernel-Module), -m (Architektur wie x86_64 oder aarch64) oder -s/-n/-o. Wichtig zu wissen: uname kennt nur den Kernel, nicht die Distribution. Welche Distro samt Version läuft, verraten dir erst /etc/os-release, lsb_release oder hostnamectl. Unter macOS ist uname zwar vorhanden, die eigentliche macOS-Version liefert aber sw_vers.

Verwandte Kommandos

  • hostnamectl – Hostname und Systeminformationen unter systemd anzeigen und setzen
  • uptime – Laufzeit des Systems und Load-Average anzeigen
  • lsblk – Blockgeräte und Partitionen als Baum auflisten