wfmedia.ch

adduser

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:

Option Beschreibung
--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/Verzeichnis Das 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-home es wird kein Homeverzeichnis für den Nutzer angelegt
--ingroup GRUPPE Der Nutzer wird zur Gruppe GRUPPE anstatt zur in der Konfigurationsdatei voreingestellten Gruppe hinzugefügt.
--disabled-login Bei 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-password Bei 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 SHELL Es 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 ID Gibt dem neuen Benutzer die gewünschte ID, falls diese nicht schon verwendet wird.
back