Cómo crear un directorio de inicio para un usuario existente en Linux

De forma predeterminada, cuando crea un usuario en Linux, el directorio de inicio predeterminado de los usuarios se crea en / home. Si notó que en la distribución derivada de Ubuntu y Debian, el comando useradd no creará un directorio de inicio de forma predeterminada.

Pensemos en una situación en la que ya ha creado un usuario pero falta el directorio de inicio. En este tutorial, le mostraré cómo crear un directorio de inicio predeterminado para un usuario existente en Linux.

Crear directorio de inicio predeterminado para el usuario existente

Aquí estoy usando Ubuntu 20.04 y voy a crear un usuario llamado ‘bob’ usando el comando useradd:

$ sudo useradd bob

El comando Useradd ha agregado un directorio de inicio de entrada en el archivo / etc / passwd

$ grep bob /etc/passwd
bob:x:1003:1003::/home/bob:/bin/sh
$

Si intento iniciar sesión como usuario que usa su -, muestra que es logging in with Home=/. Esto significa que no se crea el directorio de inicio del usuario.

$ su - bob
Password:
No directory, logging in with HOME=/
$

En Linux, el directorio de inicio predeterminado de un usuario es / home. Para crear un directorio de inicio predeterminado, utilice mkhomedir_helper mando.

Asegúrate de correr mkhomedir_helper comando como root o usuario con sudo acceso.

$ sudo mkhomedir_helper bob

El comando anterior crea un directorio de inicio llamado “/ home / bob” y archivos de configuración de usuario.

$ ls -al /home/bob
total 20
drwxr-xr-x 2 bob bob 4096 Jun 1 02:26 .
drwxr-xr-x 5 root root 4096 Jun 1 02:26 ..
-rw-r--r-- 1 bob bob 220 Jun 1 02:26 .bash_logout
-rw-r--r-- 1 bob bob 3771 Jun 1 02:26 .bashrc
-rw-r--r-- 1 bob bob 807 Jun 1 02:26 .profile

Para un entorno gráfico (como GNOME o XFCE), si faltan subdirectorios en el directorio de inicio, el usuario debe cerrar la sesión y volver a iniciarla.

Cuando el usuario inicia sesión por primera vez, todos los subdirectorios, como las carpetas Imágenes, Documentos, Vídeos y Descargas, se pueden crear en el directorio de inicio.

Otro método es eliminar el usuario y crear un nuevo usuario usando -m o --create-home opción.

El siguiente comando crea una carpeta de inicio (-m) y establece el directorio de inicio especificado (-d) como el valor para el inicio de sesión del nuevo usuario:

$ sudo useradd -m -d /home/bob01 bob01

Conclusión

Para concluir, si eres un fanático de Ubuntu, ahora deberías estar usando agregar usuario comando, es recomendado por Debian. Si tiene un usuario existente, ahora debería poder agregar el directorio predeterminado.

Gracias por leer y deje sus sugerencias en la sección de comentarios a continuación.