usermod con Bash

Comando usermod para Linux

El comando usermod de Linux es el utilizado para modificar las propiedades de los usuarios que existan en nuestro sistema. Este comando está muy relacionado con el comando adduser, desde el que podemos crear usuarios.

Recomendado crear un usuario nuevo de prueba para realizar las modificaciones de este tutorial.

Para cambiar el nombre de un usuario de nuestro sistema debemos hacer uso del comando usermod.

sudo usermod nuevo_nombre nombre_actual

Aunque si queremos evitar problemas de configuraciones, inicios de sesión, configuraciones del sistema, etc, es muy recomendable realizar el cambio del nombre incluyendo la opción -l.

Opciones con usermod en Linux

Como para la mayoría de comandos de Linux, si queremos dar más potencia se suele hacer uso de las opciones.

Vamos a ver algunas opciones para usermod, aunque recuerda que puedes ver todas las que existen ejecutando el comando man usermod.

  • -l → indicamos la intención de cambiar el nombre de usuario, el de inicio de sesión y algunas configuraciones más.
  • -d → para cambiar la carpeta de inicio de un usuario.
  • -g → sustituye el grupo principal asignado inicialmente por otro nuevo.

Ejemplo cambiando nombre de usuario con usermod

sudo usermod -l nuevo_nombre nombre_actual

Con la opción usermod -l garantizamos que todos los ajustes relacionados con el usuario se actualizan correctamente.

Antes de cambiar el nombre de algún usuario de nuestro sistema vamos a listar los que tenemos. Para esto hacemos uso del comando de Linux cat.

sudo cat /etc/passwd

Después de ejecutar el comando aparece un listado con todos los usuarios de nuestro sistema. Al final de la lista aparece un usuario llamado «tecnico» que será con el que practiquemos.

tecnico:x:50000:1000:a,b,c,d,e:/home/tecnico:/bin/bash

Ahora haciendo uso de la opción -l vamos a cambiar de nombre al usuario «tecnico» por «tecnico_blockchain». Después realizaremos una consulta con la ayuda de los comandos cat y grep para ver si se ha cambiado correctamente.

sudo usermod -l tecnico_blockchain tecnico
Cambiando el nombre de usuario haciendo uso del comando usermod -l de Linux.

Podemos ver la línea de respuesta y diferenciar los siguientes datos:

  • tecnico_blockchain → nombre de usuario.
  • x→ dispone de contraseña encriptada en /etc/shadow.
  • 50000 → UID identificador del usuario User ID.
  • 1000 → GID identificador del grupo Group ID.
  • a,b,c,d,e → información adicional del usuario ya existente.
  • /home/tecnico → ubicación del directorio del usuario.
  • /bin/bash → shell predeterminada asignada al usuario.

Observamos que la carpeta por defecto sigue siendo la que había anteriormente al cambio de nombre /home/tecnico.

Ahora vamos a cambiarla para que coincida con el nuevo nombre de usuario tecnico_blockchain.

Creamos la carpeta nueva para el directorio o cambiamos el nombre de la anterior (realizar una acción u otra va a depender de si tenemos datos que nos interese conservar).

sudo mkdir /home/tecnico_blockchain
sudo mv /home/tecnico /home/tecnico_blockchain

Ahora con la ayuda de la opción -d le indicamos que queremos que sea /home/tecnico_blockchain el nuevo directorio.

sudo usermod -d /home/tecnico_blockchain tecnico_blockchain

Podemos ver en la captura de pantalla que el cambio de nombre de usuario y del directorio de inicio para éste se han realizado correctamente.

Cambiando el directorio de inicio del usuario haciendo uso del comando usermod -d de Linux.

Cambiando de grupo principal a un usuario

Ahora vamos a cambiar el grupo principal del usuario al que hemos modificado su nombre y ruta del directorio de inicio.

Si mostramos la información del usuario tecnico_blockchain podemos observar entre otras cosas lo siguiente:

sudo cat /etc/passwd | grep tecnico_blockchain
tecnico_blockchain:x:50000:1000:a,b,c,d,e:/home/tecnico_blockchain:/bin/bash
  • 1000 → GID identificador del grupo Group ID.

Este 1000 hace referencia al identificador del grupo kali, que fue el grupo principal que se le asignó al crear a este usuario en otro tutorial. Ahora vamos a cambiar este grupo principal por otro, le asignaremos el grupo coder que tiene como identificador el 1002.

Ahora haremos uso de la opción -g para cambiar de grupo principal.

sudo usermod -g coder tecnico_blockchain

Si volvemos a mostrar la información del usuario tecnico_blockchain podemos ver que su grupo principal ha cambiado de 1000 a 1002.

sudo cat /etc/passwd | grep tecnico_blockchain
tecnico_blockchain:x:50000:1002:a,b,c,d,e:/home/tecnico_blockchain:/bin/bash
Cambiando el grupo principal del usuario haciendo uso del comando usermod -g de Linux.

Podemos verificar también que el cambio de grupo se ha realizado correctamente consultado a qué grupos pertenece el usuario tecnico_blockchain.

sudo groups tecnico_blockchain
tecnico_blockchain : coder users

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *