# KDE Display Manager (Kdm)

Steffen
Hansen

    stefh@dit.ou.dk

Version 0.5-1, 9. Juli 1998

Dieses Dokument beschreibt den KDE Display Manager

Deutsches Handbuch des KDE Display-Managers Kdm

KDE
Display
Manager
Kdm

## Einführung

Der KDE Display Manager liefert einen Ersatz für xdm, den X Display Manager sowie ein kleines Dienstprogramm, Kdmdesktop, um hübsche Hintergründe zu zeichnen. Kdm ist xdm in einigen Bereichen überlegen:

- Kdm unterstützt Sitzungsangaben auf benutzerfreundliche Weise (xdm sagt dem Benutzer nicht, welche Angaben es erzeugen könnte).

- Kdm hat einen optionalen Knopf zum Herunterfahren des Systems (ähnlich wie die Anmeldebox von NT).

- Kdm bietet eine optionale Ansicht von Benutzern im System (Idee gestohlen von der Anmeldebox von Irix).

- Kdm sieht viel besser aus als xdm ;-)

- Kdm kann über eine graphische Oberfläche eingerichtet werden (Teil des KDE Kontrollzentrums)

## Installation von Kdm

### Einrichtung von kdm

Siehe die README-Datei! Sie wird Ihnen sagen, wie Kdm kompiliert wird. Aber normalweise brauchen Sie Kdm gar nicht selbst zu kompilieren, weil er Teil des kdebase-Pakets ist und zusammen mit den anderen Programmen darin kompiliert wird. Danach wird er in das Verzeichnis $KDEDIR/bin installiert.

Beachten Sie: `make install` überschreibt Ihre vorige Version von `kdmrc`.

Während der Installation wird eine neue Fassung der Datei `Xsetup&lowbar;0` eingerichtet. Diese enthält v.a. die Zeile

    kdmdesktop

zur Darstellung einiger hübscher Hintergründe (Bilder und Farben). Normalerweise finden Sie diese Datei im xdm Konfigurationsverzeichnis `/etc/X11/xdm/XSetup&lowbar;0` (Red Hat) oder `/usr/X11R6/lib/X11/xdm/XSetup&lowbar;0` (SuSE). Falls Ihr KDEDIR nicht /opt/kde sein sollte, müssen Sie vielleicht den Pfad zu kdmdesktop ändern.

Wenn Sie die Option "PAM" auswählen (was normalerweise bei Red Hat 5 und 5.1 der Fall ist), dann sollten Sie /etc/pam.conf nach folgenden Zeilen durchsuchen:

    # xdm authorization
    xdm    auth       required     pam_unix_auth.so
    xdm    auth       required     pam_unix_acct.so

Falls diese Zeilen nicht vorhanden sind, sollten Sie sie einfügen.

Jetzt ist es Zeit, Kdm zu testen. Sie sollten Ihr System dazu auf ein Runlevel bringen, das kein xdm betreibt. Um das zu erreichen, bearbeiten Sie die Datei `/etc/inittab`, und zwar die Zeilen:

    # default runlevel
    id:3:initdefault:

Der Wert hinter "id:" steht für Ihr standardmäßiges Runlevel und ist sehr von Ihrer Distribution abhängig, aber immer ausführlich erklärt. Die Runlevel für ein graphisches Login (xdm) für die verbreitetsten Distributionen sind:

- 5 für Red Hat 3.x, 4.x und 5.x

- 4 für Slackware

- 3 für SuSE 4.x und 5.x

Danach können Sie versuchen, Kdm mit folgendem Befehl von Ihrer Lieblings-Shell aus zu starten:

    > kdm -nodaemon

Wenn Sie eine Login-Box bekommen und sich anmelden können, ist die Sache auf dem besten Weg. Was jetzt noch schiefgehen kann: daß womöglich der "Runtime Linker" die Bibliotheken Qt oder KDE nicht findet. Wenn alles funktioniert, können Sie darangehen, xdm durch Kdm zu ersetzen. Das Vorgehen dabei ist wieder von der Distribution abhängig:

- Bei Red Hat bearbeiten Sie `/etc/inittab`: halten Sie Ausschau nach "xdm", und ersetzen Sie es durch "kdm" (einschließlich der korrekten Pfadangaben).

- Bei SuSE müssen Sie die Datei `/sbin/init.d/xdm` bearbeiten und folgende erste Zeile hinzufügen:

      . /etc/rc.config
      DISPLAYMANAGER=kdm
      export DISPLAYMANAGER

- Bei anderen Distributionen ist es vermutlich eher wie bei Red Hat, aber ich bin leider nicht ganz sicher.

Bei jeder Distribution, die ich kenne, müssen Sie das Runlevel in der Datei /etc/inittab ändern (auf "5" in Red Hat, auf "3" in SuSE wie oben erwähnt oder auch in der Datei inittab selbst). Wenn Sie eine binäre Distribution der KDE Bibliotheken benutzen, vergewissern Sie sich, daß Kdm wirklich dort installiert ist, wo die Bibliotheken KDE vermuten. Normalerweise ist das wiederum /opt/kde/bin. Wenn Sie die Datei inittab nicht gerne ändern möchten, können Sie auch stattdessen xdm z.B. in xdm.bak umbenennen und an die Stelle von xdm einen symbolischen Link auf Kdm legen. Kdm wird dann die allgemeinen Einstellungen für Display Manager aus den Konfigurationsdateien von xdm entnehmen und die spezifischen für kdm selbst aus der Datei &dollar;KDEDIR/share/config/kdmrc. Kdmdesktop wird ebenfalls die Angaben in kdmrc lesen.

### Die Benutzung anderer Fenstermanager mit Kdm

Wenn Sie mit einem anderen Fenstermanager arbeiten müssen oder einfach von Zeit zu Zeit welche ausprobieren möchten, dann können Sie dazu die Auswahlfunktion benutzen, die in Kdm eingebaut ist. Diese Funktion läßt Sie einen Fenstermanager aus einer vorhandenen Liste auswählen. Dazu sind wiederum einige Änderungen in Konfigurationsdateien nötig. Zunächst müssen Sie Ihre Datei `Xsession` ändern, um die Parameter weitergeben zu können (Pfad: `/etc/X11/xdm/` bei Red Hat bzw. `/usr/X11R6/lib/X11/xdm/` bei SuSE).

Um dies zu tun, ändern Sie die Zeilen `'exec &dollar;startup'` zu `'exec &dollar;startup " &dollar;@"'` (ohne '). Danach müssen Sie die Datei /etc/xinitrc bzw. ˜/.xinitrc ändern (oder erstellen), um auf verschiedene Fenstermanager reagieren zu können. Das folgende Skript erlaubt den Start von drei verschiedenen Fenstermanagern. Sie können weitere hinzufügen, wenn Sie möchten. Vergessen Sie nicht, eine Kopie Ihrer ursprünglichen Datei `.xinitrc` nach `/etc/skel` zu kopieren, damit sie automatisch für jeden Benutzer erzeugt wird, den Sie in Zukunft anlegen.

    #!/bin/bash
    #
    # .xsession/.xinitrc
    #
    #Waehlen Sie einen Fenstermanager
    #

    defaultwm=kde
    #Setzen Sie den Fenstermanager auf $1, wenn er bereitgestellt wurde
    windowmgr=${1:-$defaultwm}

    #Starten Sie den entsprechenden Fenstermanager
    case ${windowmgr} in
      kde|kwm|kdestart)
    	WINDOWMANAGER=startkde
    	;;
      fvwm|fvwm2)
    	WINDOWMANAGER=fvwm2
    	;;

      fvwm95)
    	WINDOWMANAGER=fvwm95
    	;;

      *)    WINDOWMANAGER=windowmgr   # default for unknown wm's

    esac

    #
    #Ressourcen laden
    #

    if [ -f /usr/X11R6/lib/X11/Xmodmap ]; then
        xmodmap /usr/X11R6/lib/X11/Xmodmap
    fi

    if [ -f ~/.Xmodmap ]; then
        xmodmap ~/.Xmodmap
    fi

    if [ -f ~/.Xdefaults ]; then
        xrdb -merge ~/.Xdefaults
    fi

    if [ -f ~/.Xresources ]; then
        xrdb -merge ~/.Xresources
    fi
    #
    #Schliesslich: Fenstermanager starten
    #
    exec $WINDOWMANAGER

## Kdm einrichten

Es existiert ein graphisches Dienstprogramm für die Einrichtung von Kdm. Sie finden es im Menü K/Einstellungen/Anwendungen/. Mit diesem Dienstprogramm können Sie die Kdm-spezifischen Optionen einstellen, die in kdmrc gespeichert werden. Aber Kdm muß dennoch korrekt eingerichtet werden, ganz wie xdm. Also lesen Sie bitte weiter.

Die Kdm-spezifischen Optionen werden eingerichtet durch Bearbeiten der Datei "&dollar;KDEDIR/share/config/kdmrc". Darin gibt es drei Abschnitte:

### KDM

Die Schlüsselwerte in diesem Abschnitt sind:

    StdFont
    FailFont
    GreetFont
    GreetString
    SessionTypes
    LogoPixmap
    ShutdownButton
    Shutdown
    Restart
    UserView
    Users
    NoUsers
    SortUsers
    GUIStyle

Eine kurze Beschreibung dieser Schlüsselwerte:

*Font

  ...steht für eine Schriftzuordnung wie diese: Courier,12,5,iso-8859-1,50,0.

GreetString

  ...ist der Titel des Kdm-Anmeldefensters.

SessionTypes

  ...ist eine Liste von Sitzungs-Parametern, deren Elemente durch ";" voneinander getrennt sind. Voreingestellt ist `SessionTypes=kde;failsafe`. Das obige Beispiel benutzt zusätzlich die Fenstermanager fvwm2 und fvwm95.

LogoPixmap

  ...können Sie ändern, wenn Sie das Logo nicht mögen.

ShutdownButton, Shutdown and Restart

  ...bestimmt, wann der Knopf zum Herunterfahren des Systems erscheint. Es kann einen der folgenden Werte annehmen: `All`, `None`, `RootOnly` oder `ConsoleOnly`. "Shutdown" (Herunterfahren) und "Restart" (Neustart) sind die Befehle, die auf shutdown/restart hin gegeben werden. Sie sind voreingestellt auf `/sbin/halt` und `/sbin/reboot`. Die Bedeutung von "All" und "None" ("Niemand") dürfte klar sein. Wenn Sie "ConsoleOnly" auswählen, ist damit ein Herunterfahren des Systems von einem entfernten Rechner ausgeschlossen.

UserView

  ...zeigt bei einem Wert "1" eine graphische Darstellung der Benutzer im Kdm-Fenster.

Users

  ...ist eine Liste von Benutzernamen, die durch ";" voneinander getrennt sind. Sie wird in der graphischen Benutzeransicht angezeigt. Wenn `UserView` den Wert "1" hat und der Eintrag `Users` fehlt, dann sucht Kdm in der Paßwortdatei nach Benutzern. Es werden nur diejenigen Benutzer angezeigt, die einen Realnamen zu ihrem Anmeldenamen angegeben haben und die ein Persönliches Verzeichnis und eine Standardshell besitzenn -- der Rest wird übergangen. Kdm sucht außerdem in &dollar;KDEDIR/share/apps/kdm/pics/users/ nach einem Symbol für jeden Benutzer. Wenn dort ein Symbol der Form beispielnutzer.xpm existiert, dann wird Kdm das für die Darstellung von "beispielnutzer" verwenden. Andernfalls verwendet er default.xpm. Wenn Sie also kleine Bilder Ihrer Benutzer im System haben, dann plazieren Sie diese in &dollar;KDEDIR/share/apps/kdm/pics/users/, und haben Sie viel Spaß beim Anmelden mit Kdm! Beachten Sie: Kdm kann zwar Symbole verschiedener Größe verwenden, aber es wird wohl nicht sehr gut aussehen, sehr große und sehr kleine Symbole zu kombinieren.

NoUsers

  ...ist eine Liste von Benutzernamen, die durch ";" voneinander getrennt sind und die nicht dargestellt werden. Benutzen Sie diese Liste, um "Pseudo-Benutzer" wie `sync` oder `shutdown` aus der Benutzeransicht herauszufiltern.

SortUsers

  Wenn der Wert dafür "0" ist, dann wird die Benutzerliste in der Reihenfolge ausgegeben, in der sie eingelesen wurde. Die Voreinstellung ist, die Benutzer zu sortieren.

GUIStyle

  ...kann entweder den Wert `Motif` oder `Windows` haben.

### KDMDESKTOP

Dieser Abschnitt bestimmt den Hintergrund. Die Schlüsselwerte sind:

    BackgroundPicture
    BackgroundColor1
    BackgroundColor2
    BackgroundPictureMode

Eine kurze Beschreibung der Schlüsselwerte:

BackgroundPicture

  ...ist der Pfad zu einem Bild.

BackgroundColor&lsqb;1&verbar;2&rsqb;

  ...sind benannte Farben für einheitliche oder verlaufende Hintergründe.

BackgroundPictureMode

  ...kann eine der folgenden Optionen enthalten:

  `None &verbar; Tile &verbar; Scale &verbar; Center &verbar; TopLeft &verbar; TopRight &verbar; BottomLeft &verbar; BottomRight &verbar; Fancy`

  Beachten Sie, daß ein Hintergrund mit dem Wert `Fancy` zwar hübsch aussieht, aber den Programmablauf sehr verlangsamt.

### Locale

Dieser Abschnitt sollte nur einen einzigen Eintrag enthalten:

Language

  ...bedeutet die Sprache, die für Kdm benutzt werden soll. Sie kann unabhängig von KDE eingestellt werden. Die Werte sind die üblichen, nämlich en/de/fr/da usw.

## Die rechtlichen Dinge...

Kdm stammt ab von xdm -- was ist also mit dem Copyright? Kdm 0.1 wurde von Matthias Ettrich entwickelt. Alle späteren Versionen von Steffen Hansen `(stefh@dit.ou.dk)`

Kdm ist freie Software. Ich bin selbst nicht sicher, wie es mit seiner Lizenz aussieht, eben weil es eine Menge Code von xdm mit sich herumträgt. Jedenfalls habe ich festzustellen:

Kdm erfordert die Qt-Bibliothek, die dem Copyright von Troll Tech AS unterliegt. Frei verteilbare Programme können Qt gratis benutzen, siehe die Datei README.QT hinsichtlich der Details. Jeder hat das Recht, Kdm zu ändern und das Resultat weiterzuverteilen, solange mein Name erwähnt wird.

Und bei dieser Gelegenheit: Kdm wird zur Verfügung gestellt, wie er ist, ohne jede Garantie, auch nicht der Gewährleistung irgendeiner Zweckmäßigkeit, Marktfähigkeit oder Eignung für einen bestimmten Zweck.

Die Dokumentation wurde erweitert von Gregor Zumstein (`zumstein@ssd.ethz.ch)`. Letzte Aktualisierung vom 9. Juli 1998

Die ursprüngliche deutsche Übersetzung stammte von Oliver Hensel, die jetzt vorliegende von Thomas Diehl