Una guía completa para el uso del comando ‘usermod’: 15 ejemplos prácticos con capturas de pantalla

En las distribuciones Unix/Linux, el comando “ usermod ” se usa para modificar o cambiar cualquier atributo de una cuenta de usuario ya creada a través de la línea de comandos. El comando ‘ usermod. es similar al de ‘ useradd. o ‘ adduser. pero el inicio de sesión otorgado a un usuario existente.

Ejemplos de comandos de usermod 15 Ejemplos de comandos de usermod

Se utiliza el comando ‘ useradd. o ‘ adduser. para crear cuentas de usuario en sistemas Linux. Para saber más sobre cómo crear usuarios del sistema, lea nuestra guía completa en:

  1. Una guía completa para el comando “useradd” en Linux

Después de crear cuentas de usuario, en algunos escenarios donde necesitamos cambiar los atributos de un usuario existente, como cambiar el directorio de inicio del usuario, el nombre de inicio de sesión, el shell de inicio de sesión, la fecha de caducidad de la contraseña, etc., donde en tal caso se usa el comando ‘usermod’.

Cuando ejecutamos el comando ‘usermod’ en la terminal, los siguientes archivos se utilizan y se ven afectados.

  1. /etc/passwd -Información de la cuenta de usuario.
  2. /etc/shadow : información segura de la cuenta.
  3. /etc/group : información de la cuenta del grupo.
  4. /etc/gshadow : información segura de la cuenta del grupo.
  5. /etc/login.defs : configuración del paquete de contraseñas ocultas ..

La sintaxis básica del comando es:

usermod [opciones] nombre de usuario Requisitos

  1. Debemos tener cuentas de usuario existentes para ejecutar el comando usermod.
  2. Solo superusuario ( raíz) es una Permitido ejecutar el comando usermod.
  3. El comando usermod se puede ejecutar en cualquier distribución de Linux.
  4. Debe tener conocimientos básicos del comando usermod con opciones

Opciones de Usermod freestar.config.enabled_slots.push

El comando ‘ usermod. es fácil de usar con muchas opciones para realizar cambios a un usuario existente. Veamos cómo usar el comando usermod modificando algunos usuarios existentes en el cuadro de Linux con la ayuda de las siguientes opciones.

  1. -c = Podemos agregar un campo de comentario para el useraccount.
  2. -d = Para modificar el directorio de cualquier cuenta de usuario existente.
  3. -e = Usando esta opción puede hacer que la cuenta caduque en un período específico.
  4. -g = Cambiar el grupo principal de un usuario.
  5. -G = Para agregar un grupo complementario.
  6. -a = Para agregar a alguien del grupo a un grupo secundario.
  7. -l = Para cambiar el nombre de inicio de sesión de tecmint a tecmint_admin.
  8. -L = Para bloquear la cuenta de usuario. Esto bloqueará la contraseña para que no podamos usar la cuenta.
  9. -m = mover el contenido del directorio de inicio desde el directorio de inicio existente al nuevo directorio.
  10. -p = Para utilizar una contraseña no cifrada para la nueva contraseña. (NO protegido).
  11. -s = Crear un shell especificado para nuevas cuentas.
  12. -u = Usado para asignar UID para la cuenta de usuario entre 0 y 999.
  13. -U = Para desbloquear las cuentas de usuario. Esto eliminará el bloqueo de contraseña y nos permitirá usar la cuenta de usuario.

En este artículo veremos ‘ 15 comandos de usermod. con sus ejemplos prácticos y su uso en Linux, lo que le ayudará a aprender y mejorar sus habilidades en la línea de comandos usando estas opciones.

1. Agregar información a la cuenta de usuario

La opción “-c ” se utiliza para establecer un breve comentario (información) sobre la cuenta de usuario. Por ejemplo, agreguemos información sobre el usuario ‘ tecmint. , usando el siguiente comando.

# usermod-c “ Esto es Tecmint “tecmint

Después de agregar información sobre el usuario, el mismo comentario se puede ver en el archivo /etc/passwd.

# grep-E–color ‘tecmint’/etc/passwd tecmint: x: 500: 500: Este es Tecmint :/home/tecmint:/bin/sh  Agregar información del usuario en Linux Agregar información al usuario

2. Cambiar el directorio de inicio del usuario

En el paso anterior podemos ver que nuestro directorio de inicio está en /home/tecmint/, si necesitamos cambiarlo a otro directorio podemos cambiar usando la opción -d con el comando usermod.

Por ejemplo, quiero cambiar nuestro directorio de inicio a /var/www/, pero antes de cambiar, revisemos el directorio de inicio actual de un usuario, usando el siguiente comando.

# grep-E–color ‘/home/tecmint’/etc/passwd tecmint: x: 500: 500: Este es Tecmint: /home/tecmint :/bin/sh

Ahora, cambie el directorio de inicio de /home/tecmint. a /var/www/ y confirme el director de inicio después de cambiar.

# usermod-d/var/www/tecmint # grep-E–color ‘/var/www/’/etc/passwd tecmint: x: 500: 500: Este es Tecmint: /var/www :/bin/sh  Cambiar directorio de inicio de usuario Cambiar directorio de inicio de usuario

3. Establecer la fecha de vencimiento de la cuenta de usuario

La opción ‘-e. se usa para establecer la fecha de vencimiento en una cuenta de usuario con el formato de fecha AAAA-MM-DD. Antes de configurar una fecha de vencimiento para un usuario, primero verifiquemos el estado de vencimiento de la cuenta actual usando el comando ‘ chage. (cambiar la información de vencimiento de la contraseña del usuario).

# chage-l tecmint Last cambio de contraseña: 2 de noviembre de 2014 La contraseña caduca: nunca Contraseña inactiva: nunca La cuenta caduca: 1 de diciembre de 2014 Número mínimo de días entre cambios de contraseña: 0 Número máximo de días entre cambio de contraseña: 99999 Número de días de advertencia antes de que caduque la contraseña: 7

El estado de caducidad de un usuario ‘ tecmint. es 1 de diciembre de 2014 , cambiémoslo a 1 de noviembre de 2014 usando la opción ‘ usermod-e. y confirme la fecha de vencimiento con el comando ‘ chage. .

# usermod-e 2014-11-01 tecmint # chage-l tecmint Último cambio de contraseña: 2 de noviembre de 2014 La contraseña caduca: nunca Contraseña inactiva: nunca La cuenta caduca: 1 de noviembre de 2014 M número mínimo de días entre cambios de contraseña: 0 Número máximo de días entre cambios de contraseña: 99999 Número de días de advertencia antes de que expire la contraseña: 7  Agregar fecha de vencimiento del usuario en Linux Establecer la fecha de vencimiento de la cuenta de usuario

4. Cambiar grupo primario de usuarios

Para configurar o cambiar un grupo primario de usuarios, usamos la opción “-g. con el comando usermod. Antes de cambiar el grupo principal del usuario, primero asegúrese de verificar el grupo actual para el usuario tecmint_test .

# id tecmint_test uid = 501 (tecmint_test) gid = 502 ( tecmint_test ) groups = 502 (tecmint_test)

Ahora, configure el grupo babin como grupo principal para el usuario tecmint_test y confirme el cambios.

# usermod-g babin tecmint_test # id tecmint_test uid = 501 (tecmint_test) gid = 502 ( babin ) groups = 502 (tecmint_test)  Cambiar grupo de usuarios en Linux Cambiar grupo primario de usuarios

5. Agregar un grupo a un usuario existente

Si desea agregar un nuevo grupo llamado ‘ tecmint_test0. al usuario ‘ tecmint. , puede usar la opción ‘ -G. ‘con el comando usermod como se muestra a continuación.

# usermod-G tecmint_test0 tecmint # id tecmint  Agregar grupo a usuario en Linux Agregar grupo al usuario

Nota. tenga cuidado al agregar nuevos grupos a un usuario existente con ‘ La opción -G ‘ por sí sola eliminará todos los grupos existentes a los que pertenece el usuario. Por lo tanto, siempre agregue la opción “-a. (agregar) con “-G. para agregar o agregar nuevos grupos.

6. Agregar un grupo complementario y principal al usuario

Si necesita agregar un usuario a cualquiera del grupo complementario, puede usar las opciones ‘-a. y ‘-G. ‘. Por ejemplo, aquí vamos a agregar una cuenta de usuario tecmint_test0 con la rueda usuario.

# usermod-a-G rueda tecmint_test0 # id tecmint_test0

Entonces, el usuario tecmint_test0 permanece en su grupo principal y también en el grupo secundario ( rueda. . Esto hará que mi cuenta de usuario normal ejecute cualquier comando con privilegios de root en el cuadro de Linux.

por ejemplo: sudo service httpd restart  Agregar varios grupos al usuario Agregar varios grupos al usuario

7. Cambiar nombre de inicio de sesión de usuario

Para cambiar cualquier nombre de inicio de sesión de usuario existente, podemos usar la opción “-l. (nuevo inicio de sesión). En el siguiente ejemplo, cambiamos el nombre de inicio de sesión tecmint. a tecmint_admin. Así que el nombre de usuario tecmint. ha sido renombrado con el nuevo nombre tecmint_admin.

# usermod-l tecmint_admin tecmint

Ahora busque el tecmint. usuario, no estará presente porque lo hemos cambiado a tecmint_admin.

# id tecmint

Busque la cuenta tecmint_admin. que estará allí con el mismo UID. y con el grupo existente lo que hemos agregado antes.

# id tecmint_admin  Cambiar el nombre de inicio de sesión del usuario en Linux Cambiar el nombre de inicio de sesión del usuario 8. Bloquear cuenta de usuario

Para bloquear cualquier cuenta de usuario del sistema, podemos usar la opción ‘-L. (bloquear). Una vez que la cuenta está bloqueada, no podemos iniciar sesión con la contraseña. y verá un ! agregado antes de la contraseña encriptada en el archivo /etc/shadow. significa que la contraseña está deshabilitada.

# usermod-L babin

Busque la cuenta bloqueada.

# grep-E–color ‘babin’ cat/etc/shadow  Bloquear cuenta de usuario en Linux  Bloquear cuenta de usuario en Linux Bloquear cuenta de usuario

9. Desbloquear cuenta de usuario

La opción ‘-U. se usa para desbloquear cualquier usuario bloqueado, esto eliminará el ! antes de la contraseña cifrada.

# grep-E–color ‘babin’/etc/shadow # usermod-U babin

Verifica al usuario después del desbloqueo.

# grep-E–color ‘babin’/etc/shadow  Desbloquear cuenta de usuario en Linux Desbloquear cuenta de usuario

10. Mover el directorio de inicio del usuario a la nueva ubicación

Supongamos que tiene una cuenta de usuario como “ pinky. con el directorio de inicio “/home/pinky. , desea moverse a una nueva ubicación, diga “/var/pinky. . Puede utilizar las opciones ‘-d. y ‘-m. para mover los archivos de usuario existentes desde el directorio de inicio actual a un nuevo directorio de inicio.

Busque la cuenta y su directorio de inicio actual.

# grep-E–color ‘pinky’/etc/passwd

Luego enumere los archivos que son propiedad del usuario pinky.

# ls-l/home/pinky/

Ahora tenemos que mover el directorio de inicio de /home/pinky. a /var/pinky.

# usermod-d/var/pinky/-m pinky

A continuación, verifique el cambio de directorio.

# grep-E–color ‘pinky’/etc/passwd

Busque los archivos en ‘/home/meñique. ‘. Aquí hemos movido los archivos usando la opción -m. para que no haya archivos. Los archivos de usuario de meñique ahora estarán en /var/pinky.

# ls-l/home/pinky/# ls-l/var/pinky/  Mover el directorio de inicio de usuario en Linux

Move User Home Directory

11. Crear una contraseña sin cifrar para el usuario

Para crear una contraseña sin cifrar, usamos la opción “-p. (contraseña). Para fines de demostración, estoy configurando una nueva contraseña que diga ‘ redha. t’ en un usuario pinky.

# usermod-p redhat pinky

Después de configurar contraseña, ahora verifique el archivo de sombra para ver si está en formato encriptado o no.

# grep-E–color ‘pinky’/etc/shadow  Crear contraseña de usuario sin cifrar en Linux  Crear contraseña de usuario sin cifrar en Linux

Crear contraseña de usuario sin cifrar

Nota. ¿Viste en la imagen de arriba?, la contraseña es claramente visible para todos. Por lo tanto, no se recomienda usar esta opción, porque la contraseña será visible para todos los usuarios.

12. Cambiar el shell de usuario

El shell de inicio de sesión del usuario se puede cambiar o definir durante la creación del usuario con el comando useradd. o con el comando ‘ usermod. usando la opción ‘-s. ‘(shell). Por ejemplo, el usuario ‘ babin. tiene el shell /bin/bash. por defecto, ahora quiero cambiarlo a /bin/sh. .

# grep-E–color ‘babin’/etc/passwd # usermod-s/bin/sh babin

Después de cambiar el shell del usuario, verifique el shell del usuario con el siguiente comando.

# grep-E–color ‘babin’/etc/passwd  Cambiar Shell de inicio de sesión de usuario en Linux Cambiar Shell de inicio de sesión de usuario

13. Cambiar ID de usuario (UID)

En el ejemplo siguiente, puede ver que mi cuenta de usuario “ babin. tiene el UID de 502. ahora quiero cambiarlo a 888. como mi UID. Podemos asignar UID entre 0. y 999.

# grep-E–color ‘babin’/etc/passwd O # id babin

Ahora, cambiemos el UID para el usuario babin. usando la opción ‘-u. (uid) y verifiquemos los cambios.

# usermod-u 888 babin

# id babin Cambiar UID de usuario

14. Modificación de la cuenta de usuario con múltiples opciones

Aquí tenemos un jack de usuario y ahora quiero modificar su directorio de inicio, shell, fecha de caducidad, etiqueta, UID y grupo a la vez usando uno comando único con todas las opciones como discutimos anteriormente.

El usuario Jack tiene el directorio de inicio predeterminado /home/jack , ahora quiero cambiarlo a /var/www/html y asigne su shell como bash , establezca la fecha de caducidad como el 10 de diciembre de 2014, agregue una nueva etiqueta como Este es Jack , cambie el UID a 555 y será miembro del grupo de Apple.

Veamos cómo modificar la cuenta de Jack usando la opción múltiple ahora.

# usermod-d/var/www/html/-s/bin/bash-e 2014-12-10-c “Este es Jack”-u 555-aG apple jack

Luego, verifique los cambios en el UID y el directorio de inicio.

# grep-E-color ‘jack’/etc/passwd

Verificación de caducidad de la cuenta.

# chage-l jack

Compruebe el grupo del que todos los jack han sido miembros.

# grep-E–color ‘ jack ‘/etc/group  Uso de múltiples opciones con usermod Uso de múltiples opciones con usermod

15. Cambiar UID y GID de un usuario

Podemos cambiar UID y GID de un usuario actual. Para cambiar a un GID nuevo, necesitamos un grupo existente. Aquí ya hay una cuenta llamada naranja con GID de 777 .

Ahora mi cuenta de usuario jack quiere que se le asigne un UID de 666 y GID de Orange ( 777 ).

Verifique el UID y GID actuales antes de modificar.

# id jack

Modifique el UID y GID.

# usermod-u 666-g 777 jack

Compruebe los cambios.