Ich frage mich: Warum gibt es diese beiden Befehle unter Debian Linux mit sehr ähnlichen Namen und Funktionen? Das war für mich immer verwirrend.
- Ist einer von ihnen einem anderen überlegen?
- Warum verschmelzen sie nicht zu einem?
- Gibt es einen signifikanten Unterschied zwischen ihnen?
- Welches soll ich verwenden? Oder hängt es von einem Anwendungsfall ab?
linux
debian
user-management
Petr Pudlák
quelle
quelle
useradd
auf allen Unix-ähnlichen Plattformen verfügbar ist.adduser
ist nur für Debian und seine Derivate.Antworten:
useradd
ist native Binärdatei, die mit dem System kompiliert wurde. Aber esadduser
ist ein Perl-Skript, dasuseradd
im Back-End Binärdateien verwendet .adduser
ist benutzerfreundlicher und interaktiver als das Back-Enduseradd
. Die angebotenen Funktionen unterscheiden sich nicht.quelle
Der Hauptvorteil von adduser gegenüber useradd liegt im Umgang mit Benutzern auf Systemebene. Mit adduser legt das Benutzerkonto auf Systemebene bei seiner Erstellung ein Benutzerverzeichnis für den Systembenutzer an, in dem useradd nicht automatisch eingerichtet wird. Wenn Sie den Mann lesen, sind sie im Wesentlichen gleich, mit Ausnahme der Benutzer auf Systemebene und der zugehörigen Basisverzeichnisse. adduser erstellt automatisch ein Verzeichnis / home / user für Benutzer auf Systemebene , für die useradd keine Bestimmung enthält , es sei denn, die Option -m gibt dies an . Die anderen Lesungen, auf die ich gestoßen bin, besagen allgemein, dass UID und GUID von akzeptierten konformen Debian-Standards in adduser zugewiesen werden.
quelle
In einigen von mir überprüften Redhat-Instanzen (4.9 von 2011 und 6.9 von 2017) ist adduser einfach ein Alias für useradd, kein Perl-Skript. Hier ist es in Redhat 6.9:
Ich erinnere mich, dass useradd das 'richtige' Programm ist: Das Hinzufügen eines Benutzers ist nur eine Operation im CRUD-Spektrum. Sie müssen auch die Operationen 'Ändern' und 'Löschen' ausführen ('Lesen' wird vermutlich durch das Anzeigen von / etc / passwd abgedeckt). Die Programme heißen also user * (useradd, usermod bzw. userdel). Ich nehme an, dass die alternative * Benennungskonvention (adduser, moduser und deluser - diese existieren nicht) auch funktionieren könnte. Aber es wäre etwas umständlicher (aus einem Grund, den ich im Moment nicht klar ausdrücken kann :)
quelle
moduser
auf Debian nicht finden , ist aberdeluser
definitiv da.In raspian (ich müsste nach anderen Betriebssystemen suchen) startet 'adduser USER' einen Dialog (TUI), 'useradd USER' NICHT.
Anscheinend wird bei Verwendung von adduser nach dem Aufrufen des Dialogfelds der vollständige Befehl 'useradd' bereits ausgeführt. Auch wenn Sie STRG-C drücken, ist Ihr Benutzer dort.
Wie in den neuen Systemen erstellen sie "persönliche" Gruppen. Um den neu erstellten Benutzer zu entfernen, müssten Sie:
Ich gehe davon aus, dass adduser useradd "verwendet", der Rest sind Metadaten über den Benutzer. Also technisch keine Änderungen an "Skel", "Dateimasken" o.ä.
Da useradd keine TUI aufruft, ist es möglicherweise für die Skripterstellung nützlicher.
Um ehrlich zu sein, habe ich es nur auf Rasbian getestet, weil ich deshalb auf die Frage getreten bin.
Ich kann mir vorstellen, dass andere Betriebssysteme möglicherweise eine andere Version von adduser implementieren.
quelle