24.3 Verwaltung von Benutzern und Gruppen
24.3.1 exit, logout – eine Session oder Sitzung beenden
Mit beiden Befehlen beenden Sie eine Shell-Sitzung (eine Textkonsole oder ein Shell-Fenster). Gleiches würden Sie auch mit + erreichen.
24.3.2 finger – Informationen zu Benutzern abfragen
Mit finger können Sie detaillierte Informationen zu aktuell angemeldeten Benutzern abfragen (ähnlich wie mit who, nur dass die Terminals nicht einzeln aufgelistet werden):
finger
Login Name Tty Idle Login Time
hatt Marcus Fischer *:0 Jan 2 10:42
hatt Marcus Fischer pts/1 Jan 2 11:19
Ohne irgendwelche Optionen gibt finger zu allen aktiven Benutzern eine Informationszeile aus. Geben Sie einen Benutzernamen ein, so erhalten Sie eine detailliertere Auskunft (im Langformat):
finger marcus
Login: marcus Name: Marcus Fischer
Directory: /home/marcus Shell: /bin/bash
On since Mon Jan 2 10:42 (CET) on :0 (messages off)
On since Mon Jan 2 11:19 (CET) on pts/1 from :0.0
Natürlich können Sie auch zu allen anderen aktiven Benutzern dieses Langformat mit der Option -l ausgeben lassen. Wollen Sie einen Benutzer auf einem entfernten System suchen, müssen Sie benutzername@hostname für den Benutzer angeben.
24.3.3 groupadd etc. – Gruppenverwaltung
Eine neue Gruppe können Sie mit groupadd anlegen:
sudo groupadd [-g GID] gruppenname
Die ID einer Gruppe (GID) können Sie mit groupmod verändern:
sudo groupmod [-g neueGID] gruppenname
Sie löschen eine Gruppe wieder mit groupdel:
sudo groupdel gruppenname
24.3.4 groups – Gruppenzugehörigkeit ausgeben
Um alle Gruppen eines Benutzers zu ermitteln, wird groups verwendet. Wird groups ohne Angabe eines Benutzers ausgeführt, so werden alle Gruppen des aktuellen Benutzers ausgegeben.
24.3.5 id – eigene Benutzer- und Gruppen-ID ermitteln
Mit id können Sie die User- und Gruppen-ID eines Benutzers ermitteln. Geben Sie keinen bestimmten Benutzer an, so werden die UID und GID des aktuellen Benutzers ermittelt.
24.3.6 last – An- und Abmeldezeit eines Benutzers
Einen Überblick zu den letzten An- und Abmeldezeiten von Benutzern erhalten Sie mit last:
last
marcus pts/1 :0.0 Mon Jan 2 11:19 still logged in
marcus pts/1 :0.0 Mon Jan 2 10:51 - 11:11 (00:20)
wtmp begins Mon Jan 2 10:51:44 2006
Wollen Sie nur die Login-Zeiten eines einzelnen Users ermitteln, so müssen Sie diesen als Argument angeben.
24.3.7 logname – Name des aktuellen Benutzers
Mit logname erhalten Sie den Benutzernamen, der von getty in der Datei /var/run/utmp gespeichert wird.
24.3.8 newgrp – Gruppenzugehörigkeit wechseln
Mit newgrp kann ein Benutzer während einer Sitzung in eine andere Gruppe wechseln (in der er ebenfalls Mitglied ist). Wird keine Gruppe als Argument verwendet, so wird in eine Standardgruppe von /etc/passwd gewechselt. Als Argument wird der Gruppenname – wie er in /etc/group eingetragen ist – erwartet, nicht die Gruppen-ID.
24.3.9 passwd – Passwort ändern oder vergeben
Mit dem Kommando passwd können Sie die Passwörter aller Benutzer in der Datei /etc/passwd ändern. Damit hierbei wenigstens der Benutzer, der nicht zugleich Root ist, die Möglichkeit hat, sein eigenes Passwort zu ändern, läuft passwd als SUID Root.
Damit hat der Anwender für kurze Zeit Root-Rechte, kann somit sein Passwort ändern und darf in die Datei schreiben. Alle Passwörter darf aber nur Root verändern, es ist also die Voranstellung von sudo erforderlich:
sudo passwd marcus
Changing password for marcus.
New password:********
Re-enter new password:********
Password changed
Wenn Sie mit Root-Rechten arbeiten, haben Sie noch folgende Optionen, einen Benutzer mit den Passworteinstellungen zu verwalten:
Verwendung | Bedeutung |
passwd -l benutzername | Sperrt den Benutzer (-l = lock). |
passwd -f benutzername | Zwingt den Benutzer dazu, beim nächsten Anmelden das Passwort zu verändern. |
passwd -d benutzername | Löscht das Passwort des Benutzers. Danach kann sich der Benutzer ohne Passwort anmelden. |
24.3.10 useradd/adduser etc. – Benutzerverwaltung
Einen neuen Benutzer legen Sie mit useradd oder adduser an:
sudo useradd testuser
sudo passwd testuser
Changing password for testuser.
New password:********
Re-enter new password:********
Password changed
Die Eigenschaften eines Users können Sie mit usermod modifizieren:
sudo usermod -u 1235 -c "Test User" \
-s /bin/bash -d /home/testdir testuser
Hier haben Sie zum Beispiel einem User die ID 1235, den Kommentar bzw. den Namen Test User, die Bash als Shell und als Verzeichnis /home/testdir zugewiesen. Hierzu gibt es noch eine Menge Optionen mehr, die Sie mit usermod einstellen können (siehe auch die man-Seite zu usermod). Wollen Sie einen Benutzer wieder entfernen, können Sie dies mit userdel erreichen:
sudo userdel testuser
Beim Löschen wird eventuell noch überprüft, ob sich in crontab ein Eintrag für diesen User befindet. Dies ist sinnvoll, da der cron-Daemon sonst unnötig ins Leere laufen würde.
24.3.11 who – eingeloggte Benutzer anzeigen
Mit dem Kommando who werden alle angemeldeten Benutzer mit Namen, Login-Zeit und Terminal ausgegeben:
who
marcus :0 Jan 2 10:42
marcus pts/1 Jan 2 11:19 (:0.0)
24.3.12 whoami – Namen des aktuellen Benutzers anzeigen
Mit whoami können Sie ermitteln, unter welchem Namen Sie gerade arbeiten. Dies wird oft verwendet, um zu überprüfen, ob man als Root oder »normaler« User arbeitet. Unter Ubuntu ist das Kommando freilich obsolet, da die Arbeit als Benutzer Root eigentlich nicht vorgesehen ist.
sudo whoami
Password:
root
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.