Linux/DistroStack

Aus ArtisanCommerce Dokumentation
Version vom 27. März 2026, 00:16 Uhr von Admin (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Anatomie einer Linux-Distribution: Der Distro-Stack

Diese Seite beschreibt die Standard-Komponenten, die in einer modernen Linux-Distribution (fokussiert auf Ubuntu/Debian) enthalten sind. Ein Betriebssystem ist kein monolithischer Block, sondern ein Stapel (Stack) aus spezialisierten Tools und Diensten.

1. Core System & Boot (Die Basis)

Ohne diese Komponenten würde die Hardware nicht mit der Software kommunizieren.

  • Kernel: Das Herzstück. Verwaltet CPU, RAM und Hardware-Treiber.
  • init-System (systemd): Der "Mutter-Prozess" (PID 1). Startet und verwaltet alle anderen Dienste (Daemons).
  • GNU C Library (glibc): Die fundamentale Schnittstelle zwischen Kernel und fast jeder Software auf dem System.

2. System-Daemons (Hintergrunddienste)

Dienste, die im Hintergrund laufen, um die Systemfunktionalität aufrechtzuerhalten:

  • systemd-resolved / Avahi: Zuständig für Netzwerk-Namensauflösung und Zeroconf (Geräte im LAN finden).
  • NetworkManager: Verwaltet LAN, WLAN und VPN-Verbindungen.
  • CUPS (Common Unix Printing System): Der Standard-Druckerserver unter Linux.
  • cron / systemd-timers: Zeitgesteuerte Aufgaben (z.B. tägliche Backups oder Log-Rotation).
  • SSH (sshd): Ermöglicht den sicheren Fernzugriff auf das System.

3. Paketverwaltung & Software-Verteilung

Ubuntu nutzt ein hybrides Modell aus klassischer und moderner Paketverwaltung:

  • APT (Advanced Package Tool): Verwalter für `.deb` Pakete. Nutzt geteilte Bibliotheken des Systems.
  • Snap (snapd): Von Canonical entwickeltes Container-Format. Apps bringen ihre eigenen Bibliotheken mit und laufen isoliert (Sandboxed).
  • D-Bus: Ein "Nachrichtensystem", das es verschiedenen Programmen (z.B. Snap-Apps und dem Desktop) erlaubt, miteinander zu kommunizieren.

4. Build-Chains & Entwicklungstools

Wichtig für Kompilierung und Systempflege (oft im Paket `build-essential` zusammengefasst):

  • GCC / Clang: Die Compiler, die Quellcode in ausführbare Programme verwandeln.
  • Make / CMake: Tools zur Automatisierung des Build-Prozesses.
  • Python/Perl/Bash: Skriptsprachen, die für viele interne Systemskripte notwendig sind.

5. Grafik & User Interface (UI-Stack)

  • Display Server (X11 oder Wayland): Zeichnet die Fenster auf den Bildschirm.
  • Desktop Environment (GNOME, KDE, XFCE): Die grafische Oberfläche (Panel, Menüs, Dateimanager).
  • Mesa: Die Open-Source-Treiber für Grafikbeschleunigung (OpenGL/Vulkan).

Übersichtstabelle wichtiger Komponenten

Komponente Funktion Beispiel-Befehl
snapd Verwaltung von Snap-Containern snap list
systemctl Steuerung von System-Diensten systemctl status cups
journalctl Zentrales Logging-System journalctl -u ssh
dpkg / apt Klassische Paketverwaltung apt update
udev Dynamische Geräteverwaltung udevadm monitor

Offizielle Dokumentation