¿Cuál es la diferencia entre adduser y useradd?

364

¿Cuál es la diferencia entre los comandos adduser y useradd en Ubuntu?

    
pregunta Joe Cabezas 15.09.2013 - 22:32

6 respuestas

317
  

useradd es un binario nativo compilado con el sistema. Pero, adduser es   un script perl que usa useradd binary en back-end.

     

adduser es más amigable e interactivo que su back-end   %código%. No hay diferencia en las características proporcionadas.

Fuente: ¿Cuál es la diferencia entre "adduser" y "useradd"?

    
respondido por el Radu Rădeanu 15.09.2013 - 22:56
132

Siempre use adduser (y deluser cuando borre usuarios) cuando esté creando nuevos usuarios desde la línea de comando. (Si está escribiendo un script, especialmente si apunta a la portabilidad, puede usar las utilidades de bajo nivel en su lugar, y adduser / deluser podría no estar disponible en todas las distribuciones, por ejemplo, en SuSE).

Los comandos useradd , userdel y usermod son utilidades de bajo nivel que están ahí por razones históricas, mientras que adduser/deluser Do The Right Thing ™. (Recuerdo qué usar pensando que user* viene después de adduser/deluser en el alfabeto, y por lo tanto es "peor").

De acuerdo con las páginas de manual respectivas (en Ubuntu 12.04 Precise Pangolin, es decir, un sistema derivado de Debian).

La página de manual para adduser dice:

(Énfasis añadido)

  

adduser y addgroup agregan usuarios y grupos al sistema de acuerdo con la línea de comando   opciones e información de configuración en /etc/adduser.conf . Son más amigables   interfaces para herramientas de bajo nivel como useradd , groupadd y usermod programs ,   seleccionando por defecto los valores de UID y GID conformes a la política de Debian, creando un hogar   directorio con configuración esqueletica, ejecutando un script personalizado y otras características.    adduser y addgroup se pueden ejecutar en uno de los cinco modos:

La página de manual para useradd dice:

  

useradd es una utilidad de bajo nivel para agregar usuarios. En Debian, los administradores deberían   usualmente use adduser(8) en su lugar.

Ver también: ¿Cuál es la diferencia entre "adduser" y "useradd"? (en SuperUser)

    
respondido por el zrajm 24.11.2013 - 18:42
14

adduser : agregar usuario con perfil completo e información (pase, cuota, permiso, etc.)

useradd : agregue al usuario solo con su nombre (si desea agregar un usuario temporal con solo un nombre, no se requiere otra información)

    
respondido por el mandm 02.07.2014 - 13:00
7

adduser es más amigable porque configura las carpetas principales de la cuenta y otras configuraciones (por ejemplo, cargar automáticamente las estadísticas del sistema y las notificaciones al iniciar sesión), mientras que useradd solo crea el usuario.

    
respondido por el Paul 15.09.2013 - 23:05
7

Otro par de diferencias que conducen a escenarios específicos donde useradd podría ser preferible.

  1. En algunas distribuciones más nuevas, incluida Ubuntu 14.4, adduser solicitará información como contraseña y "gecos" (datos para el comando de dedo). Esto significa que puede ser menos adecuado para llamar desde un script (crédito: ya mencionado en un comentario de Wernight).

    Las solicitudes se pueden suprimir pasando argumentos nulos:

    adduser --disabled-password --gecos "" USER
    
  2. useradd le permite pasar múltiples grupos adicionales para agregar un usuario mediante la opción -G . adduser parece requerir que invoques el comando una vez para que cada grupo lo agregue.

respondido por el AdamS 29.09.2015 - 23:38
3

La diferencia básica es "adduser" creará el directorio de inicio & amp; agregue esqueletos a ese directorio donde "useradd" no creará ningún directorio de inicio & amp; esqueleto de archivos!

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#
    
respondido por el Ashish Karpe 26.10.2015 - 15:10

Lea otras preguntas en las etiquetas