Zum Inhalt springen

greetd

Aus wiki.archlinux.de

„Greetd“ wurde von Dirk (Diskussion) als in Bearbeitung markiert. Um Bearbeitungskonflikte zu vermeiden, kontaktiere Dirk (Diskussion) bitte, bevor du den Artikel bearbeitest.


greetd ist ein minimalistisch und vom Zielsystem sehr unabhängig gehaltener Login-Manager. Sein Zweck ist es, Greeter zu starten, also jene Komponente eines Login-Managers, die zur Eingabe von Benutzername und Kennwort auffordert – allerdings ohne die Komplexität und Systemgebundenheit klassischer Displaymanager.

Installation

Das Programm ist als greetd in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S greetd

Standardmäßig wird greetd-agreety mitgeliefert. Dies ist ein sehr minimalistischer, textbasierter Greeter. Es besteht die Möglichkeit, diverse weitere Greeter zu installieren (siehe Tabelle und Links).

Funktionsweise

Der Greeter `tuigreet` während der Anmeldung auf einem Testsystem.

greetd ist nicht darauf festgelegt, explizit ein spezielles Programm zu starten, sondern kann sehr flexibel alle starten, was man von der Befehlezeile aus starten kann. Das ist derart flexibel, dass die Greeter, von denen das Programm den Namen abgeleitet hat, „einfach nur Programme“ sind, die von greetd gestartet werden.

Ablauf

Der Ablauf geht davon aus, dass der ausgeführte Befehl ein Greeter ist.

  1. Das System wird gebootet
  2. Der greetd-Service startet
  3. Die Default-Session wird geladen
  4. Der definierte Greeter wird gestartet
  5. Der Greeter erstellt mittels der JSON-API von greetd eine Authentifizierungs-Session
  6. greetd handelt mit PAM die Authentifizierung aus
  7. greetd gibt das Ergebnis an den Greeter zurück
  8. Der Greeter beendet sich und startet einen definierten Befehl

Wie wie Authentifizierung stattfindet, und was der Greeter mit dem Ergebnis macht, ist abhängig davon, wie PAM konfiguriert ist, und welchen Zweck der Greeter hat.

Statt eines Greeters kann jedes beliebige andere Programm gestartet werden.

Konfiguration

Die Konfiguration von greetd findet in /etc/greetd/config.toml statt, und wird in der greetd-Manpage aus Sektion 5 ausführlich erklärt.

/etc/greetd/config.toml
[terminal]
vt = next
switch = true

[default_session]
command = "tuigreet --issue --remember --cmd labwc"
user = "greeter"

Diese Beispielkonfiguration benutzt das nächstmögliche virtuelle Terminal, wechselt zu diesem sobald greetd startet, lädt den tuigreet-Greeter (siehe unten), dieser Zeigt /etc/issue an, merkt sich den zuletzt erfolgreich authentifizierten Benutzernamen,und startet nach erfolgreicher Authentifizierung labwc.

Automatisch anmelden

Der automatische Login mit einem definierten Benutzernamen kann mittels der initial_session stattfinden.

/etc/greetd/config.toml
[terminal]
vt = next
switch = true

[initial_session]
command = "labwc"
user = "username"

Dies startet ohne weiteres Zutun labwc mit den Berechtigungen und der Konfiguration des Accounts username.

Einige weitere Greeter

Diese Liste zeigt nur Greeter mit Alleinstellungsmerkmalen auf.

Paket Darstellung Startbefehl (command = "...")
greetd-agreety Einfaches Texteingabeprompt, ideal für Systeme ohne GUI agreety --cmd zsh
greetd-ddlm-gitAUR Sehr einfacher Greeter der im Framebuffer läuft ddlm --target labwc
greetd-gtkgreet Einfacher grafischer Greeter auf GTK-3-Basis cage -s -- gtkgreet -c labwc
greetd-tuigreet Texteingabeprompt mit anpassbarem textuellem Design tuigreet --cmd labwc
nwg-hello Umfangreicher grafischer Greeter (GTK 3 & Python) spezielle Konfiguration

Siehe auch

  • Cage wird für einige Greeter empfohlen
  • greetd positioniert sich im Wayland-Umfeld