staging.inyokaproject.org

Von „Shell/adduser“ weitergeleitet.

adduser

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png Mit dem Befehl adduser legt man neue Benutzer an. Mit adduser wird nicht nur der Benutzer an sich angelegt, sondern es werden auch die weiteren nötigen Einstellungen vorgenommen, wie z.B. ein Homeverzeichnis anlegen, den Nutzer einer Gruppe zuordnen, die Login-Shell festlegen usw. adduser ist zwar ein Kommandozeilenbefehl, das Anlegen des Nutzer erfolgt dabei aber interaktiv. Außerdem können mit dem Befehl addgroup oder mittels einer Option Gruppen eingerichtet werden.

adduser ist typisch für alle Distributionen, die auf Debian basieren (wie auch Ubuntu). Andere Distributionen verwenden zum Anlegen von Benutzern den Befehl useradd. Dieser ist auch unter Ubuntu verfügbar, arbeitet aber nicht interaktiv und nimmt auch weniger Voreinstellungen automatisch vor. Bei falscher Verwendung von useradd kann man sich z.B. aus Gruppen aussperren und hat so nur noch einen beschränkten Zugang zum System. Aus Sicherheitsgründen sollte daher unter Ubuntu im Terminal grundsätzlich immer adduser verwendet werden!

Ubuntu und seine Varianten bieten natürlich auch Hilfsprogramme mit grafischer Oberfläche zum Bearbeiten von Nutzern. Einen Überblick findet man auf der Seite Benutzer und Gruppen. Weitere Befehle findet man in der Übersicht zur Benutzerverwaltung.

Das Homeverzeichnis des neu angelegten Benutzers mit seinen verborgenen Dateien und dem verborgenen Unterverzeichnis .config entsteht dabei sofort aus dem Muster bei /etc/skel. Die übrigen Benutzerverzeichnisse entstehen durch den Aufruf von adduser nach der Vorschrift in ~/.config/user-dirs.dirs desjenigen Benutzers, der den neuen Benutzer anlegt (und dazu berechtigt sein muß). Die eigentlichen Benutzer-Verzeichnisse entstehen aber erst beim ersten Login des angelegten Benutzers!

Installation

adduser ist in jeder Ubuntu-Installation bereits enthalten und im Paket

  • adduser

ebenso wie der Befehl addgroup integriert.

Verwendung

Die allgemeine Syntax von adduser und addgroup ist recht simpel:

sudo adduser BENUTZER [OPTIONEN]
sudo addgroup [OPTIONEN] GRUPPE 

Anschließend erfolgt ein kurzer, interaktiver Dialog, in dem man als erstes nach dem Passwort und anschließend nach dem vollen Benutzernamen gefragt wird. Die folgenden Fragen nach Raumnummer, Telefonnummer etc. sind eher für Firmen interessant (bzw. stammen noch aus der Zeit, als Linux immer ein reines Serversystem mit Remote-Login war) und können alle ohne Eingabe mit einem Druck auf beantwortet werden.

Wie oben bereits erwähnt, wird mit jedem Benutzer automatisch eine Gruppe mit dem gleichlautenden Namen angelegt. Gibt man wie im obigen Beispiel keine Optionen an, so nutzt adduser die Voreinstellungen, welche in der Datei /etc/adduser.conf hinterlegt sind. Anschließend werden noch die Default-Konfigurationsdateien (z.B. für die Bash) aus dem Verzeichnis /etc/skel in das Homeverzeichnis des neuen Nutzers kopiert.

Natürlich kennt adduser auch eine Reihe von Optionen. Einige davon sind:

Optionen von adduser
OptionBeschreibung
--gecos "" überspringt die Abfragen für optional vollen Namen, Telefonnummer usw. (Optionsparameter leer, nur Anführungszeichen)
--conf DATEI verwendet anstatt /etc/adduser.conf die Datei DATEI als Konfigurationsdatei
--home /Pfad/zum/VerzeichnisDas Homeverzeichnis wird in "Pfad/zum/Verzeichnis" angelegt anstatt im Verzeichnis, welches in der Konfigurationsdatei hinterlegt ist. Existiert das Verzeichnis nicht, so wird es angelegt, die Dateien aus /etc/skel werden auch dorthin kopiert.
--no-create-homees wird kein Homeverzeichnis für den Nutzer angelegt
--ingroup GRUPPEDer Nutzer wird zur Gruppe GRUPPE anstatt zur in der Konfigurationsdatei voreingestellten Gruppe hinzugefügt.
--disabled-loginBei der Einrichtung des Nutzers wird nicht nach einem Passwort gefragt, und der Account als inaktiv gekennzeichnet. Der Nutzer kann sich nicht am System anmelden.
--disabled-passwordBei der Einrichtung des Nutzers wird nicht nach dem Passwort gefragt. Der Nutzer kann sich nicht am System anmelden, bis ein Passwort mit Hilfe des Befehls passwd gesetzt wird. Dies ist dann z.B. sinnvoll, wenn man als Systemadministrator das Passwort des Nutzers nicht kennen möchte.
--shell SHELLEs wird nicht die in der Konfigurationsdatei hinterlegte Shell als Login-Shell angelegt, sondern die in der Option angegebene. Dabei muss immer der volle Pfad mit angegeben werden also z.B. --shell /bin/zsh. Gibt man --shell /bin/false an, so wird keine Login-Shell anlegt, was auch bedingt, dass sich dieser Nutzer nicht per SSH mit dem Rechner verbinden kann.
--uid IDGibt dem neuen Benutzer die gewünschte ID, falls diese nicht schon verwendet wird.

adduser kennt noch einer Reihe weitere Optionen, welche man in der Manpage nachlesen kann.

Beispiele

  • Für das "einfache" Anlegen eines Benutzers benötigt man gar keine Optionen, d.h. will man beispielsweise den Benutzer otto anlegen, so reicht der Befehl:

    sudo adduser otto 

    Hinweis:

    Legt man Benutzer mit adduser an, so werden diese zu keiner Gruppe des Systems hinzugefügt. Per adduser angelegte Benutzer dürfen also nicht direkt auf die im System vorhandenen Audio- und Videogeräte zugreifen usw. Daher sollte man nach dem Anlegen eines Benutzers sofort und unmittelbar mit dem Befehl groups BENUTZER überprüfen, zu welchen Gruppen dieser Benutzer noch hinzugefügt gehören sollte.

  • Fügt den Benutzer xyz zur bestehenden Gruppe www-data hinzu:

    sudo adduser xyz www-data 

    Wenn man einen Benutzer einer weiteren Gruppe zuordnet, muss sich dieser Benutzer prinzipiell erst ab- und wieder neu anmelden, bevor die neue Gruppenzugehörigkeit aktiv wird. Um die neue Gruppenzugehörigkeit sofort zu aktivieren, verwendet man newgrp.

  • Richtet die Benutzergruppe admin ein:

    sudo adduser --group admin 

Alternativ kann auch der Befehl sudo addgroup admin genutzt werden.

  • Richtet eine neue Systemgruppe ein:

    sudo addgroup --system share 

Bei Nutzung der Option --system mit dem Befehl adduser wird ein neuer Systembenutzer eingerichtet. Wird zusätzlich noch --group übergeben, wird eine neue Gruppe mit dem Namen un der ID des Systembenutzers erstellt.

  • Richtet eine neue Benutzergruppe ein und erstellt daraufhin einen Benutzer, der automatisch der Gruppe angehört:

    sudo addgroup --gid 113 usrs
    sudo adduser --gid 113 otto 

Diese Revision wurde am 7. April 2023 21:24 von karzer erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Shell