usermod
ist ein Befehlszeilendienstprogramm, mit dem Sie die Anmeldeinformationen eines Benutzers ändern können.
Dieser Artikel behandelt die Verwendung des usermod
Befehl, um einen Benutzer zu einer Gruppe hinzuzufügen, eine Benutzer-Shell, den Anmeldenamen, das Home-Verzeichnis und mehr zu ändern.
usermod
Befehl #
Die Syntax des usermod
Der Befehl hat folgende Form:
usermod [options] USER
Nur root oder Benutzer mit sudo
access kann usermod
aufrufen und ein Benutzerkonto ändern. Bei Erfolg zeigt der Befehl keine Ausgabe an.
Einen Benutzer zu einer Gruppe hinzufügen #
Der typischste Anwendungsfall des usermod
fügt einen Benutzer zu einer Gruppe hinzu.
Um einen vorhandenen Benutzer zu einer sekundären Gruppe hinzuzufügen, verwenden Sie -a -G
Optionen folgten dem Namen der Gruppe und dem Benutzernamen:
usermod -a -G GROUP USER
Wenn Sie den Benutzer mehreren Gruppen gleichzeitig hinzufügen möchten, geben Sie die Gruppen nach dem -G
an Option durch ,
getrennt (Kommas) ohne dazwischenliegende Leerzeichen.
Zum Beispiel, um den Benutzer linuxize
hinzuzufügen zu den games
group, würden Sie den folgenden Befehl ausführen:
sudo usermod -a -G games linuxize
Verwenden Sie immer das -a
(Anhängen) Option beim Hinzufügen eines Benutzers zu einer neuen Gruppe. Wenn Sie das -a
weglassen Option wird der Benutzer aus den Gruppen entfernt, die nicht nach dem -G
aufgeführt sind Option.
Wenn der Benutzer oder die Gruppe nicht existiert, werden Sie vom Befehl gewarnt.
Primäre Gruppe des Benutzers ändern #
Um die primäre Gruppe eines Benutzers zu ändern, rufen Sie usermod
auf Befehl mit dem -g
Option folgte dem Namen der Gruppe und dem Benutzernamen:
sudo usermod -g GROUP USER
Im folgenden Beispiel ändern wir die primäre Gruppe des Benutzers linuxize
an developers
:
usermod -g developers linuxize
Jeder Benutzer kann genau einer primären Gruppe und keiner oder mehreren sekundären Gruppen angehören.
Ändern der Benutzerinformationen #
Um die GECOS-Informationen (den vollständigen Namen des Benutzers) zu ändern, führen Sie den Befehl mit -c
aus Option gefolgt vom neuen Kommentar und Benutzernamen:
usermod -c "GECOS Comment" USER
Hier ist ein Beispiel, das zeigt, wie man dem Benutzer linuxize zusätzliche Informationen hinzufügt:
usermod -c "Test User" linuxize
Diese Informationen werden in /etc/passwd
gespeichert Datei.
Ändern eines Benutzer-Home-Verzeichnisses #
Auf den meisten Linux-Systemen werden die Home-Verzeichnisse der Benutzer nach dem Namen des Benutzers benannt und unter /home
erstellt Verzeichnis.
Wenn Sie aus irgendeinem Grund das Home-Verzeichnis des Benutzers ändern möchten, rufen Sie usermod
auf Befehl mit dem -d
Option folgte dem absoluten Pfad des neuen Home-Verzeichnisses und dem Namen des Benutzers:
usermod -d HOME_DIR USER
Standardmäßig verschiebt der Befehl den Inhalt des Home-Verzeichnisses des Benutzers nicht in das neue. Um den Inhalt zu verschieben, verwenden Sie -m
Möglichkeit. Wenn das neue Verzeichnis noch nicht existiert, wird es erstellt:
usermod -d HOME_DIR -m USER
Hier ist ein Beispiel, das zeigt, wie man das Home-Verzeichnis des Benutzers www-data
ändert nach /var/www
:
usermod -d /var/www www-data
Ändern einer Benutzerstandard-Shell #
Die Standard-Shell ist die Shell, die ausgeführt wird, nachdem Sie sich beim System angemeldet haben. Standardmäßig ist auf den meisten Linux-Systemen die Standard-Shell auf Bash Shell eingestellt.
Um die Standard-Shell des Benutzers zu ändern, führen Sie den Befehl mit -s
aus Option folgte dem absoluten Pfad der Shell und dem Namen des Benutzers:
usermod -s SHELL USER
Im folgenden Beispiel ändern wir die Benutzer-Shell in Zsh:
sudo usermod -s /usr/bin/zsh linuxize
Sie können herausfinden, welche Shells auf Ihrem System verfügbar sind, indem Sie /etc/shells
anzeigen Inhalt der Datei.
Ändern einer Benutzer-UID #
UID (die Benutzerkennung) ist eine Nummer, die jedem Benutzer zugewiesen wird. Es wird vom Betriebssystem verwendet, um auf einen Benutzer zu verweisen.
Um die Benutzer-UID zu ändern, rufen Sie den Befehl mit -u
auf Option folgte der neuen UID und dem Benutzernamen:
usermod -u UID USER
Das folgende Beispiel zeigt, wie die „UID“-Nummer in „1050“ geändert wird:
sudo usermod -u 1050 linuxize
Die UID der Dateien, die dem Benutzer gehören und sich im Home-Verzeichnis des Benutzers befinden, und die Postfachdatei des Benutzers werden automatisch geändert. Der Besitz aller anderen Dateien muss manuell geändert werden.
Ändern eines Benutzernamens #
Obwohl dies nicht sehr oft der Fall ist, möchten Sie möglicherweise manchmal den Namen eines vorhandenen Benutzers ändern. Das -l
Option wird verwendet, um den Benutzernamen zu ändern:
usermod -l NEW_USER USER
Im folgenden Beispiel benennen wir den Benutzer in linuxize
um an lisa
zu „1050“:
sudo usermod -l linuxize lisa
Wenn Sie den Benutzernamen ändern, möchten Sie möglicherweise auch das Home-Verzeichnis des Benutzers ändern, um den neuen Benutzernamen widerzuspiegeln.
Festlegen eines Benutzerablaufdatums #
Das Ablaufdatum ist das Datum, an dem das Benutzerkonto deaktiviert wird. Um das Ablaufdatum des Benutzers festzulegen, verwenden Sie das -e
Möglichkeit:
sudo usermod -e DATE USER
Das Ablaufdatum muss im Format YYYY-MM-DD
eingestellt werden .
Zum Beispiel, um den Benutzer linuxize
zu deaktivieren am 2022-02-21
, würden Sie den folgenden Befehl ausführen:
sudo usermod -e "2022-02-21" linuxize
Um das Ablaufdatum eines Kontos zu deaktivieren, legen Sie ein leeres Ablaufdatum fest:
sudo usermod -e "" linuxize
Verwenden Sie den chage -l
Befehl zum Anzeigen des Ablaufdatums des Benutzers:
sudo chage -l linuxize
Last password change : Jul 24, 2018
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
Das Ablaufdatum wird in /etc/shadow
gespeichert Datei.
Sperren und Entsperren eines Benutzerkontos #
Das -L
Mit dieser Option können Sie ein Benutzerkonto sperren:
usermod -L USER
Die Befehle fügen ein Ausrufezeichen ein (!
) vor dem verschlüsselten Passwort markieren. Wenn das Passwortfeld in /etc/shadow
Datei ein Ausrufezeichen enthält, kann sich der Benutzer nicht mit Kennwortauthentifizierung beim System anmelden. Andere Login-Methoden, wie die schlüsselbasierte Authentifizierung oder der Wechsel zum Benutzer sind weiterhin erlaubt. Wenn Sie das Konto sperren und alle Anmeldemethoden deaktivieren möchten, müssen Sie auch das Ablaufdatum auf 1 setzen.
Das folgende Beispiel zeigt, wie der Benutzer linuxize
gesperrt wird :
sudo usermod -L linuxize
sudo usermod -L -e 1 linuxize
Um einen Benutzer zu entsperren, führen Sie usermod
aus mit dem -U
Möglichkeit:
usermod -U USER
Schlussfolgerung #
Wir haben Ihnen gezeigt, wie Sie den usermod
verwenden Befehl zum Festlegen von Benutzerkontoinformationen.
Fühlen Sie sich frei, einen Kommentar zu hinterlassen, wenn Sie Fragen haben.