GDM und pam-autologin
So 26.10.2025

Um auf meinem privaten Rechner beim Start kein Passwort für den Login eingeben zu müssen, aber gleichzeitig den GNOME Keyring zu entsperren, verwende ich sein einiger Zeit pamautologin. Das grundsätzliche Setup funktioniert wie im Wiki beschrieben, allerdings gibt es insbesondere mit GDM einige Besonderheiten und kleinere Anpassungen, die ich vorgenommen habe.

GDM Setup

Zunächst einmal verwendet der pam-Stack von GDM direkt system-local-login anstatt login, wenn man also nur der Anleitung im Wiki folgt funktioniert erst einmal nichts. Trotzdem sollte man erst mit der beschriebenen Config anfangen und sich einmalig in einer tty anmelden. Dadurch wird das Passwort gespeichert und man kann in einer zweiten tty testen, ob das Setup grundsätzlich funktioniert.

Dann kann man auch den normalen pam-Stack von GDM anpassen und entweder pam_autologin.so hinzufügen, oder aber system-local-login durch login für die Authentifizierung ersetzen. Beides hat bei mir funktioniert, da allerdings die Bildschirmsperre den gleichen Stack verwendet, ist diese auch "kaputt" und man entsperrt den PC durch simples drücken der Enter-Taste. Da man dann doch hin und wieder den PC sperren möchte, würde ich empfehlen dies nicht zu tun. Außerdem habe ich nach dem ersten Setup pam_autologin.so auch wieder aus der login config entfernt und verwende stattdessen die folgende Konfiguration.

GDM Autologin

Da das Ziel sowieso ist, dass man sich automatisch anmeldet, kann man pam-autologin auch direkt mit der Autologinfunktion von GDM kombinieren. Dadurch bleibt die Bildschirmsperre intakt und man spart sich außerdem auf dem Loginscreen Enter zu drücken. Gleichzeitig ist der Gnome Schlüsselbund dann korrekt entsperrt. Hierzu muss man /etc/pam.d/gdm-autologin anpassen:

  1. pam_autologin.so muss entsprechend hinzugefügt werden
  2. pam_gdm.so muss auskommentiert werden

Die vollständige Konfiguration sieht dann wie folgt aus:

auth       required                    pam_autologin.so
auth       required                    pam_shells.so
auth       requisite                   pam_nologin.so
auth       optional                    pam_permit.so
auth       required                    pam_env.so
# auth       [success=ok default=1]      pam_gdm.so
auth       optional                    pam_gnome_keyring.so

pam_gdm.so ist grundsätzliche eine interessante Alternative, wenn man für den Benutzerlogin und LUKS das gleiche Passwort verwendet, s.a. dieser reddit Post. Da ich LUKS allerdings mit einem Keyfile entschlüssele kommt diese Variante hier nicht in Frage.

Sonstiges

Noch ein paar weitere kleine Anpassungen.

Swaylock

Auch swaylock verwendet /etc/pam.d/login, sodass hier ähnlich wie in GDM das Passwort nicht mehr nötig ist, wenn man pam-autologin dort aktiviert. Um dies zu vermeiden, kann man system-local-login stattdessen in /etc/pam.d/swaylock verwenden.

Ly

Das Setup funktioniert wie in der originalen Doku beschrieben. Leider hat Ly zur Zeit keine Möglichkeit, den Loginprompt zu überspringen, d.h. man muss einmal Enter drücken auf dem Login Screen. Allerdings ohne ein Passwort eingegeben zu haben.

Symlink

Man kann grundsätzlich die Konfiguration für pam-autologin, welche unter /etc/security/autologin.conf liegt, auch auf einen externen Speicher (z.B. eine SD-Karte) packen, welche dann während des Bootvorgangs gemounted wird und einen Symlink unter /etc/security/autologin.conf verwenden. Allerdings geht dies nur, nachdem die Datei initial geschrieben wurde. Das Vorgehen ist wie folgt

  1. touch /etc/security/autologin.conf
  2. Login, welcher das Passwort in die Konfigurationsdatei schreibt
  3. Verschieben der Konfigurationsdatei
  4. ln -sf /path/to/autologin.conf /etc/security/autologin.conf

Der Vorteil ist, dass falls man die SD-Karte entfernt, automatisch wieder der normale Login mit Passwort funktioniert.

Falls man den externen Speicher mit nofail mountet, um den Bootvorgang nicht zu unterbrechen, sollte dieser fehlen, muss GDM explizit auf den Mount warten. Im folgenden Beispiel wird die verschlüsselte Partition via crypttab und fstab eingebunden und gdm so konfiguriert, dass der Service wartet, fall der externe Speicher verfügbar ist. Andernfalls wird nur ein Fehler ausgegeben, das System startet aber trotzdem:

/etc/crypttab

IMIL_DATA      UUID=00000000-0000-0000-0000-000000000000    /var/imil.key:LABEL=IMIL_ROOT nofail

/etc/fstab

/dev/mapper/IMIL_DATA    /run/media/fb/IMIL_DATA    vfat    defaults,nofail,x-systemd.device-timeout=10s,x-systemd.mount-timeout=10s,rw,uid=1000,gid=100,fmask=0177,dmask=0077,iocharset=iso8859-1 0 0

Und in /etc/systemd/system/gdm.service.d/override.conf dann:

[Unit]
After=run-media-fb-IMIL_DATA.mount
Wants=run-media-fb-IMIL_DATA.mount

Autor: Fabian Brosda

Erstellt: So 26.10.2025

Dieses Werk ist lizensiert unter CC BY 4.0CCBY

made on Arch Linux made with Emacs made with Org Mode Programming Socks tested on Firefox hosted on Github Inuyasha