Benutzer und Gruppen unter Linux

iPhone-2

Benutzerkonten und Gruppen werden unter Linux Systemen verwendet, um verschiedene Benutzer (User) zu verwalten. Besonders bei der Verwaltung von Zugriffsrechten, sowie Prozessen, spielt das Benutzer- und Gruppensystem eine wichtige Rolle.

Sie lernen in diesem Beitrag überblicksartig die Grundlagen zu Benutzern und Gruppen auf Unix- beziehungsweise Linux-Systemen kennen.

Benutzer- und Gruppenidentitäten

UID (Benutzer- / User-ID)

Jeder Benutzer erhält eine einzigartige Identifikationsnummer, genannt UID, zugeordnet. Diese Nummer wird vom System verwendet, um Benutzerkonten zu identifizieren und den Zugriff auf Systemressourcen unter einer Vielzahl von Benutzern zu verwalten.

/etc/passwd

In der Konfigurationsdatei /etc/passwd sind alle Benutzer des Systems eingetragen. Sie ordnet die UIDs den Benutzernamen zu und enthält verschiedene Informationen zum Benutzer. Dazu gehören beispielweise die GID der primären Gruppe und der Pfad zum Home-Verzeichnis beziehungsweise zur Shell des Benutzers. Zusatzinformationen, wie zum Beispiel der vollständige Name des Benutzers, können ebenfalls in der /etc/passwd gespeichert werden. Im folgenden Bild ist der vollständige Name als Zusatzinfo eingetragen, dieser ist jedoch - in diesem Fall - gleich dem Benutzernamen.

Beschrifteter /etc/passwd Eintrag

Das "x" im zweiten Feld des Eintrags signalisiert, dass für den Benutzer ein verschlüsseltes Passwort in der /etc/shadow gespeichert ist.

Um die /etc/passwd auszulesen, können Sie den folgenden Befehl in einem Terminal ausführen:

cat /etc/passwd

GID (Gruppen- / Group-ID)

Jeder Benutzer bekommt eine Gruppen-Identifikationsnummer zugewiesen, mit welcher er als Mitglied einer Gruppe identifiziert werden kann.

/etc/group

Die /etc/group enthält alle registrierten Gruppen des Betriebssystems. Ähnlich wie bei der /etc/passwd können die Gruppen des Systems aus der /etc/group ausgelesen werden:

cat /etc/group

Die /etc/group ist etwas kompakter als die /etc/passwd. Sie beinhaltet ebenfalls eine Zuordnung von Gruppenname zu GID. Es gibt außerdem, ähnlich wie bei der /etc/passwd, einen Marker für ein verschlüsseltes Passwort und ein Feld, welches die Mitglieder der Gruppe enthält.

Wichtige Befehle

Einige Befehle werden bei alltäglichen Aufgaben bei der Systemadministration immer wieder benötigt. Es folgen nun die wichtigsten Befehle für die Verwaltung von Benutzern und Gruppen. Es ist zu beachten, dass die meisten der Befehle für die Benutzer- und Gruppenverwaltung besondere Rechte benötigen, daher sollten diese mit dem Root-Benutzer verwendet werden.

Befehle für die Benutzerverwaltung

adduser - Einen neuen Benutzer hinzufügen

Mit dem Befehl adduser können neue Benutzer angelegt werden. adduser greift dabei auf das systemnahe Werkzeug useradd zurück, um die Erstellung von Benutzern auf einem bedienerfreundlichen Frontend zu ermöglichen. Der neue Benutzer erhält automatisch die nächste freie UID zugeordnet.

Um einen neuen Benutzer zu erstellen, führen Sie den folgenden Befehl in einem Terminal aus:

adduser [Benutzername]

Der Befehl benötigt grundsätzlich keine weiteren Parameter: Alle für die Erstellung des Benutzers notwendigen Daten werden automatisch abgefragt. Dazu gehört das Passwort, der vollständige Name des Benutzers, sowie einige weitere Daten wie Zimmernummer, Telefon und Sonstiges. Letztere können jedoch einfach mit [Enter] übersprungen werden, falls nicht benötigt.

Nach Ausführung des Befehls wird der gewünschte neue Benutzer mitsamt einer gleichnamigen Gruppe und Home-Verzeichnis erstellt.

Beispiel

Eingabe:

adduser admina

Terminal:
Benutzer mit adduser erstellen
Neuer Eintrag in der /etc/passwd (cat /etc/passwd):

admina:x:1001:1001:Admina,,,:/home/admina:/bin/bash

passwd - Passwörter ändern

Der Befehl passwd wird verwendet, um Passwörter von Benutzern zu ändern. Die Syntax lautet:

passwd [Benutzername]

Nach der Ausführung wird zweifach das neue Passwort für den angegebenen Benutzer abgefragt. Der Root-Benutzer kann mit dem Befehl die Passwörter aller Benutzer festlegen. Jeder Benutzer hat jedoch die Möglichkeit sein eigenes Passwort zu aktualisieren. Dazu ist keine Angabe eines Benutzernamen erforderlich.

usermod - Benutzerkonten bearbeiten

Mit usermod lassen sich bereits angelegte Benutzerkonten bearbeiten. Die Syntax des Befehls lautet:

usermod [Optionen] [Benutzer]

Verschiedene Optionen können dabei eingesetzt werden, um beispielsweise Benutzer umzubenennen (-l):

usermod -l [neuer Benutzername] [Benutzer]

..in Gruppen hinzuzufügen (-aG):

usermod -aG [Gruppe/Gruppen] [Benutzer]

..oder auch um UIDs anzupassen (-u):

usermod -u [neue UID] [Benutzer]

Die folgenden Beispiele beschreiben einige der wichtigsten Anwendungsfälle.

Beispiel: Benutzer umbenennen

Eingabe:

usermod -l hellberg hedv

Bedeutung:

Der Benutzer "hedv" wird in "hellberg" umbenannt.

Beispiel: UID festlegen

Eingabe:

usermod -u 1001 hellberg

Bedeutung:

Die UID des Benutzers "hellberg" wird auf 1001 festgelegt. Die Änderung der UID kann nur stattfinden, wenn der betroffene Benutzer nicht angemeldet ist.

Beispiel: Benutzer in eine oder mehrere Gruppen hinzufügen

Eingabe:

usermod -aG edv-beratung,profi-tutorials hellberg

Bedeutung:

Der Benutzer "hellberg" wird in die Gruppen "edv-beratung" und "profi-tutorials" hinzugefügt. Aufgrund der Option -a bleiben bereits bestehende Gruppenmitgliedschaften dabei unberührt. Wird die Option ausgelassen, so werden die Gruppen des Benutzer auf die angegebene Liste festgelegt und Bestehende überschrieben.

deluser - Benutzer löschen

Mit deluser können Benutzer wieder gelöscht werden. Die allgemeine Syntax lautet:

deluser [Optionen] [Benutzer]

Wird der Befehl ohne zusätzliche Optionen verwendet, so wird lediglich der Benutzer selbst gelöscht. Das Home-Verzeichnis, sowie vom Benutzer erstellte Dateien bleiben bestehen. Um den Benutzer mitsamt des Home-Verzeichnisses zu löschen, wird folgender Befehl verwendet:

deluser --remove-home [Benutzer]

Es besteht auch die Möglichkeit alle Dateien eines Benutzers mit zu löschen:

deluser --remove-all-files [Benutzer]
Beispiel: Benutzer löschen

Eingabe:

deluser admina

Bedeutung:

Der Benutzer "admina" wird gelöscht. Das Home-Verzeichnis und sonstige Dateien des Benutzers bleiben unberührt.

Beispiel: Benutzer mitsamt Home-Verzeichnis löschen

Eingabe:

deluser --remove-home hedv

Bedeutung:

Der Benutzer "hedv", sowie das Home-Verzeichnis werden gelöscht.

Beispiel: Benutzer mitsamt aller Dateien löschen

Eingabe:

deluser --remove-all-files bibo

Bedeutung:

Der Benutzer "bibo", sowie alle Dateien des Benutzers werden gelöscht.

Befehle für die Gruppenverwaltung

addgroup - Eine neue Gruppe erstellen

Mit addgroup lassen sich neue Gruppen erstellen. Der Befehl benötigt lediglich den Gruppennamen als Eingabe. Die Gruppe erhält die nächste freie GID.

Verwenden Sie den folgenden Befehl um eine Gruppe zu erstellen:

addgroup [Gruppenname]

groupmod - Gruppe bearbeiten

Der Befehl groupmod wird verwendet, um bestehende Gruppen zu bearbeiten. Die Syntax von groupmod lautet:

groupmod [Optionen] [Gruppe]

Auch hier können verschiedene Optionen angewandt werden. Um den Namen einer Gruppe zu verändern, wird die Option --new-name verwendet:

groupmod --new-name [Gruppe]

Wenn die GID einer Gruppe festgelegt werden soll, wird dazu die Option --gid verwendet:

groupmod --gid [Gruppe]
Beispiel: Gruppenname ändern

Eingabe:

groupmod --new-name it-consulting edv-beratung

Bedeutung:

Die Gruppe "edv-beratung" wird in "it-consulting" umbenannt.

Beispiel: GID festlegen

Eingabe:

groupmod --gid 1005 beratung-hannover

Bedeutung:

Die GID der Gruppe "beratung-hannover" wird auf 1005 festgelegt.

delgroup - Gruppe löschen

Gruppen können mit dem Befehl delgroup gelöscht werden. Die Syntax des Befehls lautet:

delgroup [Optionen] [Gruppe]

Der Befehl kann ohne jegliche Optionen verwendet werden. Mit der zusätzlichen Option --only-if-empty wird jedoch sichergestellt, dass eine Gruppe nur dann gelöscht wird, wenn sie auch leer ist:

delgroup --only-if-empty [Gruppe]
Beispiel: Gruppe unabhängig von enthaltenen Benutzern löschen

Eingabe:

delgroup beratung-hannover

Bedeutung:

Die Gruppe "beratung-hannover" wird gelöscht. Ob die Gruppe noch Benutzer enthält wird dabei nicht beachtet.

Beispiel: Gruppe nur löschen wenn leer

Eingabe:

delgroup --only-if-empty profi-tutorials

Bedeutung:

Die Gruppe "profi-tutorials" wird nur dann gelöscht, wenn sie leer ist. Sind noch Benutzer in der Gruppe vorhanden, so wird eine entsprechende Meldung ausgegeben.

Abonniere JETZT unseren Newsletter!


Verpasse nie wieder neue Beiträge und exklusive Insider-Only-Inhalte!

Joel Benseler

Click Here to Leave a Comment Below

Leave a Comment: