===== usermod - Benutzerkonten ändern =====
**Kurzfassung:** Mit ''usermod'' werden bestehende Benutzerkonten geändert. Das Kommando ermöglicht Änderungen von Login-Namen, Home-Verzeichnis, Shell, Gruppen und weiteren Benutzerattributen. Zentral für die Verwaltung und Anpassung von Benutzerkonten ohne Neuanlage.
==== Übersicht ====
''usermod'' (user modify) ermöglicht die Modifikation bestehender Benutzerkonten. Es ändert Einträge in ''/etc/passwd'', ''/etc/shadow'' und ''/etc/group'' und kann Home-Verzeichnisse verschieben sowie Gruppenmitgliedschaften anpassen.
==== Voraussetzungen ====
* Root-Rechte (sudo)
* Benutzer darf nicht eingeloggt sein (bei kritischen Änderungen)
* Gruppen müssen existieren (bei Gruppenwechsel)
* Ausreichend Speicherplatz (bei Home-Verzeichnis-Verschiebung)
==== Syntax ====
usermod [Optionen] BENUTZERNAME
==== Wichtige Optionen ====
-aG gruppe # Zu Gruppe hinzufügen (append)
-G gruppe1,gruppe2 # Gruppenmitgliedschaften setzen (ersetzt alle)
-l neuer_name # Benutzername ändern
-d /neues/home # Home-Verzeichnis ändern
-m # Home-Verzeichnis verschieben (mit -d)
-s /bin/zsh # Login-Shell ändern
-L # Benutzerkonto sperren (lock)
-U # Benutzerkonto entsperren (unlock)
-e YYYY-MM-DD # Ablaufdatum setzen
-c "kommentar" # Kommentar/GECOS ändern
==== Anleitung ====
=== Schritt 1: Zu Gruppen hinzufügen ===
# Benutzer zu einzelner Gruppe hinzufügen
sudo usermod -aG docker alice
# Zu mehreren Gruppen hinzufügen
sudo usermod -aG sudo,docker,www-data bob
# ACHTUNG: Ohne -a werden alle anderen Gruppen entfernt!
sudo usermod -G docker alice # Alice ist NUR noch in docker
=== Schritt 2: Login-Shell ändern ===
# Shell auf zsh ändern
sudo usermod -s /bin/zsh alice
# Shell auf bash zurück
sudo usermod -s /bin/bash alice
# Login deaktivieren
sudo usermod -s /usr/sbin/nologin serviceuser
=== Schritt 3: Benutzername ändern ===
# Benutzer muss ausgeloggt sein!
sudo usermod -l neuer_name alter_name
# Mit Home-Verzeichnis umbenennen
sudo usermod -l alice_neu alice_alt -d /home/alice_neu -m
=== Schritt 4: Home-Verzeichnis verschieben ===
# Home-Verzeichnis verschieben
sudo usermod -d /data/users/alice -m alice
# Nur Pfad ändern, nicht verschieben
sudo usermod -d /new/path alice
=== Schritt 5: Konto sperren/entsperren ===
# Konto sperren (prepend ! zu Passwort-Hash)
sudo usermod -L alice
# Konto entsperren
sudo usermod -U alice
# Status prüfen
sudo passwd -S alice
=== Schritt 6: Ablaufdatum setzen ===
# Konto läuft am 31.12.2026 ab
sudo usermod -e 2026-12-31 tempuser
# Ablauf entfernen
sudo usermod -e "" tempuser
# Prüfen
sudo chage -l tempuser
==== Typische Anwendungsfälle ====
# Benutzer zu sudo-Gruppe hinzufügen
sudo usermod -aG sudo alice
# Webentwickler-Setup
sudo usermod -aG www-data,docker bob
# Shell für Power-User ändern
sudo usermod -s /bin/zsh charlie
# Service-Account sichern
sudo usermod -s /usr/sbin/nologin -L serviceaccount
==== Hinweise ====
* **-aG wichtig:** Ohne ''-a'' werden bestehende Gruppenmitgliedschaften entfernt
* **Logout erforderlich:** Bei kritischen Änderungen Benutzer ausloggen
* **Gruppenwechsel:** Änderungen wirken erst nach erneutem Login
* **Home verschieben:** ''-m'' nur mit ''-d'' zusammen verwenden
* **Konto sperren:** ''-L'' ändert nur Passwort, SSH-Keys funktionieren weiter
* **Primary Group:** Mit ''-g'' ändern (selten nötig)
==== Siehe auch ====
* [[sammlung:useradd|useradd - Benutzer anlegen]]
* [[sammlung:userdel|userdel - Benutzer löschen]]
* [[sammlung:passwd|passwd - Passwort ändern]]
* [[sammlung:groupadd|groupadd - Gruppe anlegen]]
* [[sammlung:benutzerverwaltung|Benutzerverwaltung Übersicht]]
==== Quellen ====
* [[https://man7.org/linux/man-pages/man8/usermod.8.html|usermod Man Page]]
* [[https://wiki.ubuntuusers.de/Benutzerverwaltung/|Ubuntu Wiki - Benutzerverwaltung]]
----
{{tag>cli user management}}
----