Login-Manager

Aus wiki.archlinux.de

Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


Diese Seite beschreibt die Installation/Konfiguration der gängigsten grafischen Login-Manager.

Installation

XDM

XDM ist der Standard-Login-Manager von Xorg.

 pacman -S xorg-xdm

GDM

GDM ist der Login-Manager der GNOME Desktop Umgebung. Er ist Teil des Paketes gnome-extra, man kann ihn aber auch explizit installieren.

 pacman -S gdm

KDM

KDM ist der Login-Manger der KDE Desktop Umgebung. Er ist Teil des Paketes kdebase-workspace, man muss also ein minimales KDE installieren wenn man ihn benutzen will.

 pacman -S kdebase-workspace

LXDM

LXDM ist der Loginmanager der LXDE Distributionen, er soll dort GDM ersetzen. Er ist unabhängig von der LXDE Desktopumgebung einsetzbar. Detaillierte Informationen zur Konfiguration von LXDM.

pacman -S lxdm

LightDM

LightDM ist ein einfacher Login-Manager, ohne Abhängigkeiten zu einer bestimmten Desktop-Umgebung bzw. einem bestimmten Window-Manager. LightDM kann hier aus dem AUR installiert werden.

Achtung: LightDM ändert $PATH, wodurch es zu Problemen kommen kann. Wie man $PATH repariert steht in diesem [1] englischsprachigen Forumsthread.


SLiM

SLiM ist ein einfacher Login-Manager, ohne Abhängigkeiten zu einer bestimmten Desktop-Umgebung bzw. einem bestimmten Window-Manager.

pacman -S slim

Zusätzliche Themes gibt es im Paket slim-themes.

Bevor SLiM gestartet wird, muss es erst einmal konfiguriert werden. Dies geschieht über die Datei /etc/slim.conf. Die meisten Einstellungen können belassen werden. Notwendig ist die login_cmd Zeile. Und es ist empfehlenswert einen default-user anzugeben.

Beispiel:

login_cmd            exec /bin/bash -login ~/.xinitrc %session
sessions             xfce4, fluxbox
default_user         micha

Die "sessions" werden dabei als Variable dem ~/.xinitrc Script übergeben (mit F1 in Slim wählbar). Das .xinitrc Script lädt daraufhin den entsprechenden Window-Manager bzw. die Desktop-Environment.

Beispiel einer ~/.xinitrc:

#!/bin/sh
case $1 in
xfce4)
      exec startxfce4
      ;;
fluxbox)
      exec fluxbox
      ;;
*)
      exec twm
      ;;
esac

Wichtig: Wenn nicht explizit eine Session angegeben wird (F1) lädt Slim immer den "*)" Eintrag. Um also xfce4 als Standard festzulegen müsste das so aussehen:

#!/bin/sh
case $1 in
fluxbox)
      exec fluxbox
      ;;
xfce4|*)
      exec startxfce4
      ;;
esac

Die Standardsession kann also ganz einfach im .xinitrc gewechselt werden.

Inbetriebnahme

Die Login-Manager können auf zwei verschiedene Weisen aktiviert / gestartet werden.

  • als DAEMON
  • per /etc/inittab

Die inittab ist der DAEMON-Methode vorzuziehen, da sonst nicht mehr zwischen den Runleveln 3 (Textmodus) und 5 (Grafische Benutzeroberfläche) unterschieden wird. Wenn also mit der DAEMON-Methode in Runlevel 5 gestartet wird, könnten XDM und KDM/GDM gleichzeitig laufen, abhängig von den Einträgen in der /etc/inittab.

als Daemon

Um die Login-Manager als Daemon zu starten muss nur das DAEMONS-Array in der /etc/rc.conf angepasst werden. Einfach den Namen des gewünschten Managers als letzten Eintrag hinzufügen. Die Namen der einzelnen Manager sind:

  • xdm
  • gdm
  • kdm (das Paket kde-common muss hierzu installiert sein)
  • lxdm
  • lightdm
  • slim

Für slim sähe dies zum Beispiel so aus:

DAEMONS=(… slim …)

per inittab

Um die Login-Manager per /etc/inittab zu starten muss diese Datei editiert werden. Zuerst muss der Default-Runlevel auf 5 gesetzt werden.

aus

id:3:initdefault: 

wird

id:5:initdefault:


Jetzt muss nur noch die Zeile

 x:5:respawn:/usr/bin/xdm -nodaemon 

an den gewünschten Login-Manager angepasst werden.

  • XDM
x:5:respawn:/usr/bin/xdm -nodaemon 
  • GDM
x:5:respawn:/usr/sbin/gdm -nodaemon
  • KDM
x:5:respawn:/usr/bin/kdm -nodaemon
  • LXDM
x:5:respawn:/usr/sbin/lxdm >& /dev/null
  • LightDM
x:5:respawn:/usr/sbin/lightdm >& /dev/null
  • SLiM
x:5:respawn:/usr/bin/slim


Das wars, beim nächsten Neustart wird der gewählte Login-Manager starten. Um ihn ohne Neustart zu laden als root diesen Befehl ausführen

/sbin/telinit 5

Sollte man irgendwann mal X beenden müssen (z.B. um die Grafik Treiber zu aktualisieren), kann in Runlevel 3 (Textmodus) gewechselt werden mit:

/sbin/telinit 3

Tipps

GDM: Automatisches Anmelden

Per einfacher Editierung der /etc/gdm/custom.conf ist es möglich, eine Autologinfunktion einzurichten (ersetzte username mit dem Kontonamen):

[daemon]
AutomaticLogin=username
AutomaticLoginEnable=True

bzw. für eine Autologinfunktion mit Counterdown timer (analog GRUB Countdown):

[daemon]
TimedLoginEnable=true
TimedLogin=username
TimedLoginDelay=1

GDM: Standard Tastaturlayout wählen

Sollte das default Keyboardlayout abgeändert werden - oder von "en" auf deutsch (sowie andere Sprachen) umgestellt werden, muss die ~/.dmrc wie folgt konfiguriert werden:

[Desktop]
 Language=de_DE.UTF-8
 Layout=de   nodeadkeys

GDM: Beim Einloggen Befehle ausführen

Bei GDM ist es möglich beim Einloggen (Bash) Befehle auszuführen. Dazu muss lediglich im Home Verzeichnis des Benutzers die Datei .xprofile angelegt werden. Die Befehle in dieser Datei werden dann beim Einloggen ausgeführt.

#!/bin/sh
#
# ~/.xprofile
#
# Executed by gdm at login
#

GDM: root login ermöglichen

Achtung: Es wird davon abgeraten, ein login als root zu ermöglichen. Solltest Du diese Funktion trotzdem verwenden wollen, so sei Dir über die Sicherheitsrisiken bewusst.

Hierbei ist das Editieren der Konfigurationsdatei /etc/gdm/custom.conf von Nöten; folgende Zeilen müssen ergänzt werden:

[security]
AllowRoot=true

SLiM: Halt / Reboot

Um den Rechner aus SLiM heraus herunterzufahren oder neu zu starten als Username einfach halt bzw. reboot eingeben und mit dem root-Passwort bestätigen. (Falls in der slim.conf ein default-user gesetzt ist einfach einmal Enter drücken, oder ein falsches Passwort eingeben ;-) ,um den Usernamen eingeben zu können.)

LightDM testen

Man kann LightDM mit folgendem Kommando testen:

$ lightdm --test-mode -c /etc/lightdm/lightdm.conf

LightDM starten

LightDM kann auch mit

systemctl start lightdm.service 

gestartet werden.

systemctl enable lightdm.service 

aktiviert LightDM Beim Booten.

Galerie

Alle hier vorgestellten Login-Manager nach dem ersten Start mit Standard-Einstellungen bei 800×600 Pixeln Auflösung, installiert in QEMU.

Weblinks

Todo

  • LightDM überarbeiten
  • Screenshots ergänzen