Desktop
Diese Seite ist nur zum Lesen, ohne Lab. Sie erklärt, was passiert, wenn auf einem Linux ein grafischer Bildschirm erscheint, und warum auf den meisten Servern keiner erscheint.
Ein Desktop ist kein Teil von Linux
Abschnitt betitelt „Ein Desktop ist kein Teil von Linux“Linux ist der Kernel. Die grafische Oberfläche ist ein Stapel austauschbarer Programme darüber. Darum sehen Ubuntu, Fedora und Linux Mint so unterschiedlich aus, obwohl darunter derselbe Kernel läuft, und darum kann ein Server den ganzen Stapel einfach weglassen.
flowchart BT
K[Kernel<br/>Grafiktreiber, Eingabegeräte]
DS[Display Server<br/>Wayland-Compositor oder Xorg]
DM[Display Manager<br/>gdm3, sddm, lightdm]
WM[Window Manager / Compositor<br/>Mutter, KWin, Xfwm]
DE[Desktop Environment<br/>GNOME, KDE Plasma, Xfce]
APP[Anwendungen<br/>Terminal, Browser, Editor]
K --> DS --> DM --> WM --> DE --> APP
Von unten nach oben:
| Schicht | Aufgabe | Beispiele |
|---|---|---|
| Display Server | Zeichnet Pixel auf den Bildschirm und verteilt Maus- und Tastatureingaben an Fenster | Wayland (Standard seit Ubuntu 22.04), Xorg (X11, der Klassiker seit den 80ern, als Rückfalloption weiterhin dabei) |
| Display Manager | Das erste grafische Programm nach dem Boot: der Anmeldebildschirm. Startet nach dem Login die Sitzung | gdm3 (GNOME), sddm (KDE), lightdm (leichtgewichtig) |
| Window Manager | Rahmen, Titelleisten, Verschieben, Grösse ändern, Fokus. Unter Wayland ist er mit dem Display Server verschmolzen (Compositor) | Mutter (GNOME), KWin (KDE), Xfwm (Xfce) |
| Desktop Environment | Das sichtbare Ganze: Panel, Starter, Dateimanager, Einstellungen, Themes. Ein aufeinander abgestimmtes Paket aus Programmen | GNOME (Ubuntu-Standard, aufgeräumt, eher wie macOS), KDE Plasma (viele Einstellungen, eher wie Windows), Xfce (sparsam, schnell, für alte Hardware oder VMs) |
Du kannst die Komponenten mischen. Im Alltag wählst du eine Arbeitsumgebung, und die bringt ihren Display Manager und Window Manager mit.
Was auf deiner VM läuft, verrät eine Sitzung mit grafischer Oberfläche so:
echo "$XDG_SESSION_TYPE"echo "$XDG_CURRENT_DESKTOP"systemctl status display-managerXDG_SESSION_TYPE ist wayland oder x11; auf einem Server ohne Grafik ist die Variable leer und tty steht im Terminal.
Warum Server keine GUI brauchen
Abschnitt betitelt „Warum Server keine GUI brauchen“Ein Ubuntu Server hat nach der Installation keine einzige dieser Schichten. Dafür gibt es gute Gründe:
- Ressourcen: GNOME belegt rund ein Gigabyte Arbeitsspeicher und ein paar Prozent CPU, nur um da zu sein. Auf einem Server gehört das den Diensten.
- Angriffsfläche: Jedes installierte Paket ist potenziell angreifbar und muss aktualisiert werden. Was nicht da ist, braucht keine Pflege.
- Fernzugriff: Server stehen im Rechenzentrum oder in der Cloud. Du arbeitest über SSH (Modul 10), und das Terminal ist über jede Leitung schnell. Eine grafische Sitzung über das Netz ist es nicht.
- Automatisierung: Alles, was du im Terminal tippst, kannst du in ein Skript schreiben und auf hundert Servern ausführen. Mausklicks nicht.
Das Zielsystem steht in systemd: graphical.target startet den Display Manager, multi-user.target bleibt beim Text-Login.
systemctl get-defaultMit sudo systemctl set-default multi-user.target machst du aus einem Desktop-Ubuntu ein System, das in der Konsole startet; die grafische Sitzung lässt sich dann bei Bedarf mit sudo systemctl start gdm3 nachholen.
Eine andere Arbeitsumgebung ausprobieren
Abschnitt betitelt „Eine andere Arbeitsumgebung ausprobieren“Wenn dir GNOME nicht liegt oder deine VM damit zu träge ist, kannst du eine zweite Arbeitsumgebung daneben installieren und beim Login wählen. Xfce ist die kleinste der grossen drei:
sudo apt install xfce4Danach abmelden, auf dem Anmeldebildschirm den Benutzer wählen und über das Zahnrad unten rechts die Sitzung «Xfce Session» aussuchen. KDE Plasma gibt es als kubuntu-desktop, das sind über tausend Pakete und mehrere Gigabyte.
Selbstcheck · 4 Fragen