GNU/Linux >> LINUX-Kenntnisse >  >> Debian

Debian – Was macht Adduser, was Useradd nicht tut?

Neben dem weiter verbreiteten useradd enthalten Debian-basierte Systeme auch einen zusätzlichen adduser Befehl, der eine Schnittstelle auf höherer Ebene zum Hinzufügen von Benutzern und einigen verwandten Aufgaben bereitstellt. Es gibt verschiedene Fragen/Antworten auf anderen SE-Sites, die die grundlegenden Unterschiede zwischen diesen Befehlen beschreiben, zum Beispiel:

  • ServerFault – Was ist der Unterschied zwischen „useradd“ und „adduser“?
  • Superuser – Was ist der Unterschied zwischen „adduser“ und „useradd“?
  • Frag Ubuntu – Was ist der Unterschied zwischen adduser und useradd?

Die meisten Antworten sagen im Wesentlichen, dass adduser bietet eine schönere Schnittstelle zum interaktiven Hinzufügen von Benutzern, gibt jedoch nicht viele Details darüber an, was passiert, wenn adduser ausgeführt wird, die nicht mit useradd verglichen wird . Also:

  1. Was bedeutet adduser tun Sie das useradd nicht?
  2. Welche Befehle muss ich verwenden, um gleichwertige Ergebnisse zu erzielen?

Akzeptierte Antwort:

Zunächst heben die entsprechenden Manpage-Schnipsel die Unterschiede zwischen den beiden Befehlen hervor und geben einen Hinweis darauf, was vor sich geht. Für adduser :

adduser und addgroup fügen Benutzer und Gruppen gemäß den Befehlszeilenoptionen und Konfigurationsinformationen in /etc/adduser.conf zum System hinzu. Sie sind freundlichere Frontends für
Low-Level-Tools wie useradd-, groupadd- und usermod-Programme, die standardmäßig Debian-richtlinienkonforme UID- und GID-Werte wählen, ein Home-Verzeichnis mit Skelettkonfiguration erstellen, ein benutzerdefiniertes Skript ausführen und andere Funktionen.

Dann für useradd :

useradd ist ein Low-Level-Dienstprogramm zum Hinzufügen von Benutzern. Unter Debian sollten Administratoren normalerweise stattdessen adduser(8) verwenden.

Weitere Untersuchung von adduser zeigt, dass es sich um ein Perl-Skript handelt, das eine High-Level-Schnittstelle zu den folgenden Befehlen bereitstellt und somit einige der Funktionen der folgenden Befehle bietet:

  • useradd
  • groupadd
  • passwd – zum Hinzufügen/Ändern von Benutzerpasswörtern.
  • gpasswd – zum Hinzufügen/Ändern von Gruppenpasswörtern.
  • usermod – wird verwendet, um verschiedene benutzerbezogene Parameter zu ändern.
  • chfn – Wird verwendet, um zusätzliche Informationen über einen Benutzer hinzuzufügen/zu ändern.
  • chage – Wird verwendet, um die Informationen zum Ablauf des Passworts zu ändern.
  • edquota – Wird verwendet, um die Festplattennutzungsquoten zu ändern.

Ein grundlegender Lauf des adduser Befehl lautet wie folgt:

adduser username

Dieser einfache Befehl bewirkt eine Reihe von Dingen:

  1. Erstellen Sie den Benutzer mit dem Namen username .
  2. Erstellen Sie das Home-Verzeichnis des Benutzers (Standard ist /home/username und kopieren Sie die Dateien aus /etc/skel hinein.
  3. Erstellen Sie eine Gruppe mit demselben Namen wie der Benutzer und platzieren Sie den Benutzer darin.
  4. Nach einem Passwort für den Benutzer fragen.
  5. Nach zusätzlichen Informationen zum Benutzer fragen.

Das useradd Das Programm kann das meiste davon erledigen, tut dies jedoch standardmäßig nicht und benötigt zusätzliche Optionen. Einige der Informationen erfordern mehr Befehle:

useradd -m -U username
passwd username
chfn username

Beachten Sie, dass adduser stellt sicher, dass erstellte UIDs und GIDs der Debian-Richtlinie entsprechen. Erstellen normaler Benutzer mit useradd Scheint ok zu sein, vorausgesetzt UID_MIN /UID_MAX in /etc/login.defs entspricht der Debian-Richtlinie. Ein Problem ist jedoch, dass Debian einen bestimmten Bereich für Systembenutzer-UIDs angibt, der nur in /etc/adduser.conf unterstützt zu werden scheint , also naiv einen Systembenutzer mit useradd hinzufügen und die Angabe einer UID/GUID nicht im richtigen Bereich führt zu ernsthaften Problemen.

Verwandte:Warum funktioniert die CD-Funktion im Skript nicht?

Eine weitere häufige Verwendung für adduser soll das Hinzufügen eines Benutzers zu einer Gruppe vereinfachen. Hier der folgende Befehl:

adduser username newgroup

entspricht dem folgenden usermod Befehl:

usermod -a -G newgroup username

Der Hauptnachteil von usermod in diesem Fall ist das Vergessen, die
Append-Option zu übergeben (d.h.:-a ) würde dazu führen, dass der Benutzer aus allen Gruppen entfernt wird
bevor er zu „newgroup“ hinzugefügt wird (d. h.:-G alleine bedeutet „ersetzen durch“).

Ein Nachteil bei der Verwendung von adduser Hier können Sie jedoch nur jeweils eine Gruppe angeben.


Debian
  1. Debian 8 Jessie veröffentlicht – Was ist neu?

  2. Debian vs. Ubuntu:Was sind die Unterschiede?

  3. Was macht „lc_all=c“?

  4. Was gibt malloc(0) zurück?

  5. Was macht kill -- -0?

Useradd vs. Adduser:Was ist der Unterschied?

useradd vs. adduser:Was sind die Unterschiede?

Welchen Fehlercode gibt ein Prozess zurück, der Segfaults zurückgibt?

Was macht 'bash -c'?

Was ist der Unterschied zwischen adduser und useradd?

Was bedeutet echo $? tun?