SelfLinux » Basiskonzepte für Benutzer » An- und Abmelden » Teil 1 SelfLinux-0.8.0
« zurück allgemeine Kommandosyntax »
SelfLinux logo
OrdnerAn- und Abmelden Revision: 1.1.2.5
Autor: Matthias Kleine
Layout: Johnny Graber
Lizenz: GFDL

1 Anmelden und Abmelden


1.1 Nach dem Booten

Linux hat gebootet und wartet auf die Anmeldung eines Benutzers. Der lapidare Login-Prompt soll jedoch nicht darüber hinwegtäuschen, daß das Linux-System bereits zu diesem Zeitpunkt in voller Blüte steht. Befindet sich der Rechner beispielsweise in einem Netzwerk, ist er bereits jetzt in der Lage, Netzwerkanfragen pflichtgemäß zu beantworten. Diese Dienste sind von der Anmeldung eines Benutzers, auch von root, völlig unabhängig.

Wenn Linux Sie mit einer grafischen Oberfläche zum Anmelden empfängt, wurde bereits Vorarbeit von anderer Seite geleistet. Gerade die neueren "Easy"-Distributionen bieten dies heute meist an, um den Benutzer garnicht erst mit der gefürchteten Kommandozeile in Kontakt kommen zu lassen. Da wir Linux jedoch auf den Grund gehen wollen, lassen wir uns nicht entmutigen und betrachten den Anmeldevorgang etwas genauer. Das Thema "Grafischer Login" behandeln wir weiter unten.



1.2 Das erste Einloggen

Ein Benutzerkonto in der EDV besteht immer mindestens aus einem Benutzernamen und einem Paßwort. Diese beiden Daten sind auch unter Linux erforderlich, um sich erfolgreich anmelden zu können. Wenn Sie Ihren Linux-Rechner selbst installiert haben, mußten Sie während des Installationsvorgangs zu irgendeinem Zeitpunkt ein Paßwort für den Benutzer root angeben. root ist auf jedem Linux-System zu finden und mit besonders weitreichenden Rechten ausgestattet. Seine Rolle wollen wir später noch sehr ausführlich betrachten. Vorläufig ist der root-Account die einzige Möglichkeit für Sie, sich beim System anzumelden. Geben Sie daher ein:

login: root
password: ***

wobei *** für das Paßwort steht, das Sie während des Installationsvorganges angegeben haben. Die Eingabe des Passwortes wird dabei in der Konsole aus Sicherheitsgründen in aller Regel nicht angezeigt. Einige Distributionen geben Ihnen während der Installation auch die Möglichkeit, einen Beispielbenutzer anzulegen. Wenn Sie dies getan haben, sollten Sie sich zunächst nur unter diesem Konto anmelden. Ein Grundsatz für die Arbeit mit Linux, den ein Linux-Neuling garnicht ernst genug nehmen kann, lautet: Arbeite niemals als root, wenn es nicht unbedingt notwendig ist! Dieser Grundsatz gilt wohlgemerkt auch für erfahrene Linux-Benutzer. Der Neuling sollte ihn sich jedoch ganz besonders zu Herzen nehmen, um das frisch installierte Linux-System vor allzu großem Erkundungstrieb zu schützen. Sollte Ihr System von einem Administrator eingerichtet worden sein, hat dieser sicherlich ein Konto für Sie vorbereitet und Ihnen die Anmeldedaten mitgeteilt. Auch dann können Sie dem folgenden Beispiel folgen:

login: <beispielname>
password: ***

Verfügen Sie jedoch lediglich über einen root-Zugang, so wird Ihre erste (und vorläufig hoffentlich letzte) Handlung als root das Anlegen eines neuen Benutzers sein.



1.3 Einen Standardbenutzer anlegen

Das Kommando zum Anlegen eines Benutzers ist useradd. Die notwendigen Benutzerinformationen werden useradd einige Parameter übergeben:

root@linux ~/ # useradd -g users -d /home/<benutzername> -m <benutzername>

Die Option -g (group) ordnet den neuen Benutzer einer Gruppe mit bestimmten Rechten zu. -d (directory) gibt ein Heimatverzeichnis für den Benutzer an, und -m sorgt dafür, daß dieses Heimatverzeichnis inklusive einer Reihe wichtiger Initialisierungsdateien sofort angelegt wird. Nach dem Aufruf von useradd ist der neu angelegte Benutzer jedoch noch deaktiviert. Um ihn zu aktivieren, müssen Sie ihm noch ein Paßwort zuweisen. Dies geschieht mittels des Kommandos

root@linux ~/ # passwd <benutzername>
root@linux ~/ # Kennwort eingeben
root@linux ~/ # Kennwort bestätigen

Nach dem Absetzen des Kommandos fordert Linux Sie auf, ein Paßwort einzugeben. Wie üblich muß die Eingabe danach noch einmal bestätigt werden. Haben die Paßwörter übereingestimmt, ist der neue Benutzer vollständig eingerichtet und aktiviert. Sie können sich nun mittels exit (mehr dazu weiter unten) als root abmelden und mit den neuen Benutzerdaten wieder anmelden. Dabei können Sie sich sicher sein, keine wichtigen Systemdateien zu beschädigen.



1.4 Textkonsolen

Linux bietet Ihnen standardmäßig die Möglichkeit, bis zu 6 Textkonsolen zu benutzen. Auf jeder Konsole ist eine separate Anmeldung erforderlich. Das Hin-und Herschalten erfolgt mittels der Tastenkombinationen ALT+F1 bis ALT+F6. Die Anzahl von 6 Konsolen (auch "virtuelle Terminals") wird in der Datei /etc/ inittab festgelegt - wie Sie diese ändern können, werden Sie später im Kapitel "Terminalkonfiguration" erfahren. Vorläufig sollte lediglich die Möglichkeit interessant für Sie sein, Ihre Arbeit durch die Nutzung mehrerer Arbeitsflächen besser zu strukturieren. Möglich ist dabei die Verteilung der Arbeit eines Benutzers auf mehrere Arbeitsflächen ebenso wie die Anmeldung mehrerer unterschiedlicher Benutzer. Ihrer Fantasie beim Einsatz der Konsolen sind dabei keine Grenzen gesetzt.



1.5 Technische Hintergründe

Da wir die Absicht verfolgen, Linux näher kennenzulernen und es nicht einfach nur oberflächlich zu benutzen, seien an dieser Stelle bereits einige technische Details genannt, die in späteren Kapiteln wieder auftauchen werden. Der Begriff Terminal stammt aus der Großrechnerwelt und bezeichnet dort den Anschluß eines Bildschirms mit Tastatur an einen Rechner. Aufgrund der hohen Kosten für diese Rechenanlagen waren meist viele Benutzer über solche Terminals mit dem Rechner verbunden. Terminals unterscheiden sich jedoch auf elektronischer Ebene stark von der heute üblichen Monitor/Tastatur-Konstruktion. Linux emuliert diese gleichsam historische Situation durch seine virtuellen Terminals. Die beiden gemeinsame Beschränkung liegt in der geringen Fähigkeit zur Darstellung bildhafter Information.

Nach dem Booten startet der Kernel das Programm /sbin/init, das eine Vielzahl von Aufgaben zu erledigen hat. Eine dieser Aufgaben ist der Aufruf des Programmes mingetty. mingetty ist eine minimale Version von getty, das wir ebenfalls noch näher kennenlernen werden. Es ist für die Öffnung der einzelnen virtuellen Terminals zuständig und legt deren Modus fest. Die Terminals sind jeweils als tty1, tty2 (tty für "Teletype") usw. bezeichnet und intern speziellen Gerätedateien zugeordnet. mingetty erzeugt auch die Ausgabe einer Zeile wie

Welcome to SuSE Linux 7.3 (i386) - Kernel 2.4.14 (tty1)

die es aus der Datei /etc/issue liest. Schließlich ruft es das Programm /bin/login auf, das die eigentliche Anmeldung des Benutzers übernimmt. login gibt einen Prompt auf dem Bildschirm aus und wartet auf die Eingabe des Benutzernamens. War die Anmeldung erfolgreich, so zeichnet sich login für eine Ausgabe wie

1 failure since last login. Last was 14:07:35 on tty1.
You have new mail in /var/spool/mail/<benutername>
Last login Wed Dez 22 11:15:24 on tty1
Have a lot of fun...

verantwortlich. Wie Sie sehen, erhalten Sie eine Reihe nützlicher Auskünfte über fehlgeschlagene Login-Versuche, neue Mail und den letzten Login, und natürlich ist auch diese Ausgabe konfigurierbar. Schließlich startet login das Programm, das dem Benutzer in der Datei /etc/passwd zugeordnet ist. Im allgemeinen wird dies eine Shell sein, unter Linux praktisch immer die Bourne again shell (bash). Von all dem müssen Sie als Benutzer eigentlich nichts wissen. Es soll jedoch verdeutlicht werden, daß schon die einfachsten Vorgänge häufig komplizierte technische Hintergründe haben. Während andere Betriebssysteme es häufig gar nicht ermöglichen, auf solche Vorgänge Einfluß zu nehmen, erweist sich Linux in dieser Hinsicht als hochgradig konfigurierbar. Von einem gewissen technischen Verständnis werden auch Sie als Benutzer profitieren. Sollten Sie es bis zum Systemverwalter bringen wollen, werden diese Kenntnisse hingegen unabdingbar sein.



1.6 Grafischer Login

Auch wenn Linux Sie bereits in grafischem Gewandt empfängt, kommen Sie um eine ordnungsgemäße Anmeldung nicht herum. Die Anmeldung wird in diesem Fall lediglich von anderen Programmen übernommen. Bevor diese Programme jedoch in Aktion treten können, müssen Grafikkarte und Monitor der Arbeitsstation korrekt angesteuert werden, um überhaupt eine grafische Oberfläche erzeugen zu können. Unter Linux wird dies immer über das sogenannte X Window System erledigt, über das wir noch ausführlich reden werden. Wichtig für Sie ist an dieser Stelle nur, daß X (wie man auch verkürzt sagt) ein Programm wie jedes andere und vom eigentlichen Betriebssystem unabhängig ist.

Daß unter der verschönten Oberfläche weiterhin derselbe Linuxkern waltet, können Sie leicht feststellen, indem Sie eine der Tastenkombinationen STRG+ALT+F1 bis STRG+ALT+F6 ausführen. Dort empfängt Sie wieder das oben beschriebene login. Zwischen den einzelnen tty's können Sie nun wieder mit ALT+F1 bis ALT+F6 wechseln. Parallel zu X ist also auch weiterhin eine Anmeldung auf den Textkonsolen über den Mechanismus init-mingetty-login möglich. Aus dem Textmodus zurück in die Fensterwelt gelangen Sie über die Tastenkombination ALT+F7.

X ist keineswegs in der Lage, einen Benutzerlogin durchzuführen, es ist allein für die Darstellung grafischer Elemente zuständig. Bei einem grafischen Login sind folglich weitere Programme beteiligt, welche die Grafikdienste von X in Anspruch nehmen. Das gebräuchlichste Programm für diese Zwecke ist der X Display Manager xdm. Nahe Verwandte des xdm, die immer mehr Verbreitung finden, sind der kdm und der gdm. Folgende Abbildung zeigt den K Display Manager kdm:


KDM
KDM

Die vielfältigen Einsatzmöglichkeiten dieser Programme sollen ausführlich im Kapitel zur X Window-Konfiguration besprochen werden und sind in der Regel nur für Systemverwalter interessant. An dieser Stelle genügt es uns zu wissen, daß der Anmeldung ein grundlegend anderer Mechanismus zugrundeliegt. Sie als Benutzer hingegen geben in beiden Fällen Ihren Benutzernamen und ein Paßwort ein und öffnen damit eine Benutzersession. Da es sich bei diesem Prozedere im einen wie im anderen Fall lediglich um ablaufende Programme handelt, ist klar, daß der Lauf des Betriebssystems von einer Anmeldung oder Abmeldung völlig unabhängig ist. Schauen wir uns zum Abschluß dieses Themas nun also an, wie Sie eine Session beenden können.



1.7 Wieder abmelden

Zur Abmeldung existiert ein eigenes Kommando, das Kommando logout. Dabei handelt es sich um ein sogenanntes eingebautes Kommando der bash. Wenn Sie logout eingeben, wird Ihre Login-Shell beendet, und das login Programm übernimmt wieder die Kontrolle über das jeweilige tty. Das logout Kommando tut seine Wirkung nur bei einem Aufruf von der eigentlichen Login-Shell aus. Haben Sie innerhalb Ihrer Login-Shell weitere Shells geöffnet, funktioniert logout nicht. In diesem Fall müssen Sie exit eingeben.

Was bedeutet das übrigens, wenn hier gesagt wird, daß login wieder die Kontrolle über das tty übernimmt? Woher weiß login überhaupt von seinem Glück? Wir möchten auch hier bereits etwas auf spätere Kapitel vorgreifen. Vereinfacht gesagt meldet jedes Programm unter Linux (und auch anderen Betriebssystemen) an seinen Aufrufer zurück, daß es beendet wurde. Zu diesem Zweck schickt es einen sogenannten Rückgabewert an das aufrufende Programm. In unserem Fall wurde die bash von login gestartet. login erhält also einen Rückgabewert, der ihm anzeigt, daß die Benutzersession ordnungsgemäß beendet wurde. Es reagiert auf diese Rückmeldung, indem es sofort wieder eine Aufforderung zum Login auf dem Bildschirm ausgibt.

Wenn die Anmeldung über einen grafischen Login erfolgt ist, können Sie sie in praktisch allen Umgebungen über die rechte Maustaste und dann das Listenelement "Abmelden" oder auch "Exit", "Logout" oder ähnliche Einträge beenden. Der technische Ablauf unterscheidet sich wieder von einem gewöhnlichen Logout, da ein Display Manager die Verwaltung einer Benutzersession, wie schon angedeutet, auf ganz andere Weise durchführt. In jedem Fall versetzt er das Terminal wieder in einen Loginzustand und wartet auf die nächste Anmeldung. Wir haben damit alle Vorbereitungen getroffen, um einige weitere Linux-Eigenschaften zu erkunden. Im nächsten Abschnitt beginnen wir mit einigen Bemerkungen zu der Verwendung von Kommandos.



« zurück allgemeine Kommandosyntax »
Inhalt