Linux es un sistema multiusuario que permite crear y administrar cuentas independientes para cada persona que usa el equipo.
Esto es fundamental en entornos de trabajo reales. Imagina un servidor en una empresa como FEMSA: distintas personas necesitan acceder con diferentes niveles de permiso. Saber administrar usuarios y grupos te convierte en un profesional más completo.
¿Qué es un usuario en Linux?
Un usuario es una cuenta individual con su propio directorio, configuración y permisos. Cada usuario tiene un nombre único llamado username y un identificador numérico llamado UID (User ID).
El usuario más poderoso del sistema se llama root. Tiene acceso total a todo el sistema. Por seguridad, no debes usarlo de forma cotidiana.
Estructura de un usuario en Linux
Cada usuario tiene la siguiente información asociada:
| Campo | Descripción | Ejemplo |
|---|---|---|
| Username | Nombre de la cuenta | maria |
| UID | Número identificador | 1001 |
| Grupo principal | Grupo al que pertenece | ventas |
| Directorio home | Carpeta personal | /home/maria |
| Shell | Terminal que usa | /bin/bash |
Toda esta información se guarda en el archivo /etc/passwd. Puedes verlo con:
cat /etc/passwd
¿Cómo crear un usuario nuevo?
El comando para crear un usuario es useradd. La sintaxis básica es:
sudo useradd nombre_usuario
Sin embargo, este comando crea el usuario sin directorio personal. La forma recomendada es:
sudo useradd -m nombre_usuario
La opción -m crea automáticamente la carpeta /home/nombre_usuario.
Ejemplo 1 — Crear un usuario básico:
Supón que trabajas en Liverpool y necesitas crear una cuenta para una nueva empleada llamada Laura:
sudo useradd -m laura
Esto crea el usuario laura y su directorio /home/laura.
Ejemplo 2 — Crear un usuario con nombre completo y shell específico:
sudo useradd -m -c "Laura González" -s /bin/bash laura
-cagrega un comentario (generalmente el nombre completo).-sdefine la shell que usará el usuario.
Ejemplo 3 — Verificar que el usuario fue creado:
id laura
Salida esperada:
uid=1002(laura) gid=1002(laura) groups=1002(laura)
¿Cómo asignar una contraseña a un usuario?
Cuando creas un usuario con useradd, la cuenta queda bloqueada por defecto. Debes asignarle una contraseña con el comando passwd:
sudo passwd laura
El sistema te pedirá que escribas la contraseña dos veces:
New password:
Retype new password:
passwd: password updated successfully
Elige contraseñas seguras. Una buena contraseña mezcla letras mayúsculas, minúsculas, números y símbolos.
Cambiar tu propia contraseña:
Si quieres cambiar tu propia contraseña (sin sudo), escribe simplemente:
passwd
El sistema te pedirá primero tu contraseña actual y luego la nueva.
¿Qué es un grupo en Linux?
Un grupo es un conjunto de usuarios que comparten los mismos permisos sobre archivos y directorios. En lugar de asignar permisos uno por uno, asignas permisos al grupo y todos sus miembros los heredan.
Por ejemplo, en Bimbo podrías tener un grupo llamado contabilidad. Todos los usuarios de ese grupo pueden acceder a los archivos financieros.
¿Cómo crear un grupo?
El comando para crear un grupo es groupadd:
sudo groupadd nombre_grupo
Ejemplo — Crear un grupo para el equipo de tecnología:
sudo groupadd tecnologia
Puedes verificar que el grupo existe revisando el archivo /etc/group:
cat /etc/group | grep tecnologia
Salida esperada:
tecnologia:x:1003:
¿Cómo agregar un usuario a un grupo?
El comando usermod modifica las propiedades de un usuario existente. Para agregar un usuario a un grupo adicional:
sudo usermod -aG nombre_grupo nombre_usuario
-asignifica "append" (agregar sin quitar los grupos actuales).-Gespecifica el grupo destino.
Ejemplo 1 — Agregar a laura al grupo tecnologia:
sudo usermod -aG tecnologia laura
Ejemplo 2 — Agregar a laura al grupo sudo (para darle permisos de administrador):
sudo usermod -aG sudo laura
Esto es equivalente a darle acceso de administrador. Úsalo con cuidado.
Verificar los grupos de un usuario:
groups laura
Salida esperada:
laura : laura tecnologia sudo
¿Cómo eliminar un usuario?
Cuando un empleado deja la empresa, debes eliminar su cuenta por seguridad. El comando es userdel:
sudo userdel nombre_usuario
Si también quieres eliminar su directorio personal y sus archivos:
sudo userdel -r nombre_usuario
La opción -r elimina la carpeta /home/nombre_usuario y el correo del sistema asociado.
Ejemplo — Eliminar la cuenta de un ex-empleado de Mercado Libre:
sudo userdel -r carlos
¿Cómo eliminar un grupo?
El comando para eliminar un grupo es groupdel:
sudo groupdel nombre_grupo
Nota: No puedes eliminar un grupo si es el grupo principal de algún usuario activo. Primero debes cambiar el grupo principal de ese usuario o eliminar al usuario.
Referencia rápida de comandos
| Acción | Comando |
|---|---|
| Crear usuario con home | sudo useradd -m usuario |
| Asignar contraseña | sudo passwd usuario |
| Crear grupo | sudo groupadd grupo |
| Agregar usuario a grupo | sudo usermod -aG grupo usuario |
| Ver grupos del usuario | groups usuario |
| Ver info del usuario | id usuario |
| Eliminar usuario y archivos | sudo userdel -r usuario |
| Eliminar grupo | sudo groupdel grupo |
| Ver todos los usuarios | cat /etc/passwd |
| Ver todos los grupos | cat /etc/group |
Errores comunes
Error 1 — Olvidar la opción -m al crear el usuario.
Si usas sudo useradd laura sin -m, el usuario existe pero no tiene carpeta personal. Muchos programas fallan sin ese directorio. Siempre usa -m.
Error 2 — Usar -G sin -a al agregar grupos.
Si ejecutas sudo usermod -G tecnologia laura sin la -a, Linux reemplaza todos los grupos anteriores de Laura por solo tecnologia. Perderías membresías previas, incluyendo sudo si la tenía. Siempre combina -aG.
Error 3 — Eliminar un usuario sin revocar su acceso SSH primero.
En servidores de producción, si el usuario tiene llaves SSH configuradas, eliminar la cuenta con userdel puede no revocar el acceso de inmediato. En entornos críticos, bloquea primero la cuenta con sudo passwd -l nombre_usuario antes de eliminarla.
Error 4 — Dar permisos de sudo a todos los usuarios.
Agrégate al grupo sudo solo cuando sea estrictamente necesario. En un entorno corporativo como el de FEMSA, cada acceso privilegiado debe estar justificado y documentado.
Archivos importantes del sistema
Linux guarda toda la información de usuarios y grupos en tres archivos clave:
/etc/passwd— Lista de usuarios, sus UID, directorio home y shell./etc/shadow— Contraseñas cifradas. Solo root puede leerlo./etc/group— Lista de grupos y sus miembros.
Nunca edites estos archivos directamente. Usa siempre los comandos useradd, usermod, groupadd y similares para modificarlos de forma segura.
Puntos clave para recordar
- Cada usuario en Linux tiene un UID único y un directorio personal en
/home. - Usa
useradd -mpara crear usuarios con directorio personal incluido. - Asigna siempre una contraseña con
passwddespués de crear un usuario. - Los grupos permiten compartir permisos entre varios usuarios sin configurarlos uno por uno.
- Usa siempre
-aGconusermodpara no sobreescribir los grupos existentes de un usuario.