Die Benutzer- und Gruppenverwaltung erfolgt unter Linux über verschiedene Kommandos.
Mit `useradd` wird ein neuer Benutzer unter Linux angelegt.
useradd [Optionen] benutzername
-m – Home-Verzeichnis anlegen -d /pfad – Home-Verzeichnis festlegen -s /bin/bash – Shell festlegen -g gruppe – Primäre Gruppe festlegen -G gruppen – Zusätzliche Gruppen festlegen (Komma-getrennt) -c kommentar – Kommentar (z.B. Name, E-Mail)
useradd -m -d /home/UserName -s /bin/bash -c "User Name - user@email.example.com" username
man useradd
Mit `usermod` werden bestehende Benutzerkonten geändert.
usermod [Optionen] benutzername
-aG gruppe – Benutzer zu einer Gruppe hinzufügen -l neuername – Benutzer umbenennen -s /bin/zsh – Login-Shell ändern
usermod -aG docker max
man usermod
Mit `userdel` wird ein Benutzerkonto gelöscht.
userdel [Optionen] benutzername
# userdel
Usage: userdel [options] LOGIN
Options:
-f, --force force removal of files,
even if not owned by user
-h, --help display this help message and exit
-r, --remove remove home directory and mail spool
-Z, --selinux-user remove SELinux user from SELinux user mapping
userdel -rf max
man userdel
Mit `groupadd` wird eine neue Gruppe angelegt.
groupadd [Optionen] gruppenname
-g GID – Gruppen-ID festlegen -f – Fehler ignorieren, falls Gruppe schon existiert -K KEY=VALUE – Konfigurationswert setzen -o – Erlaubt doppelte GIDs -p PASSWD – Passwort für die Gruppe setzen (selten genutzt)
groupadd admins groupadd -g 2000 developers groupadd -f admins
man groupadd
Mit `groupmod` kann eine bestehende Gruppe geändert werden.
groupmod [Optionen] gruppenname
-n neuername – Gruppe umbenennen -g GID – Neue Gruppen-ID festlegen -o – Erlaubt doppelte GIDs
groupmod -n neueadmins admins groupmod -g 3000 admins
man groupmod
Mit `groupdel` wird eine Gruppe gelöscht.
groupdel gruppenname
groupdel admins
man groupdel
.bashrc und .bash_profile
Skeleton-Dateien sind Vorlagen, die beim Anlegen neuer Benutzer automatisch in deren Home-Verzeichnis kopiert werden. Dazu gehören unter anderem `.bashrc` und `.bash_profile`. Es können auch mehrere skeleton Datein angelegt werden.
Die Skeleton-Dateien liegen in der Regel im Verzeichnis:
/etc/skel/
Beim Erstellen eines neuen Benutzers mit `useradd` werden alle Dateien aus diesem Verzeichnis ins Home-Verzeichnis des neuen Benutzers kopiert.
| Datei | Zweck |
|---|---|
| `.bashrc` | Wird bei interaktiven, nicht-Login-Shells geladen; enthält Shell-Optionen, Aliase und Funktionen. |
| `.bash_profile` | Wird bei Login-Shells geladen; kann `.bashrc` einbinden. |
| `.bash_logout` | Wird beim Beenden einer Login-Shell ausgeführt. |
| `.profile` | Alternative zu `.bash_profile` (wird v. a. bei Debian/Ubuntu verwendet). |
sudo vi /etc/skel/.bashrc
sudo useradd -m neueruser sudo passwd neueruser
/etc/skel/skel_dev01 mit .bashrc, .profile, .bash_logout /etc/skel/skel_prod01/ mit .bashrc, .profile, .bash_logout
useradd -m -k /etc/skel_dev01 -s /bin/bash -d /home/neueruser neueruser
Die Distributionen verwenden zum Teil verschidene Schreibweisen innerhalb von /etc/skel.
man bash man useradd man bashrc
man useradd man usermod man userdel man groupad man groupmod man groupdel