Wie der xdm sich den letzten Benutzer merkt

Jahrelang habe ich kde verwendet, von den Anfängen bis zum ausgereiften Desktop-System. Mittlerweile ist mir kde zu mächtig, zu schwerfällig geworden, daher bin ich auf xfce4 umgeschwenkt und benutze jetzt nicht mehr den kdm als Anmelde-Manager , sondern den xdm. Da ich ein bequemer Mensch bin, mag ich es nicht jedesmal wieder den Benutzernamen einzugeben, wenn ich mich anmelde. Ich finde das Passwort ist völlig ausreichend. Leider unterstützt der xdm diese Funktionalität nicht, was mich dazu gebracht hat ein wenig zu patchen und den show previous User – Patch zu entwickeln.

Bei Problemen mit dem Patch bitte ich darum mit mir in Kontakt zu treten und nicht die xdm Entwickler damit zu behelligen.

Der Patch ist für die Version 1.0.5 des xdm entwickelt, eventuell passt er auch auf andere Versionen.

Der Patch erweitert den xdm, um die Funktionalität den Benutzernamen des letztern Benutzers im Username Feld des Anmeldedialogs anzuzeigen. Gesteuert wird die Funktionalität über eine neue Xresource in der Datei /etc/X11/xdm/Xresources bzw. in der Datei, die die Xresources für den xdm liefert und immer in der Datei /etc/X11/xdm/xdm-config angegeben ist.

Die neue Xresource heißt showPreviousUser und hat den Typ boolean, kann also auf wahr (true) oder false (falsch) gesetzt werden.

Beispiel:

        xlogin*showPreviousUser:	true

schaltet die Funktion ein und

        xlogin*showPreviousUser:	false

schaltet sie aus.

Ist die Funktion eingeschaltet, dann ermittelt der xdm den Benutzer, der zuletzt angemeldet war aus der Datei /var/log/wtmp.
Eine Beschreibung der Datei kann man sich mit „man wtmp“ anzeigen lassen.

Daher ist es notwendig, dass jede Anmeldung in der Datei wtmp registriert wird.
Normalerweise wird dies durch die beiden folgenden Einträge in den Skripten GiveConsole und TakeConsole erreicht.


/etc/X11/xdm/GiveConsole:
# causing serious grief.
#
# chown $USER /dev/console
# /usr/bin/sessreg -a -w "/var/log/wtmp" -u "/var/run/utmp" \
-x "/etc/X11/xdm/Xservers" -l $DISPLAY -h "" $USER

/etc/X11/xdm/TakeConsole:
#
chmod 622 /dev/console
chown root /dev/console
/usr/bin/sessreg -d -w "/var/log/wtmp" -u "/var/run/utmp" \
-x "/etc/X11/xdm/Xservers" -l $DISPLAY -h "" $USER

Sollten die beiden Dateien nicht existieren, so kann man die Namen in /etc/X11/xdm/xdm-config nach schauen.

Mehr braucht man nicht, jetzt kann man sich schon faul über den xdm anmelden und nur noch das Passwort eingeben.

Installation des Patches

  • Den Patch kann man hier downloaden.
  • Im xdm-1.0.5 Quellverzeichnis spielt man den Patch mit
                 patch -s -p0 </yourpath/xdm-1.0.5_showPreviousUser.patch

    ein. Natürlich muss man yourpath durch den Pfad zum Patchfile ersetzen.

  • Dann neu konfigurieren mit ./configure <Ihre Optionen>
  • Das Paket übersetzen mit make
  • Installieren mit make install oder einfach die drei Dateien libXdmGreet.la, libXdmGreet.so und libXdmGreet.a aus dem greeter Unterverzeichnis in das Installationsverzeichnis (normalerweise /usr/lib/X11/xdm) kopieren.
Teile diesen Beitrag

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

:bye: 
:good: 
:negative: 
:scratch: 
:wacko: 
:yahoo: 
B-) 
mehr...
 


Diese Seite verwendet Cookies. Mit der Nutzung von tuxlog erklärst Du Dich mit der Verwendung von Cookies einverstanden. Detaillierte Informationen über die Verwendung von Cookies auf dieser Website findest Du in der Datenschutzerklärung.

Nach oben scrollen