Cómo cambiar la información de inicio de sesión de un usuario con Usermod

1 mar 2021 4 min di lettura
Cómo cambiar la información de inicio de sesión de un usuario con Usermod
Indice dei contenuti

Introducción

Usermod es una utilidad de línea de comandos que le permite cambiar la información de inicio de sesión de un usuario.

Este artículo explica cómo usar el usermod para agregar un usuario a un grupo, cambiar un shell de usuario, nombre de inicio de sesión, directorio de inicio y más.

Comando Usermod

La sintaxis del usermod tiene la siguiente forma:

usermod [options] USER

Solo root o usuarios con sudo pueden invocar usermod y modificar una cuenta de usuario. Si tiene éxito, el comando no muestra ningún resultado.

Agregar un usuario a un grupo

El caso de uso más típico de usermod es agregar un usuario a un grupo.

Para agregar un usuario existente a un grupo secundario, use las -a -G seguidas del nombre del grupo y el nombre de usuario:

usermod -a -G GROUP USER

Si desea agregar el usuario a varios grupos a la vez, especifique los grupos después de la -G separados por , (comas) sin espacios en blanco.

Por ejemplo, para agregar el usuario noviello games, debe ejecutar el siguiente comando:

sudo usermod -a -G games noviello

Utilice siempre la -a (agregar) cuando agregue un usuario a un grupo nuevo. Si omite la -a, el usuario será eliminado de los grupos que no aparecen después de la opción -G

Si el usuario o grupo no existe, el comando le advertirá.

Cambiar el grupo principal de un usuario

Para cambiar el grupo principal de un usuario, invoque el usermod con la -g seguida del nombre del grupo y el nombre de usuario:

sudo usermod -g GROUP USER

En el siguiente ejemplo, cambiemos el grupo principal del usuario noviello developers:

usermod -g developers noviello

Cada usuario puede pertenecer exactamente a un grupo primario y a cero o más grupos secundarios.

Cambiar la información de un usuario

Para cambiar la información de GECOS (el nombre completo del usuario), ejecute el comando con la -c seguida del nuevo comentario y nombre de usuario:

usermod -c "GECOS Comment" USER

A continuación, se muestra un ejemplo que muestra cómo agregar más información al usuario de noviello

usermod -c "Test User" noviello

Esta información se almacena en el /etc/passwd.

Cambiar el directorio de inicio de un usuario

En la mayoría de los sistemas Linux, los directorios de inicio del usuario se nombran después del nombre del usuario y se crean en el directorio /home

Si, por alguna razón, desea cambiar el directorio de inicio del usuario, emita el usermod con la -d seguida de la ruta absoluta al nuevo directorio de inicio y el nombre del usuario:

usermod -d HOME_DIR USER

De forma predeterminada, el comando no mueve el contenido del directorio de inicio del usuario al nuevo. Para mover el contenido, use la opción -m Si el nuevo directorio aún no existe, se crea:

usermod -d HOME_DIR -m USER

Aquí hay un ejemplo que muestra cómo cambiar el directorio de inicio del usuario de www-data /var/www:

usermod -d /var/www www-data

Cambiar el shell predeterminado del usuario

El shell predeterminado es el que se ejecuta después de iniciar sesión en el sistema. De forma predeterminada, en la mayoría de los sistemas Linux, el shell predeterminado está configurado en Bash Shell.

Para cambiar el shell predeterminado del usuario, ejecute el comando con la -s seguida de la ruta absoluta al shell y el nombre del usuario:

usermod -s SHELL USER

En el siguiente ejemplo, estamos cambiando el shell de usuario a Zsh:

sudo usermod -s /usr/bin/zsh noviello

Puede averiguar qué shells están disponibles en su sistema viendo el contenido de /etc/shells.

Cambiar el UID de un usuario

UID (el identificador de usuario) es un número asignado a cada usuario. Es utilizado por el sistema operativo para referirse a un usuario.

Para cambiar el UID del usuario, invoque el comando con la -u seguida del nuevo UID y el nombre del usuario:

usermod -u UID USER

El siguiente ejemplo muestra cómo cambiar el número "UID" a "1050":

sudo usermod -u 1050 noviello

El UID de los archivos propiedad del usuario ubicados en el directorio de inicio del usuario y el archivo del buzón del usuario se cambiarán automáticamente. La propiedad de todos los demás archivos debe cambiarse manualmente.

Cambiar el nombre de usuario

A veces, es posible que desee cambiar el nombre de un usuario existente. La -l se usa para cambiar el nombre de usuario:

usermod -l NEW_USER USER

En el siguiente ejemplo, cambiamos el nombre del usuario de noviello alice:

sudo usermod -l noviello alice

Al cambiar el nombre de usuario, es posible que también desee cambiar el directorio de inicio del usuario para reflejar el nuevo nombre de usuario.

Establecer una fecha de vencimiento de usuario

La fecha de vencimiento es la fecha en la que se desactivará la cuenta de usuario. Para establecer la fecha de vencimiento del usuario, use la opción -e

sudo usermod -e DATE USER

La fecha de vencimiento debe establecerse con el YYYY-MM-DD.

Por ejemplo, para desactivar el noviello usuario en 2022-02-21, se debe ejecutar el siguiente comando:

sudo usermod -e "2022-02-21" noviello

Para deshabilitar el vencimiento de la cuenta, establezca una fecha de vencimiento en blanco:

sudo usermod -e "" noviello

Use el chage -l para ver la fecha de vencimiento del usuario:

sudo chage -l noviello
Last password change: Jul 24, 2018
 Password expires: never
 Password inactive: never
 Account expires: never
 Minimum number of days between password change: 0
 Maximum number of days between password change: 99999
 Number of days of warning before password expires: 7

La fecha de vencimiento se almacena en el /etc/shadow.

Bloquear y desbloquear una cuenta de usuario

La -L permite bloquear una cuenta de usuario:

usermod -L USER

Los comandos colocarán un signo de exclamación ( ! ) Delante de la contraseña cifrada. Cuando el campo de contraseña en el /etc/shadow contiene un signo de exclamación, el usuario no podrá iniciar sesión en el sistema mediante la autenticación de contraseña. Sin embargo, todavía se permiten otros métodos de acceso, como la autenticación basada en claves o el traspaso de usuarios. Si desea bloquear la cuenta y deshabilitar todos los métodos de inicio de sesión, también debe establecer la fecha de vencimiento en 1.

Los siguientes ejemplos muestran cómo bloquear al usuario de noviello

sudo usermod -L noviello
sudo usermod -L -e 1 noviello

Para desbloquear un usuario, ejecute usermod con la opción -U

usermod -U USER

Conclusión

Le mostramos cómo usar el usermod para configurar la información de la cuenta de usuario.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.