Quiero crear un nuevo usuario para ejecutar un servicio en el sistema pero no quiero tener /home
y otros archivos de configuración para él. Como si hubiera un usuario para postgres pero no tiene ningún /home
directorio.
users
home-directory
Owais Lone
fuente
fuente
Respuestas:
Por defecto, el comando useradd no crea directorios de inicio, pero para un demonio, le recomiendo que use la opción del sistema y cambie el shell a uno inexistente para que nadie pueda iniciar sesión con dicha cuenta (en ssh, por ejemplo):
Puede ver todas las opciones con
man useradd
yman groupadd
si también desea crear un grupo para el usuario.fuente
/sbin/nologin
como shell de inicio de sesión, aunque usarlo/bin/false
no haría ninguna diferencia.Pruebe
adduser --system --no-create-home USERNAME
o simplemente eche un vistazo alman adduser
que dice ser un " front-end más amigable para las herramientas de bajo nivel como useradd ... ".fuente
adduser
vs.useradd
, y ejecutar el comandouseradd
con estas opciones no produjo ningún error, pero creó la cuenta con shell/bin/bash
. "El comprador tenga cuidado".Necesitaba algo similar: un nuevo usuario sin privilegios de inicio de sesión y vinculado a un servicio del sistema. Sin embargo, la respuesta de Clausi crea un usuario con el grupo primario como 'nogroup', lo cual no era realmente deseable.
adduser --system --no-create-home --group USERNAME
crea un grupo de sistema con el mismo nombre que el usuario y lo asocia con el usuario como el grupo primario. Esto se puede verificar utilizandogroups USERNAME
elid USERNAME
comando o .fuente
Para agregar usuarios sin el directorio de inicio, los comandos son,
o
o
o
fuente
prueba este comando:
sudo useradd vivek
Esto creará un usuario sin crear su carpeta de inicio en
/home/vivek
fuente
/home/vivek
creará automáticamente.