En el sistema operativo Linux, el directorio home es un espacio fundamental donde se almacenan los datos y configuraciones personales de cada usuario. Este directorio es clave para la administración y gestión de usuarios dentro de un entorno multipropósito y multiusuario que caracteriza a Linux.
¿Qué es un usuario en Linux?
Un usuario en Linux es una cuenta que permite acceder e interactuar con el sistema, identificada por un UID (Identificador Único de Usuario) y un nombre de usuario fácil de recordar. Cada usuario tiene un directorio personal conocido como su home directory o directorio home, espacio donde guarda sus archivos, configuraciones personales y scripts.
- UID: Número único que distingue a cada usuario.
- Nombre de usuario: Identificador alfanumérico para el acceso.
- Directorio personal (home): Carpeta en /home donde reside el usuario y sus datos.
- Shell: Interfaz de línea de comandos usada por el usuario.
- Grupos: Conjuntos de usuarios con permisos compartidos.
Además, existen usuarios de sistema creados para servicios, que normalmente no pueden iniciar sesión, y usuarios regulares para uso cotidiano.
La estructura del directorio home
El directorio /home es la ubicación raíz para todos los directorios personales de los usuarios en un sistema Linux. En /home se almacenan carpetas individuales para cada usuario, y sólo el propietario tiene acceso completo a su directorio correspondiente.
Por ejemplo, el directorio personal de un usuario llamado "juan" se encuentra en /home/juan, donde puede gestionar sus archivos, configuraciones y registros.
Para navegar directamente a su home en alguna sesión SSH, puede utilizar el símbolo ~. De hecho, corriendo el comando pwd después de iniciar sesión, se mostrará la ruta actual, comúnmente el directorio home del usuario.

Contenido y función del directorio home
Dentro del directorio home residen archivos importantes como:
- .bash_profile: Archivo de configuración del shell para personalizar el entorno.
- Registros de acceso y errores vinculados al usuario.
- Archivos de configuración de PHP en phprc, que permiten personalizar el comportamiento de PHP para ese usuario.
Así, el directorio home no sólo guarda datos, sino que también contiene toda la configuración personal que da identidad y funcionalidad a la cuenta de usuario dentro del sistema.
Creación y gestión de usuarios en Linux
Para administrar usuarios, Linux ofrece comandos como adduser (interactivo) y useradd (más directo, ideal para scripts). Por defecto, al crear un usuario, se crea automáticamente su directorio home en /home, aunque en ciertos casos (usuarios de sistema) este directorio puede omitirse.
Es posible personalizar atributos como el shell asignado mediante la opción -s, o definir un UID y GID específicos para controlar el acceso y los permisos de manera más detallada.

Permisos y seguridad del directorio home
Linux es un sistema multiusuario que controla estrictamente los permisos de acceso a archivos y directorios. Cada directorio home es accesible únicamente por su propietario, manteniendo la privacidad y seguridad de los datos personales.
También es importante implementar contraseñas seguras para las cuentas, y administrar los privilegios mediante configuraciones como sudo, que permiten a usuarios específicos ejecutar comandos con autorizaciones elevadas de manera segura sin usar la cuenta root directamente.
Diferencias con sistemas Windows
En Windows, el concepto de directorio home del usuario es diferente. La variable de entorno %USERPROFILE% representa el equivalente al directorio personal en Windows, generalmente apuntando a algo similar a C:\Users\[usuario]. Para listar los archivos en ese directorio desde la consola se utiliza el comando dir "%USERPROFILE%".
Esto contrasta con Linux, donde el comando equivalente es ls $HOME. En Windows, intentar usar variables de entorno sin incluirlas en comillas puede causar errores. Además, la estructura y permisos en Windows difieren notablemente de Linux, complicando la gestión cruzada sin entender estas diferencias.

El estándar de jerarquía del sistema de archivos Linux (FHS)
Conocer la estructura estándar del sistema de archivos ayuda a entender mejor el lugar y la función del directorio home. En Linux:
- /: Directorio raíz del sistema.
- /bin y /sbin: Binarios esenciales y de administración.
- /usr: Segundo directorio más importante, con programas y librerías.
- /var: Archivos variables como registros.
- /home: Directorios personales de los usuarios.
- /root: Directorio personal del superusuario (root).
Es importante destacar que, a diferencia de Windows, Linux no usa letras de unidad; todos los archivos y directorios forman parte de una única jerarquía.
TODO sobre el SISTEMA de ARCHIVOS en Linux
Resumen de comandos útiles relacionados con directorio home y usuarios
- pwd: Muestra el directorio actual, útil para confirmar que estás en tu home.
- ls $HOME: Lista contenidos del directorio home en Linux.
- dir "%USERPROFILE%": Equivalente en Windows para listar el directorio home.
- adduser / useradd: Comandos para creación de usuarios.
- usermod: Modificar propiedades del usuario.
- id: Muestra información del usuario y grupos.
Importancia del directorio home en la administración de usuarios Linux
El directorio home constituye el entorno personal del usuario, donde se almacenan configuraciones, scripts, y datos importantes que definen su experiencia en el sistema. Su aislamiento mediante permisos es crucial para la seguridad y privacidad personal y del sistema.
Asimismo, la correcta gestión de usuarios y sus directorios home es fundamental para mantener un sistema Linux ordenado, seguro y eficiente, especialmente en entornos con múltiples usuarios y servicios.
