27.9 login
Passworteingabe
Nachdem der Benutzername eingegeben worden ist, startet getty das Programm /sbin/login. Dieses gibt die Aufforderung zur Passworteingabe auf dem Terminal aus. login verschlüsselt das eingegebene Passwort und vergleicht es dem ebenfalls verschlüsselten Passwort-String des Benutzereintrags in der Passwortdatei /etc/shadow. Stimmen beide verschlüsselten Passwörter überein, so wurde das Passwort korrekt eingegeben.
Anschließend setzt login die User- und Gruppen-ID des Benutzers sowie einige Umgebungsvariablen.
Variable | Beschreibung |
Heimatverzeichnis des Benutzers (/home/user) |
|
Suchpfade für Programmdateien |
|
Mailbox des Benutzers |
|
Login-Namen des Benutzers |
27.9.1 Shellstart
Nachdem login seine Tätigkeiten verrichtet hat, werden die Willkommensmeldung und die Meldung des Tages ausgegeben. Letztere findet sich in der Datei /etc/motd. [Fn. »motd« steht für »message of the day«. Diese Datei wurde besonders in den Anfängen der Unix-Netzwerke dazu genutzt, um die Systembenutzer über Neuigkeiten auf dem (trotz seines Namens schrankgroßen) Minicomputer, den sie sich teilten, zu informieren. Damals musste noch für Rechenzeit, die man heute in jedem Handheld-PC vorfindet, teuer bezahlt werden – und viele Wissenschaftler waren froh darüber, dass sie diese nutzen durften. Um sich in diese Zeit zu versetzen, empfiehlt sich im Übrigen die Lektüre des Buches »Kuckucksei« [Stoll89].] Anschließend startet login die für den Benutzer als Login-Shell festgelegte Shell. Unter Linux-Systemen ist dies in der Regel die bash. [Fn. Fast immer ist die sh (Bourne-Shell) ein Link auf die bash (Bourne Again Shell).]
Der Benutzer kann nach dem Shellstart die Arbeit am System beginnen und befindet sich dabei – sofern es in der Datei /etc/passwd festgelegt und vorhanden ist – in seinem Heimatverzeichnis, andernfalls im Root-Verzeichnis.
Listing 27.31 Start der Terminal-Sitzung
Last login: Thu Aug 4 16:37:34 2005 from 192.168.0.5
Linux 2.4.29.
43rd Law of Computing:
Anything that can go wr
fortune: Segmentation violation – Core dumped
swendzel@yleigu:\~{}#
27.9.2 Beenden einer Terminal-Sitzung
Die Beendigung einer Terminal-Sitzung wird je nach Shell etwas anders durchgeführt. Generell gilt: Das Kommando exit funktioniert immer. Bei einigen Shells genügt auch die Tastenkombination Strg + D, um die Shell zu verlassen. Die bash liefert bei dieser Kombination jedoch die Ausgabe »Use logout/exit to leave the shell«. Damit wären wir auch schon bei Möglichkeit Numero drei – dem Kommando logout. Dieses Kommando dient zum Verlassen der Login-Shell, jedoch nicht zum Verlassen einer normalen Shell-Session.
Das exit-Kommando wird zum Verlassen der Login-Shell benutzt, eignet sich jedoch auch zum Verlassen einer Shell, die innerhalb einer anderen Shell gestartet wurde. Das Kommando logout wird nur zum Verlassen der Login-Shell verwendet. Einige Shells (wie die Z-Shell) bieten die Tastenkombination Strg + D zum Verlassen der Shell an.
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.