Was ist der Unterschied zwischen adduser und useradd?

387

Was ist der Unterschied zwischen den Befehlen adduser und useradd unter Ubuntu?

    
Joe Cabezas 15.09.2013, 22:32
quelle

6 Antworten

339
  

useradd ist mit dem System kompiliert. Aber adduser ist   ein Perl-Skript, das useradd binary im Backend verwendet.

     

adduser ist benutzerfreundlicher und interaktiver als sein Backend    useradd . Es gibt keinen Unterschied in den bereitgestellten Funktionen.

Quelle: Was ist der Unterschied zwischen "adduser" und "useradd"? p>     

Radu Rădeanu 15.09.2013, 22:56
quelle
135

Verwenden Sie immer adduser (und deluser beim Löschen von Benutzern), wenn Sie neue Benutzer über die Befehlszeile erstellen. (Wenn Sie ein Skript schreiben, insbesondere wenn Sie Portabilität anstreben, sollten Sie stattdessen die Lowlevel-Dienstprogramme verwenden - und adduser / deluser ist möglicherweise nicht in allen Distros verfügbar, z. B. auf SuSE.)

Die Befehle useradd , userdel und usermod sind Low-Level-Dienstprogramme, die aus historischen Gründen zur Verfügung stehen, während adduser/deluser Do The Right Thing ™ ist. (Ich erinnere mich, was ich verwenden sollte, indem ich dachte, dass user* im Alphabet nach adduser/deluser kommt und daher "schlechter" ist.)

Entsprechend den jeweiligen Manpages (auf Ubuntu 12.04 Precise Pangolin, d. h. einem Debian-Derivatsystem).

Manpage für adduser sagt:

(Hervorhebung hinzugefügt.)

  

adduser und addgroup fügen Benutzer und Gruppen gemäß der Befehlszeile zum System hinzu   Optionen und Konfigurationsinformationen in /etc/adduser.conf . Sie sind freundlicher   Frontends zu den Low-Level-Tools wie useradd , groupadd und usermod -Programmen ,   Standardmäßig wählen Sie Debian-Richtlinien-konforme UID- und GID-Werte, um eine Heimat zu erstellen   Verzeichnis mit Skelettkonfiguration, Ausführen eines benutzerdefinierten Skripts und anderer Funktionen.    adduser und addgroup können in einem von fünf Modi ausgeführt werden:

Manpage für useradd sagt:

  

useradd ist ein einfaches Dienstprogramm zum Hinzufügen von Benutzern. Auf Debian sollten Administratoren dies tun   Verwenden Sie in der Regel stattdessen adduser(8) .

Siehe auch: Was ist der Unterschied zwischen "adduser" und "useradd"? (bei SuperUser)

    
zrajm 24.11.2013 18:42
quelle
14

adduser : Benutzer mit vollständigem Profil und Informationen (Pass, Kontingent, Berechtigung usw.) hinzufügen

useradd : Benutzer nur mit seinem Namen hinzufügen (wenn Sie einen temporären Benutzer nur mit einem Namen hinzufügen möchten, sind andere Informationen nicht erforderlich)

    
mandm 02.07.2014 13:00
quelle
8

Weitere Unterschiede, die zu bestimmten Szenarien führen, in denen useradd vorzuziehen ist.

  1. In einigen neueren Distributionen, einschließlich Ubuntu 14.4, fordert adduser dazu auf, Informationen wie Kennwort und "gecos" (Daten für den Fingerbefehl) einzugeben. Dies bedeutet, dass es weniger geeignet ist, von einem Skript aus anzurufen (Kredit: bereits in einem Kommentar von Wernight erwähnt).

    Die Eingabeaufforderungen können durch Übergabe von Null-Argumenten unterdrückt werden:

    adduser --disabled-password --gecos "" USER
    
  2. Mit
  3. useradd können Sie mehrere zusätzliche Gruppen übergeben, zu denen ein Benutzer mithilfe der Option -G hinzugefügt werden kann. adduser scheint den Befehl einmal für jede hinzuzufügende Gruppe aufzurufen.

AdamS 29.09.2015 23:38
quelle
7

adduser ist freundlicher, da es die Basisordner des Kontos und andere Einstellungen einrichtet (z. B. das automatische Laden von Systemstatistiken und Benachrichtigungen beim Anmelden), während useradd den Benutzer lediglich erstellt.

    
Paul 15.09.2013 23:05
quelle
3

Der grundlegende Unterschied besteht darin, dass "adduser" das Ausgangsverzeichnis & amp erstellt. Fügen Sie dem Verzeichnis Skeleton-Dateien hinzu, in denen "useradd" kein Basisverzeichnis erstellt. Skelettdateien!

adduser try:

Adding user 'try' ...
Adding new group 'try' (1001) ...
Adding new user 'try' (1001) with group 'try' ...
Creating home directory '/home/try' ...
Copying files from '/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for try
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y

useradd try1:

# ll /home/
total 20
drwxr-xr-x  5 root    root    4096 Oct 26 15:52 ./
drwxr-xr-x 22 root    root    4096 Oct 26 15:47 ../
drwx------  8 ashishk ashishk 4096 Oct 26 15:50 ashishk/
drwxr-xr-x  3 root    root    4096 Oct 14 13:02 .ecryptfs/
drwxr-xr-x  2 try     try     4096 Oct 26 15:52 try/
root@chef-workstation:/home/ashishk#
    
Ashish Karpe 26.10.2015 15:10
quelle

Tags und Links