Además del más generalizado useradd
, los sistemas basados en Debian también contienen un adduser
adicional comando que proporciona una interfaz de nivel superior para agregar usuarios y algunas tareas relacionadas. Hay varias preguntas/respuestas en otros sitios de SE que detallan las diferencias básicas entre estos comandos, por ejemplo:
- ServerFault:¿cuál es la diferencia entre 'useradd' y 'adduser'?
- Superusuario:¿Cuál es la diferencia entre "adduser" y "useradd"?
- Pregunte a Ubuntu:¿cuál es la diferencia entre adduser y useradd?
La mayoría de las respuestas esencialmente dicen que adduser
proporciona una interfaz más agradable para agregar usuarios de forma interactiva, pero no brinda muchos detalles sobre lo que sucede cuando adduser
se ejecuta que no se compara con useradd
. Entonces:
- ¿Qué significa
adduser
? haz esouseradd
¿no? - ¿Qué comandos necesito usar para producir resultados equivalentes?
Respuesta aceptada:
En primer lugar, los fragmentos de la página del manual respectivo resaltan las diferencias entre los dos comandos y dan alguna indicación de lo que está sucediendo. Para adduser
:
adduser y addgroup agregan usuarios y grupos al sistema según las opciones de la línea de comandos y la información de configuración en /etc/adduser.conf. Son interfaces más amigables para
las herramientas de bajo nivel como los programas useradd, groupadd y usermod, eligiendo de forma predeterminada los valores UID y GID conformes con la política de Debian, creando un directorio de inicio con una configuración esquelética, ejecutando un script personalizado y otras características.
Luego para useradd
:
useradd es una utilidad de bajo nivel para agregar usuarios. En Debian, los administradores normalmente deberían usar adduser(8) en su lugar.
Investigación adicional de adduser
revela que es un script de perl que proporciona una interfaz de alto nivel y, por lo tanto, ofrece algunas de las funciones de los siguientes comandos:
useradd
groupadd
passwd
– utilizado para agregar/cambiar las contraseñas de los usuarios.gpasswd
– utilizado para agregar/cambiar contraseñas de grupo.usermod
– se utiliza para cambiar varios parámetros asociados al usuario.chfn
– utilizado para agregar/cambiar información adicional retenida sobre un usuario.chage
– se utiliza para cambiar la información de caducidad de la contraseña.edquota
– se utiliza para cambiar las cuotas de uso del disco.
Una ejecución básica del adduser
El comando es el siguiente:
adduser username
Este simple comando hará varias cosas:
- Cree el usuario llamado
username
. - Cree el directorio de inicio del usuario (el valor predeterminado es
/home/username
y copie los archivos de/etc/skel
en él. - Cree un grupo con el mismo nombre que el usuario y coloque al usuario en él.
- Solicitar una contraseña para el usuario.
- Solicitar información adicional sobre el usuario.
El useradd
El programa puede lograr la mayor parte de esto, sin embargo, no lo hace de forma predeterminada y necesita opciones adicionales. Parte de la información requiere más comandos:
useradd -m -U username
passwd username
chfn username
Tenga en cuenta que adduser
asegura que los UID y GID creados se ajusten a la política de Debian. Creando usuarios normales con useradd
parece estar bien, siempre que UID_MIN
/UID_MAX
en /etc/login.defs
coincide con la política de Debian. Sin embargo, lo que es un problema es que Debian especifica un rango particular para los UID de usuario del sistema que solo parece ser compatible con /etc/adduser.conf
, así que agrega ingenuamente un usuario del sistema con useradd
y no especificar un UID/GUID en el rango correcto deja la posibilidad de problemas serios.
Otro uso común para adduser
es simplificar el proceso de agregar un usuario a un grupo. Aquí, el siguiente comando:
adduser username newgroup
es equivalente al siguiente usermod
comando:
usermod -a -G newgroup username
El principal inconveniente de usermod
en este caso es olvidar pasar la opción de agregar
(es decir:-a
) terminaría eliminando al usuario de todos los grupos
antes de agregarlo al "nuevo grupo" (es decir:-G
solo significa "reemplazar con").
Una desventaja de usar adduser
aquí, sin embargo, es que solo puede especificar un grupo a la vez.