Server-Administration

Benutzerverwaltung unter Linux

Nummerische ID zu Namen

Während der Kernel effektiver mit den numerischen IDs agiert, haben wir Menschen es lieber mit Namen zu tun. Die Übersetzung zwischen beiden erfolgt traditionell über die für jeden Benutzer lesbaren Dateien "/etc/passwd" für die UID und "/etc/group" für die GID.

> ls -l /etc/passwd /etc/group

-rw-r--r-- 1 root root 1067 2011-02-01 15:00 /etc/group

-rw-r--r-- 1 root root 2248 2011-02-01 15:00 /etc/passwd

> grep ^thomas /etc/passwd /etc/group

/etc/passwd:thomas:x:1000:1000:thomas,,,:/home/thomas:/bin/bash

/etc/group:thomas:x:1000:

Der Benutzer "thomas" hat also die UID 1000 und auch die gleiche Default-Gruppen-ID 1000.

Welche Referenz für das Mapping verwendet wird, entscheidet der "Name Service Switch" (NSS) mit der Konfigurationsdatei "/etc/nsswitch.conf", die optional ist. Fehlt sie, werden Standardeinstellungen verwendet:

/etc/nsswitch.conf: Name Service Switch

passwd: compat

group: compat

shadow: compat

Mögliche vier Werte sind "files" für lokale Dateien, "db" für eine Datenbank, "nis" für das Network-Informationssystem (=YellowPages) oder "nisplus" für NIS+. "compat" bezeichnet eine spezielle Methode, die die lokalen Dateien konsultiert, aber dort NIS für einen Eintrag verwendet, wenn dieser mit einem Pluszeichen beginnt.