El mantenimiento de usuarios en GNU/Linux se realiza utilizando las herramientas useradd, usermod, userdel y passwd. En este artículo se explica con ejemplos el uso de cada herramienta.



Para crear un nuevo usuario, por ejemplo "pepe", se utiliza "useradd" con los siguientes parámetros:

useradd -d /home/pepe -c "Usuario Pepe" -m -s /bin/bash pepe

El parámetro "-d" indica el directorio $HOME del usuario. La opción "-m" indica que se cree un directorio $HOME, en caso de no existir, utilizando el directorio esqueleto "skeleton" que se encuentra en "/etc/skel". El parámetro "-c" se utiliza como texto descriptivo del login. Por último, el parámetro "-s" indica el shell a utilizar, en este caso "bash". El resto de los parámetros se obtienen automáticamente desde el archivo "/etc/login.defs" dependiendo de cada distribución.

Para asignarle un password al nuevo usuario "pepe" se utiliza la herramienta "passwd":

passwd pepe

Esta herramienta permite configurar muchas opciones adicionales, por ejemplo el tiempo de expiración del password (mediante la opción "-x"). Además es posible realizar otras tareas, como bloquear una cuenta y eliminar la contraseña (con las opciones "-l" y "-d" respectivamente).

Para eliminar un usario se utiliza la herramienta "userdel":

userdel -r pepe

La opción "-r" elimina el directorio $HOME del usuario.

Para realizar modificaciones sobre usuarios se utiliza "usermod". Algunos ejemplos:

Agregar un usuario existente (pepe) a un grupo existente (root):

usermod -a -G root pepe

Mover el directorio $HOME del usuario "pepe" a "/home/nuevo_pepe":

usermod -d /home/nuevo_pepe -m pepe

Cambiar comentario del usuario "pepe":

usermod -c "Nuevo comentario" pepe

Cambiar nombre de usuario (login), por ejemplo de "pepe" a "pedro":

usermod -l pedro pepe

Para determinar a qué grupos pertenece un usuario se puede utilizar la herramienta "groups":

groups pepe

Además de agregar un usuario a un grupo con "usermod", es posible quitar a un usuario de un grupo secundario de la siguiente forma:

Listar a qué grupos pertenece el usuario:

id -nG pepe

Ejemplo de salida: "pepe grupo1 grupo2 root"

Luego utilizar "usermod" sólo con la opción "-G" para asignarle al usuario todos los grupos menos el grupo del cual se desea remover (por ejemplo si se desea remover a "pepe" del grupo "root"):

usermod -G {pepe,grupo1,grupo2} pepe

También es posible administrar grupos editando manualmente el archivo "/etc/group".

Es altamente recomendable leer los manuales de estas herramientas:

man useradd
man userdel
man usermod
man passwd
man groups
man id

Recuerden siempre, en el mundo GNU/Linux "man" es tu amigo...


Tal vez pueda interesarte


Compartí este artículo