

	\documentclass[a4paper,11pt]{article}
	\usepackage{ngerman}
	\usepackage[latin1]{inputenc}
	\setlength\parskip{\medskipamount}
	\setlength\parindent{0pt}
	\begin{document}

	
 % anmelden_abmelden
 % Copyright Matthias Kleine
 % Lizenz: GFDL
 % 
 % $Name: $
 % $Revision: 1.1.2.6 $
 % $Source: /cvsroot/selflinux/tutorial/userbasics/konzepte_basic/basiskonzepte,v $
 % SelfLinux-0.7.2
 %
 % Diese Datei ist Teil von SelfLinux http://www.selflinux.de
 %
 %%% $Id: anmelden_und_abmelden,v 1.1.2.6 2002/11/10 19:28:16 std Exp $

	\title{An- und Abmelden}


	
	    \author{Matthias Kleine}
	    %\url{mailto:kleine_matthias@gmx.de}
    

	\maketitle

	
	
	%\ref{../index.tex}
	
		%\ref{konzepte_basic1.tex}
		Basiskonzepte für Benutzer
	\ref{anmelden_abmelden}

    \par{Layout}
    Johnny Graber
	    %\url{mailto:selflinux@jgraber.ch}
    
    	\par{Lizenz}
	GFDL
 
	\tableofcontents{}

        
	\section{Anmelden und Abmelden} \label{d18e50}
        
  
  \subsection{Nach dem Booten} \label{d18e55}
        
   

   
  \par
  
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. 
   

   
  \par
  
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.
   
  

  \subsection{Das erste Einloggen} \label{d18e67}
        
   

   
  \par
  
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:
   
   
    \begin{tt} \begin{scriptsize} login: \end{scriptsize} \end{tt} \linebreak
    \begin{tt} \begin{scriptsize} root\linebreak\end{scriptsize} \end{tt} \linebreak
    \begin{tt} \begin{scriptsize} password: \end{scriptsize} \end{tt} \linebreak
    \begin{tt} \begin{scriptsize} ***\linebreak\end{scriptsize} \end{tt} \linebreak
   
  
   
  \par
  
wobei *** für das Paßwort steht, das Sie während des Installationsvorganges
angegeben haben. 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:
   

   
    \begin{tt} \begin{scriptsize} login: \end{scriptsize} \end{tt} \linebreak
    \begin{tt} \begin{scriptsize} <beispielname>\linebreak\end{scriptsize} \end{tt} \linebreak
    \begin{tt} \begin{scriptsize} password: \end{scriptsize} \end{tt} \linebreak
    \begin{tt} \begin{scriptsize} ***\linebreak\end{scriptsize} \end{tt} \linebreak
   

   
  \par
  
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.
   
  

  \subsection{Einen Standardbenutzer anlegen} \label{d18e112}
        
   


   
  \par
  
Das Kommando zum Anlegen eines Benutzers ist {\bf useradd}. Die 
notwendigen Benutzerinformationen werden useradd einige Parameter
übergeben:
   
   
     \begin{tt} \begin{scriptsize} root@linux \~{}/ \# 
useradd -g users -d /home/\verb+<+benutzername\verb+>+ -m \verb+<+benutzername\verb+>+
     \end{scriptsize} \end{tt} \linebreak 
   
   
   
  \par
  
Die Option {\bf -g} (group) ordnet den neuen Benutzer einer 
Gruppe mit bestimmten Rechten zu. {\bf -d} (directory)
gibt ein Heimatverzeichnis für den Benutzer an, und
{\bf -m} sorgt dafür, daß dieses Heimatverzeichnis inklusive 
einer Reihe wichtiger Initialisierungsdateien sofort angelegt wird. 
Nach dem Aufruf von {\bf 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
   

   
    \begin{tt} \begin{scriptsize} user@linux \~{}/ \$ 
passwd \verb+<+benutzername\verb+>+
     \end{scriptsize} \end{tt} \linebreak 
    \begin{tt} \begin{scriptsize} user@linux \~{}/ \$ 
Kennwort eingeben
     \end{scriptsize} \end{tt} \linebreak 
    \begin{tt} \begin{scriptsize} user@linux \~{}/ \$ 
Kennwort bestätigen
     \end{scriptsize} \end{tt} \linebreak 
   

   
  \par
  
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 {\bf 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.
   
  

  \subsection{Textkonsolen} \label{d18e163}
        
   

   
  \par
  
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.
   
  

  \subsection{Technische Hintergründe} \label{d18e190}
        
   

   
  \par
  
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.
   

   
  \par
  
Nach dem Booten startet der Kernel das Programm {\bf /sbin/init}, 
das eine Vielzahl
von Aufgaben zu erledigen hat. Eine dieser Aufgaben ist der Aufruf des
Programmes {\bf mingetty}. {\bf mingetty} ist eine 
minimale Version von {\bf 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
   
   
    \begin{tt} \begin{scriptsize} Welcome to SuSE Linux 7.3 (i386) - Kernel 2.4.14 (tty1)\end{scriptsize} \end{tt} \linebreak
   

   
  \par
  
die es aus der Datei /etc/issue liest. Schließlich ruft es das
Programm {\bf /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
   
   
    \begin{tt} \begin{scriptsize} 1 failure since last login. Last was 14:07:35 on tty1. \linebreak You have new mail in /var/spool/mail/\verb+<+benutername\verb+>+ \linebreak Last login Wed Dez 22 11:15:24 on tty1 \linebreak Have a lot of fun...\end{scriptsize} \end{tt} \linebreak
   


   
  \par
  
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 
{\bf 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
({\bf 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.
   
  

  \subsection{Grafischer Login} \label{d18e247}
        
   

   
  \par
  
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.
   

   
  \par
  
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 {\bf 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.
   

   
  \par
  
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 {\bf xdm}. Nahe Verwandte des xdm, die immer mehr 
Verbreitung
finden, sind der {\bf kdm} und der {\bf gdm}. 
Folgende Abbildung zeigt den K Display
Manager kdm:
   

   
KDM
    

   
  \par
  
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.
   
  

  \subsection{Wieder abmelden} \label{d18e337}
        
   

   
  \par
  
Zur Abmeldung existiert ein eigenes Kommando, das Kommando 
{\bf logout}. Dabei handelt es sich um ein sogenanntes 
eingebautes Kommando der {\bf bash}. Wenn Sie
{\bf logout} eingeben, wird Ihre Login-Shell beendet, und das 
login Programm übernimmt wieder die Kontrolle über das jeweilige tty. Das 
{\bf 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 {\bf logout}
nicht. In diesem Fall müssen Sie {\bf exit} eingeben.
   

   
  \par
  
Was bedeutet das übrigens, wenn hier gesagt wird, daß {\bf login} 
wieder die Kontrolle über das tty übernimmt? Woher weiß {\bf 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 {\bf bash} von {\bf login} 
gestartet. {\bf 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.
   

   
  \par
  
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.
   
  
 
	\ref{inhalt.tex}


	\end{document}
	
