ubuntuusers.de

LightDM

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/Oxygen/preferences-system-login.png LightDM 🇬🇧 (Light Display Manager) ist ein Displaymanager, der ab Ubuntu 11.10 den lange Jahre von Ubuntu und Xubuntu genutzten GDM ablöst hat. Seit Ubuntu 17.10 ist GDM wieder Standard, lässt sich auf Wunsch aber durch LightDM ersetzen.

Lightdm_LoginScreen01.png

In den Ubuntu-Varianten Xubuntu, Lubuntu, Ubuntu MATE und Ubuntu Budgie ist LightDM bereits vorinstalliert. Auch in Kubuntu ist ein Ersatz des neuen Displaymanagers SDDM durch LightDM möglich, jedoch entfallen dann die zusätzlichen Funktionalitäten von dessen Oberfläche.

Installation

Wiki/Icons/synaptic.png

Möchte man das Programm nachinstallieren, benötigt man das folgende Paket [1]:

  • lightdm (ab Bionic in universe)

Paketliste zum Kopieren:

sudo apt-get install lightdm 

Oder mit apturl installieren, Link: apt://lightdm

Dieses Paket allein reicht allerdings nicht aus, es wird zusätzlich noch die entsprechende Komponente für die gewünschte Desktop-Umgebung benötigt:

gewünschte Desktop-Umgebung
Unity Xfce, LXDE, MATE, Budgie
  • unity-greeter (ab Bionic in universe)

Paketliste zum Kopieren:

sudo apt-get install unity-greeter 

Oder mit apturl installieren, Link: apt://unity-greeter

  • slick-greeter (universe)

Paketliste zum Kopieren:

sudo apt-get install slick-greeter 

Oder mit apturl installieren, Link: apt://slick-greeter

Für Unity noch das folgende Paket benötigt:

  • gnome-settings-daemon (main, für Xenial in universe)

Paketliste zum Kopieren:

sudo apt-get install gnome-settings-daemon 

Oder mit apturl installieren, Link: apt://gnome-settings-daemon

Konfiguration

Wiki/Icons/settings.png Die Konfiguration ist in zwei Ordnern zu finden:

  • /usr/share/lightdm/lightdm.conf.d/ - systemweite Vorgaben

  • /etc/lightdm/lightdm.conf.d/ - benutzerdefinierte Anpassungen

die mit einem Texteditor [2] und Root-Rechten bearbeitet werden können.

Innerhalb der beiden Ordner legt die Nummerierung der Dateien fest, in welchen Reihenfolge diese abgearbeitet werden (aufsteigend, also 01 vor 99). Praktisch findet mal also bei Ubuntu 18.04 die Datei /usr/share/lightdm/lightdm.conf.d/50-unity-greeter.conf mit den systemweiten Vorgaben. Um eigene Einstellungen umzusetzen, erstellt man mit Root-Rechten eine Datei /etc/lightdm/lightdm.conf.d/XX-ZWECK.conf, also z.B. /etc/lightdm/lightdm.conf.d/90-autologin.conf für eine automatische Anmeldung.

Experten-Info:

Statt dieser recht aufwendigen Methode mit mehreren Konfigurationsdateien kann auch einfach weiterhin die Datei /etc/lightdm/lightdm.conf für benutzerdefinierte Anpassungen verwendet werden.

Prinzipiell sind die Konfigurationsdateien in [Abschnitte] gegliedert, die jeweils ein oder mehrere Zeilen in der Form Option=Wert enthalten. Angaben hinter dem Kommentarzeichen # werden nicht berücksichtigt. Zuerst ein einfaches Beispiel, wie es von Ubuntu 16.04 verwendet wird:

1
2
3
[Seat:*]
user-session=ubuntu
greeter-session=unity-greeter

Darüber hinaus sind weitere Abschnitte in der Form [Seat:n] möglich. Diese entsprechen zusätzlichen XServer-Sitzungen, werden einfach durchnummeriert und überschreiben die Vorgaben aus [SeatDefaults]. Beispiel: seats=Seat:0, Seat:1 (siehe auch Starten von zwei graphischen Sitzungen).

Automatische Anmeldung

Achtung!

Wer ein verschlüsseltes Homeverzeichnis verwendet, sollte auf eine automatische Anmeldung verzichten, weil dadurch der Aspekt der Datensicherheit unterlaufen und die Funktionsweise erheblich beeinträchtigt wird.

Für eine automatische Anmeldung müssen die folgenden Zeilen der Datei /usr/share/lightdm/lightdm.conf.d/60-lightdm-gtk-greeter.conf bearbeitet werden. Beispiel:

1
2
3
4
autologin-user=Benutzername
autologin-user-timeout=0
#autologin-session=(bisher nicht implementiert)
#user-session=ubuntu

Als Benutzername wird das gewünschte Benutzerkonto eingetragen, hinter user-session= die gewünschte Sitzung (Desktop-Umgebung), falls man nicht die zuletzt benutzte verwenden möchte. Nach dem nächsten Neustart sollte die automatische Anmeldung funktionieren.

(In älteren Versionen von Xubuntu ist die Datei unter /usr/share/lightdm/lightdm.conf.d/50-unity-greeter.conf zu finden)

Benutzerliste

Normalerweise ist die Anzeige der auf dem System vorhandenen Benutzer aktiv. Da dies unter Umständen sicherheitsrelevant ist, kann man die Benutzerliste deaktivieren:

1
greeter-hide-users=true

Themen

Bisher gibt es nur wenige Themen zur Auswahl. Da für den "Greeter" verschiedene Grafikbibliotheken benutzt werden können, muss als Grundvoraussetzung das jeweilige Paket wie

  • lightdm-gtk-greeter, ab Ubuntu 11.10, MATE, Xfce und LXDE

installiert sein.

Unity

Die Konfiguration des Unity-Greeters erfolgt über den grafischen dconf-editor. Da LightDM eine eigene Benutzerkennung verwendet, kümmern sich die ersten beiden Befehle um einen Benutzerwechsel:

xhost +SI:localuser:lightdm
sudo su lightdm -s /bin/bash
dconf-editor 

Die relevanten Einträge befinden sich unterhalb von "com -> canonical -> unity-greeter". Außerdem sollte man beachten, dass nun das eigene Hintergrundbild automatisch an das des Anmeldebildschirms angepasst werden kann. Nach Abschluss der Bearbeitung sollte man die aufgerufene Shell wieder verlassen:

exit 

Nach einem Neustart stehen die Änderungen zur Verfügung.

Für komfortable Einstellungsmöglichkeiten kann auch der Slick-Greeter verwendet werden. Dazu müssen noch zwei Zusatzpakete installiert werden:

  • lightdm-settings (universe)

  • slick-greeter (universe)

Paketliste zum Kopieren:

sudo apt-get install lightdm-settings slick-greeter 

Oder mit apturl installieren, Link: apt://lightdm-settings,slick-greeter

Dann wird die Konfigurationsdatei /etc/lightdm/lightdm.conf mit einem Editor mit Root-Rechten[2][2] bearbeitet. In dieser Datei werden folgende zwei Einträge neu erzeugt bzw. ergänzt:

1
2
[Seat:*]
greeter-session=slick-greeter

Die Datei wird gespeichert und das Konfigurationsfenster kann aufgerufen werden:

sudo -H lightdm-settings 

Slick_Greeter_01.png

Hier können alle relevanten Änderung vorgenommen werden. Eine Übersicht der Konfiguration kann wie folgt erzeugt werden:

lightdm --show-config 

Nach Schließen des Fensters und einem Neustart stehen die Änderungen zur Verfügung.

Andere Desktop-Umgebungen

Um das Aussehen anzupassen, bearbeitet man die Konfigurationsdatei /etc/lightdm/lightdm-gtk-greeter.conf mit Root-Rechten[2][3]. Alternativ steht der grafische LightDM-GTK+ Einstellungseditor zur Verfügung.

Auch Unity benutzte bis 11.10 eine solche Datei (/etc/lightdm/unity-greeter.conf), die hier als Beispiel benutzt wird:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
[greeter]
background=/usr/share/backgrounds/Hintergrund.jpg
logo=/usr/share/unity-greeter/logo.png
theme-name=Ambiance
icon-theme-name=ubuntu-mono-dark
font-name=Ubuntu 11
xft-antialias=true
xft-dpi=96
xft-hintstyle=hintslight
xft-rgba=rgb

Durch Änderung der jeweiligen Zeilen lassen sich so beispielsweise das Hintergrundbild, das (GTK-/Qt-)Thema, der verwendete Symbolsatz oder die Schrift bzw. Schriftgröße anpassen.

Testmodus

Um nicht jedes Mal den Rechner neu starten zu müssen, kann bei eigenen Anpassungen der folgende Befehl zur optischen Kontrolle verwendet werden:

lightdm --test-mode 

Voraussetzung ist die Installation des folgenden Pakets:

Paketliste zum Kopieren:

sudo apt-get install xserver-xephyr 

Oder mit apturl installieren, Link: apt://xserver-xephyr

Der Testmodus wird mit Strg + C beendet. Bei einer automatischen Anmeldung funktioniert er nicht.

Optionen

Nachfolgend eine Liste der möglichen Abschnitte und Wertepaare für die Datei /etc/lightdm/lightdm.conf der Version 1.26 vom LightDM. Eine vollständige Auflistung aller möglichen Optionen erhält man mit dem Befehl:

zless /usr/share/doc/lightdm/lightdm.conf.gz 

lightdm.conf

lightdm.conf
[LightDM] allgemeine Angaben
start-default-seat= Voreinstellungen aktiviert (true) oder deaktiviert (false). Standard: true
greeter-user= Benutzer, unter dem der Greeter ausgeführt wird. Standard: lightdm
minimum-display-number=n ?? Standard: 0.
minimum-vt=n erstes virtuelles Terminal. Standard: 7
user-authority-in-system-dir= Standard: false
guest-account-script= Standard: guest-account
log-directory= Standard: /var/log/lightdm
run-directory= Standard: /var/run/lightdm
cache-directory= Standard: /var/cache/lightdm
sessions-directory Standard: /usr/share/xsessions
greeters-directory Standard: /usr/share/xgreeters
[Seat:*] Standardeinstellungen
xserver-command= Standard: X
xserver-layout=
xserver-config=
xserver-allow-tcp= Standard: false
greeter-session=... Möglich sind unter Ubuntu unity-greeter, lightdm-gtk-greeter oder lightdm-kde-greeter (siehe auch Themen)
greeter-hide-users= Anzeige der Benutzerliste (siehe auch users.conf). Standard: false
greeter-show-manual-login= Anzeige der manuellen Eingabemaske für den Benutzernamen. Standard: false (ab Version 1.2)
user-session=... Sitzungsauswahl
allow-guest= Standard: true
guest-session= (bisher nicht implementiert)
autologin-user=... Siehe auch Automatische Anmeldung.
autologin-user-timeout= Vorgabe: 0
autologin-session= (bisher nicht implementiert)
autologin-guest= Standard: deaktiviert (false)
session-wrapper= Standard: lightdm-session
exit-on-failure= Displaymanager bei Fehlern beenden. Standard: false
xdmcp-manager= Programm
xdmcp-port= Standard: 177
xdmcp-key= Schlüssel
An-/Abmelde-Skripte
display-setup-script= Skript, das beim Start der Anmeldungssitzung ausgeführt wird (mit Rootrechten!)
greeter-setup-script= Skript, das beim Start der Anmeldung ausgeführt wird (mit Rootrechten!) Beispiel: greeter-setup-script=/usr/bin/numlockx on (Nummernblock aktivieren (Abschnitt „Anmeldebildschirm“))
session-setup-script= Skript, das beim Start einer Benutzersitzung ausgeführt wird (mit Rootrechten!) Beispiel: /usr/share/lightdm/guest-session/guest-session-setup.sh
session-cleanup-script= Skript, das beim Beenden einer Benutzersitzung ausgeführt wird (mit Rootrechten) Beispiel: /usr/share/lightdm/guest-session/guest-session-cleanup.sh
[XDMCPServer] Anmeldung von entfernten Rechnern
enabled= aktiviert (true) oder deaktiviert (false). Standard: (false)
port=n Standard: 177
key=0x0123456789ABCD 56-Bit DES Schlüssel in hexadezimaler Schreibweise für XDM-AUTHENTICATION-1 oder leer, wenn nicht genutzt. Alternativ ein beliebiger Begriff, dessen 7 erste Stellen verwendet werden.
[VNCServer] Anmeldung von entfernten Rechnern via VNC
enabled= aktiviert (true) oder deaktiviert (false). Standard: (false)
command= Standard: Xvnc
port=xxx Standard: 5900
listen-address=
width= Standard: 1024
height= Standard: 768
depth= Standard: 8

users.conf

users.conf
[UserAccounts] Allgemeine Angaben zu Benutzern
minimum-uid=n Benutzerkennungen (UIDs) kleiner als n nicht anzeigen. Vorgabe: 500
hidden-users=... Liste (weiterer) nicht anzuzeigender Benutzerkennungen. Beispiel: nobody noaccess Funktioniert aktuell nur mit Benutzern, dessen UID < 1000 ist. How do I hide a particular user from the LightDM login screen? 🇬🇧
hidden-shells=... Liste von Shells, deren Benutzer ebenfalls nicht angezeigt werden. Beispiel: /bin/false /usr/sbin/nologin

Experten-Info:

Wenn das Paket accountsservice installiert ist, werden Einstellungen in /etc/lightdm/users.conf ignoriert. Diese sind dann über die Benutzerverwaltung vorzunehmen.

keys.conf

keys.conf
[keyring] Angaben zum Schlüsselbund
a=0x0123456789ABCD Schlüssel in hexadezimaler Schreibweise
b=... weiterer Schlüssel (secret)

Verwendung

Die Benutzung von LightDM unterscheidet sich nicht von der anderer Displaymanager. Zuerst gibt man den Benutzernamen ein (oder wählt ihn aus der Benutzerliste aus), bestätigt mit und wiederholt den Vorgang für das Kennwort. Nach einem zweiten wird die zuletzt benutzte Sitzung gestartet – wenn die Angaben korrekt waren. Bei Fehlern darf die Anmeldung beliebig oft wiederholt werden.

Möchte man die Sitzung (die gewünschte Desktop-Umgebung) oder die Sprache der Sitzung ändern, kann dies über das Ubuntu-Symbol bzw. oben rechts in der Menüleiste erfolgen. Zusätzlich wird hier auch die Möglichkeit geboten, den Rechner auszuschalten oder neu zu starten.

Gastsitzung

Die Gastsitzung ist unter Ubuntu 18.04 standardmäßig aus Sicherheitsgründen deaktiviert. Wer sich der Risiken bewusst ist, und wieder eine Gastsitzung benötigt, kann diese über die folgenden Einträge im Abschnitt [Seat:*] in der Konfigurationsdatei /etc/lightdm/lightdm.conf (wieder) aktivieren:

1
2
greeter-allow-guest=true
allow-guest=true

Remote-Login

In der Standardeinstellung wird kein Remote-Login mehr angezeigt. Dieser ist jedoch weiterhin möglich, um sich direkt über das Netzwerk an verschiedenen Systemen aus der Ferne (remote) anmelden kann. Wer diese Funktion benötigt, verwendet die Option:

1
greeter-show-remote-login=true

im Abschnitt [Seat:*] in der Datei /etc/lightdm/lightdm.conf.

Problembehebung

Wiki/Icons/help.png

Displaymanager ändern

Um bei Problemen den Displaymanager (wieder) auszutauschen, kann man den folgenden Befehl nutzen, der in diesem Beispiel einen installierten GDM (re-)aktiviert:

sudo dpkg-reconfigure gdm 

Ab Kubuntu 15.04 verwendet Kubuntu SDDM.

Man kann die Änderung des Displaymanagers alternativ auch in der Datei /etc/X11/default-display-manager vornehmen. Dort ist das jeweilige Programm inklusive des vollständigen Pfads einzutragen.

Beenden und (Neu-)Starten samt XServer

Manchmal kommt es vor, dass man bestimmte Aufgaben ohne laufenden XServer bzw. auf der Konsole durchführen möchte. Mit den Tastenkombinationen Tasten Strg + Alt + F1 bis Strg + Alt + F6 kann man in sechs unabhängige Textkonsolen wechseln. Befindet man sich erst einmal auf einer Textkonsole, reicht beispielsweise Alt + F2 , um zur zweiten Textkonsole zu wechseln. Zurück zur laufenden Sitzung bzw. der graphischen Oberfläche gelangt man mit Alt + F7 .

Von einer virtuellen Textkonsole (ttyX) aus kann man LightDM mitsamt Xserver wie folgt beenden, starten oder neu starten.

Unter systemd seit Ubuntu 15.04:

Aktion Befehl
Beenden
sudo systemctl stop lightdm 
Starten
sudo systemctl start lightdm  
Neustarten
sudo systemctl restart lightdm 

Starten von zwei graphischen Sitzungen

Es ist möglich, LightDM so zu konfigurieren, dass zwei graphische Sitzungen gestartet werden. Dies kann z.B. für Media-Server von Interesse sein. In die Datei /etc/lightdm/lightdm.conf fügt man dazu folgende Einträge hinzu:

[LightDM]
seats=Seat:0, Seat:1
...
[Seat:0]
user-session=ubuntu
autologin-user=

[Seat:1]
user-session=ubuntu
autologin-user=

Die Einstellungen in den jeweiligen [Seat:x]-Abschnitten überschreiben Konfigurationseinstellungen des Abschnitts [Seat:*] für die jeweilige Sitzung. Die Ausgabe der zweiten Sitzung erfolgt auf dem zweiten Bildschirm. Ist nur ein Monitor angeschlossen, kann mit Strg + Alt + F8 und Strg + Alt + F7 zwischen den Sitzungen umgeschaltet werden.

Hintergrundbild

Unter Unity wird der Hintergrund des Anmeldebildschirms automatisch an das eigene Hintergrundbild angepasst. Das funktioniert aber nur, wenn die Bilder direkt unterhalb von ~/Bilder/ im Homeverzeichnis (nicht in einem Unterverzeichnis!) oder im Ordner /usr/share/backgrounds/ liegen. Verantwortlich für dieses Verhalten ist der Eintrag "draw-usr-backgrounds=true". Zur Konfiguration für Unity siehe oben.

Sollte weder das automatische Übernehmen des Bildes noch ein manueller Eintrag in der Konfigurationsdatei funktionieren, dann gibt es noch die Möglichkeit das Hintergrundbild von LightDM mit folgendem D-Bus-Befehl zu ändern:

dbus-send --system --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User$(id -u) org.freedesktop.Accounts.User.SetBackgroundFile string:/PFAD/ZUM/HINDERGRUNDBILD.JPG|PNG 

Dabei ist /PFAD/ZUM/HINDERGRUNDBILD.JPG|PNG am Ende des Befehls durch den korrekten Pfad und Dateinamen zu ersetzen.

Nutzt man ein verschlüsseltes Homeverzeichnis, kann LightDM die verschlüsselten Daten des Benutzers (logischerweise) nicht lesen, da der Benutzer lightdm keinen Zugriff auf diese Ressourcen hat.

Akustische Rückmeldung

Man kann bei Erscheinen der grafischen Anmeldung auch eine Audiodatei abspielen, um zu signalisieren, dass der Rechner hochgefahren und einsatzbereit ist. Eine allgemeine Anleitung, die nicht nur bei Xubuntu funktioniert, findet sich im Artikel Xfce Systemklänge (Abschnitt „LightDM“). Wer dagegen einen Weg sucht, eine akustische Rückmeldung zu deaktivieren, sei How do I disable the drum beat sound on the login screen? 🇬🇧 empfohlen.

LightDM startet nicht auf SSD

Auf Rechnern mit sehr kurzem Startvorgang kann es zu Problemen mit LightDM kommen, siehe 969489. Ein Workaround ist das erzwungene Verlangsamen des Starts von LightDM. Dazu muss die Datei /etc/init/lightdm.conf mit einem Editor [2] mit Root-Rechten [3] bearbeitet werden. Vor der Zeile:

exec /usr/bin/lightdm 

wird dazu folgende Zeile eingefügt, um eine Verzögerung von 2 Sekunden (bei Bedarf erhöhen) zu erhalten:

sleep 2 

Anmeldung scheitert ("failed to load session")

Eine Problembeschreibung und -lösung befindet sich im Artikel Displaymanager (Abschnitt „Anmeldung-scheitert-failed-to-load-session“).

Diese Revision wurde am 26. August 2019 08:45 von Xwarman erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: System, Xfce, Ubuntu, Desktop