Gruppe/n unter Linux

Alles rund um das System Linux
zebolon
Beiträge: 109
Registriert: Fr 9. Sep 2022, 14:09
Has thanked: 67 times
Been thanked: 174 times

Gruppe/n unter Linux

Beitrag von zebolon »

GID (Gruppen- / Group-ID)
Jeder Benutzer bekommt eine Gruppen-Identifikationsnummer zugewiesen, mit welcher er als Mitglied einer Gruppe identifiziert werden kann.
gruppe.jpg
/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:

Code: Alles auswählen

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.

Jeder Benutzer ist einer Hauptgruppe zugeordnet, kann daneben aber auch Mitglied weiterer Gruppen sein. Der Zugriff auf gewisse Hardware oder Dienste ist auf die Mitglieder einer bestimmten Gruppe beschränkt. So dürfen z.B. nur Benutzer, die zur Gruppe "audio" gehören, Klänge über die Soundkarte ausgeben. Möchte man nun einem Benutzer die Berechtigung für die Soundkarte geben, so erreicht man dies, indem man ihn in die Gruppe "audio" aufnimmt.

Die Hauptgruppe eines Benutzers spielt im Zusammenhang mit den Zugriffsberechtigungen auf Dateien und Verzeichnisse eine Rolle. Jede Datei ist immer Eigentum genau eines Benutzers. Daneben ist den Dateien aber auch eine Gruppe zugeordnet. Wenn ein Benutzer eine Datei erzeugt, dann wird seine Hauptgruppe als Gruppe bei der erzeugten Datei eingetragen.

Befehle für die Gruppenverwaltung
Befehle für die Gruppenverwaltung erfordern wie schon in der Benutzerverwaltung erwähnt, ebenso Root-Berechtigung.

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:

Code: Alles auswählen

addgroup [Gruppenname]
groupmod - Gruppe bearbeiten
Der Befehl groupmod wird verwendet, um bestehende Gruppen zu bearbeiten:

Code: Alles auswählen

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:

Code: Alles auswählen

groupmod --new-name [Gruppe]
Wenn die GID einer Gruppe festgelegt werden soll, wird dazu die Option --gid verwendet:

Code: Alles auswählen

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

Code: Alles auswählen

groupmod --new-name pc-technik edv-consulting
Die Gruppe pc-technik wird in edv-consulting umbenannt.

Beispiel - GID festlegen:

Code: Alles auswählen

groupmod --gid 1005 edv-consulting
Die GID der Gruppe edv-consulting wird auf 1005 festgelegt.

delgroup - Gruppe löschen
Gruppen können mit dem Befehl delgroup gelöscht werden:

Code: Alles auswählen

delgroup [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:

Code: Alles auswählen

delgroup --only-if-empty [Gruppe]

Beispiel - Gruppe unabhängig von enthaltenen Benutzern löschen

Code: Alles auswählen

delgroup pc-technik
Die Gruppe pc-technik wird gelöscht. Ob die Gruppe noch Benutzer enthält wird dabei nicht beachtet.

Beispiel - Gruppe nur löschen wenn leer

Code: Alles auswählen

delgroup --only-if-empty pc-technik
Die Gruppe pc-technik wird nur dann gelöscht, wenn sie leer ist. Sind noch Benutzer in der Gruppe vorhanden, so wird eine entsprechende Warnung ausgegeben.

Bei vielen Distributionen, etwa denen von Red Hat oder Debian GNU/Linux, wird für jeden neuen Benutzer automatisch eine eigene Gruppe angelegt, die die gleiche GID hat wie die UID des Benutzerkontos. Die Idee dahinter ist, eine differenziertere Rechtevergabe zu ermöglichen als bei dem Ansatz, alle Benutzer in dieselbe Gruppe users zu tun.

Denken Sie an die folgende Situation:
Hans (Benutzername: hans) ist der persönliche Assistent der Vorstandsvorsitzenden Greta (Benutzername: greta).
In dieser Funktion muss er hin und wieder auf Dateien zugreifen, die in Gretas Heimatverzeichnis gespeichert sind, die aber für alle anderen Benutzer Tabu sind.
Der von Red Hat, Debian & Co. verfolgte Ansatz »Eine Gruppe pro Benutzer« macht es einfach, den Benutzer hans in die Gruppe greta zu tun und dafür zu sorgen, dass Gretas Dateien für ihn lesbar sind, aber nicht für den »Rest der Welt«.
Im Ansatz »Eine Gruppe für alle« wäre es nötig, eine ganz neue Gruppe einzuführen und die Konten hans und greta entsprechend umzukonfigurieren.


Dieser Beitrag ist eine Fortsetzung von: Benutzer unter Linux

Create an account or sign in to join the discussion

You need to be a member in order to post a reply

Create an account

Not a member? register to join our community
Members can start their own topics & subscribe to topics
It’s free and only takes a minute

Registrieren

Sign in