Domanda Qual è la differenza tra adduser e useradd?


Qual è la differenza tra i comandi adduser e useradd su Ubuntu?


365
2017-09-15 20:32


origine


Stessa domanda su Super User e su Server Fault - ændrük
e anche via Stackexchange Unix (risposta abbastanza dettagliata) - xealits


risposte:


useradd è un binario nativo compilato con il sistema. Ma, adduser è   uno script perl che usa useradd binario nel back-end.

adduser è più intuitivo e interattivo rispetto al suo back-end    useradd. Non c'è differenza nelle funzionalità fornite.

Fonte: Qual è la differenza tra "adduser" e "useradd"?


320
2017-09-15 20:56



aggiungi il comando useradd non creerai la directory '/ home / username' ma il comando adduser lo farà - Deepen
useradd con il -m l'opzione creerà la directory home. - richsinn
L'implosione non è così interessante, la semantica lo è. Piace adduser(8) è più userfriendly e crea e imposta un utente per impostazione predefinita come ti aspetti. E useradd(8) fai solo ciò che chiedi, quindi vuoi creare una home directory, devi dirla per crearla per te. - Anders
Devo google questo ogni volta ... Come posso aiutarmi a ricordare quale è quale? - Quentin Skousen
@kkhugs per me "adduser" si sente il più intuitivo perché è un comando che suona come inglese, mentre l'altro no, semanticamente. Se lo ricordi come il "più intuitivo" dei due, puoi anche provare a ricordarlo come preferito / più facile. - pzkpfw


Usa sempre adduser (e deluser quando si eliminano gli utenti) quando si creano nuovi utenti dalla riga di comando. (Se si sta scrivendo uno script, specialmente se si mira alla portabilità, si potrebbe voler usare invece le utilità di livello inferiore - e adduser/deluser potrebbe non essere disponibile su tutte le distro, ad es. su SuSE.)

Il useradd, userdel e usermod i comandi sono utilità di livello inferiore che sono lì per ragioni storiche, mentre adduser/deluser Fare la cosa giusta. (Ricordo quale usare pensando questo user* viene dopo adduser/deluser nell'alfabeto, e quindi è "peggio").

Secondo le rispettive manpage (su Ubuntu 12.04 Precise Pangolin, cioè un sistema derivato Debian).

Manpage per adduser dice:

(Enfasi aggiunta.)

adduser e addgroup aggiungere utenti e gruppi al sistema in base alla riga di comando   opzioni e informazioni di configurazione in /etc/adduser.conf. Sono più amichevoli   front-end per gli strumenti di basso livello come useradd, groupadd e usermod programmi,   per impostazione predefinita, scegli i valori UID e GID conformi alle policy di Debian, creando una home   directory con configurazione scheletrica, esecuzione di uno script personalizzato e altre funzionalità.    adduser e addgroup può essere eseguito in una delle cinque modalità:

Manpage per useradd dice:

useradd è un programma di utilità di basso livello per l'aggiunta di utenti. Su Debian, gli amministratori dovrebbero   di solito uso adduser(8) anziché.

Guarda anche: Qual è la differenza tra "adduser" e "useradd"? (su SuperUser)


133
2017-11-24 17:42



Non ricordo mai quale, quindi questo è il mio stupido mnemonico se aiuta qualcuno :) "utente" fa rima con "perdente", e "perdente" viene per ultimo. Quindi: adduser, deluser. - Mads Skjern
io attualmente disaccordo sopra "Sempre utente adduser": Per gli script automatici preferirei useradd perché è sempre lì, non interattivo, e non specifici distro. - Wernight
Provai adduser su openSUSE, e non è lì. (13.2) - cst1992
@ cst1992 Hai ragione, ho modificato la risposta per riflettere questo. Stranamente, quando ci ho provato locate adduser su un sistema SuSE 11 al lavoro ho scoperto che c'era un adduser manpage, ma non binario (e nemmeno a deluser manpage né un comando). - zrajm
useradd è migliore se sei un vero amministratore di sistema. Non essere in grado di usare adduser in uno script autonomo è un vero peccato. - answerSeeker


adduser: aggiungi utente con profilo completo e informazioni (pass, quota, permesso, ecc.)

useradd: aggiungi un utente con il suo nome solo (se vuoi aggiungere un utente temporaneo con solo un nome, altre informazioni non richieste)


14
2017-07-02 11:00



+1 e benvenuto! Ho votato la persona che non era in grado di spiegare il loro precedente voto negativo. Continuate così! I bravi programmatori salgono sempre in alto - (e non votano senza una spiegazione). :) - Ricalsin


adduser è più amichevole in quanto imposta le cartelle home dell'account e altre impostazioni (ad esempio, carica automaticamente le statistiche di sistema e le notifiche all'accesso), mentre useradd crea solo l'utente.


7
2017-09-15 21:05



Sbagliato. useradd può creare home directory con -m, impostare la password con -p, creare file skeleton con -k e aggiungere l'utente ai gruppi con -G. - ychaouche


Un altro paio di differenze, che portano a scenari specifici in cui potrebbe essere preferibile useradd.

  1. In alcune distribuzioni più recenti, tra cui Ubuntu 14.4, adduser richiederà informazioni come password e "gecos" (dati per il comando finger). Ciò significa che può essere meno adatto per chiamare da uno script (credito: già menzionato in un commento di Wernight).

    I prompt possono essere soppressi passando argomenti nulli:

    adduser --disabled-password --gecos "" USER
    
  2. useradd consente di passare più gruppi aggiuntivi per aggiungere un utente tramite il -G opzione. adduser sembra richiedere che tu chiami il comando una volta per ogni gruppo da aggiungere.


7
2017-09-29 21:38



Non funziona su Ubuntu 16.04. - answerSeeker


La differenza di base è "adduser" creerà la home directory e aggiungerà i file skeleton alla directory in cui "useradd" non creerà alcuna directory home e file skeleton!

adduser provare:

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#

3
2017-10-26 14:10



Sbagliato. Vedere commento precedente - ychaouche