Una guia completa per a l'ús de l'ordre usermod - 15 exemples pràctics amb captures de pantalla


A les distribucions Unix/Linux, l'ordre 'usermod' s'utilitza per modificar o canviar qualsevol atribut d'un compte d'usuari ja creat mitjançant la línia d'ordres. L'ordre usermod és similar a la de useradd o adduser, però l'inici de sessió concedit a un usuari existent.

L'ordre useradd o adduser s'utilitza per crear comptes d'usuari en sistemes Linux. Per obtenir més informació sobre com crear usuaris del sistema, llegiu la nostra guia completa a:

  1. Una guia completa per a l'ordre \useradd a Linux

Després de crear comptes d'usuari, en alguns escenaris en què hem de canviar els atributs d'un usuari existent, com ara canviar el directori inicial de l'usuari, el nom d'inici de sessió, l'intèrpret d'ordres d'inici de sessió, la data de caducitat de la contrasenya, etc., on en aquest cas s'utilitza l'ordre usermod.

Quan executem l'ordre usermod al terminal, els fitxers següents s'utilitzen i es veuen afectats.

  1. /etc/passwd: informació del compte d'usuari.
  2. /etc/shadow: protegeix la informació del compte.
  3. /etc/group: informació del compte del grup.
  4. /etc/gshadow: assegura la informació del compte del grup.
  5. /etc/login.defs – Configuració del conjunt de contrasenyes d'ombra...

La sintaxi bàsica de l'ordre és:

usermod [options] username

  1. Hem de tenir comptes d'usuari existents per executar l'ordre usermod.
  2. Només el superusuari (arrel) pot executar l'ordre usermod.
  3. L'ordre usermod es pot executar a qualsevol distribució de Linux.
  4. Ha de tenir coneixements bàsics de l'ordre usermod amb opcions

L'ordre usermod és senzill d'utilitzar amb moltes opcions per fer canvis a un usuari existent. Vegem com utilitzar l'ordre usermod modificant alguns usuaris existents a la caixa de Linux amb l'ajuda de les opcions següents.

  1. -c = Podem afegir un camp de comentari per al compte d'usuari.
  2. -d = Per modificar el directori de qualsevol compte d'usuari existent.
  3. -e = Amb aquesta opció podem fer que el compte caduqui en un període específic.
  4. -g = Canvia el grup principal d'un usuari.
  5. -G = Per afegir un grup suplementari.
  6. -a = Per afegir qualsevol persona del grup a un grup secundari.
  7. -l = Per canviar el nom d'inici de sessió de tecmint a tecmint_admin.
  8. -L = Per bloquejar el compte d'usuari. Això bloquejarà la contrasenya perquè no puguem utilitzar el compte.
  9. -m = movent el contingut del directori inicial del directori inicial existent al directori nou.
  10. -p = Per utilitzar una contrasenya sense xifrar per a la nova contrasenya. (NO assegurat).
  11. -s = Crea un shell especificat per a comptes nous.
  12. -u = S'utilitza per a l'UID assignat per al compte d'usuari entre 0 i 999.
  13. -U = Per desbloquejar els comptes d'usuari. Això eliminarà el bloqueig de la contrasenya i ens permetrà utilitzar el compte d'usuari.

En aquest article veurem 15 ordres usermod amb els seus exemples pràctics i ús a Linux, que us ajudaran a aprendre i millorar les vostres habilitats de línia d'ordres utilitzant aquestes opcions.

1. Afegeix informació al compte d'usuari

L'opció '-c' s'utilitza per establir un breu comentari (informació) sobre el compte d'usuari. Per exemple, afegim informació sobre l'usuari tecmint mitjançant l'ordre següent.

# usermod -c "This is Tecmint" tecmint

Després d'afegir informació sobre l'usuari, el mateix comentari es pot veure al fitxer /etc/passwd.

# grep -E --color 'tecmint' /etc/passwd

tecmint:x:500:500:This is Tecmint:/home/tecmint:/bin/sh

2. Canvia el directori d'inici de l'usuari

En el pas anterior podem veure que el nostre directori d'inici es troba a /home/tecmint/, si hem de canviar-lo a un altre directori, el podem canviar amb -d opció amb l'ordre usermod.

Per exemple, vull canviar el nostre directori d'inici a /var/www/, però abans de canviar-lo, comprovem el directori d'inici actual d'un usuari, utilitzant l'ordre següent.

# grep -E --color '/home/tecmint' /etc/passwd

tecmint:x:500:500:This is Tecmint:/home/tecmint:/bin/sh

Ara, canvieu el directori d'inici de /home/tecmint a /var/www/ i confirmeu el director d'inici després de canviar.

# usermod -d /var/www/ tecmint
# grep -E --color '/var/www/' /etc/passwd

tecmint:x:500:500:This is Tecmint:/var/www:/bin/sh

3. Estableix la data de caducitat del compte d'usuari

L'opció -e s'utilitza per establir la data de caducitat d'un compte d'usuari amb el format de data AAAA-MM-DD. Abans d'establir una data de caducitat per a un usuari, primer comprovem l'estat de caducitat del compte actual mitjançant l'ordre Chage (canviar la informació de caducitat de la contrasenya de l'usuari).

# chage -l tecmint

Last password change					: Nov 02, 2014
Password expires					: never
Password inactive					: never
Account expires						: Dec 01, 2014
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

L'estat de caducitat d'un usuari tecmint és l'1 de desembre de 2014, canviem-lo a l'1 de novembre de 2014 mitjançant l'opció usermod -e i confirmem la data de caducitat amb chage. ' comandament.

# usermod -e 2014-11-01 tecmint
# chage -l tecmint

Last password change					: Nov 02, 2014
Password expires					: never
Password inactive					: never
Account expires						: Nov 01, 2014
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

4. Canvia el grup principal d'usuaris

Per configurar o canviar un grup primari d'usuaris, utilitzem l'opció -g amb l'ordre usermod. Abans de canviar el grup principal d'usuaris, primer assegureu-vos de comprovar el grup actual de l'usuari tecmint_test.

# id tecmint_test

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

Ara, configureu el grup babin com a grup principal per a l'usuari tecmint_test i confirmeu els canvis.

# usermod -g babin tecmint_test
# id tecmint_test

uid=501(tecmint_test) gid=502(babin) groups=502(tecmint_test)

5. Afegir un grup a un usuari existent

Si voleu afegir un grup nou anomenat tecmint_test0 a l'usuari tecmint, podeu utilitzar l'opció -G amb l'ordre usermod tal com es mostra a continuació.

# usermod -G tecmint_test0 tecmint
# id tecmint

Nota: Aneu amb compte, mentre afegiu un grup nou a un usuari existent només amb l'opció -G, eliminarà tots els grups existents al qual pertany l'usuari. Per tant, afegiu sempre l'opció -a (afegir) amb -G per afegir o afegir nous grups.

6. Afegir un grup suplementari i principal a l'usuari

Si necessiteu afegir un usuari a qualsevol dels grups suplementaris, podeu utilitzar les opcions '-a' i '-G'. Per exemple, aquí afegirem un compte d'usuari tecmint_test0 amb l'usuari roda.

# usermod -a -G wheel tecmint_test0
# id tecmint_test0

Per tant, l'usuari tecmint_test0 roman al seu grup principal i també al grup secundari (roda). Això farà que el meu compte d'usuari normal executi qualsevol ordre amb privilegis root a la caixa de Linux.

eg : sudo service httpd restart

7. Canvieu el nom d'inici de sessió de l'usuari

Per canviar qualsevol nom d'inici de sessió d'usuari existent, podem utilitzar l'opció -l (inici de sessió nou). A l'exemple següent, canviem el nom d'inici de sessió tecmint a tecmint_admin. Així, el nom d'usuari tecmint s'ha canviat de nom amb el nou nom tecmint_admin.

# usermod -l tecmint_admin tecmint

Ara comproveu l'usuari de tecmint, no estarà present perquè l'hem canviat a tecmint_admin.

# id tecmint

Comproveu que el compte tecmint_admin hi serà amb el mateix UID i amb el grup existent que hem afegit abans.

# id tecmint_admin

8. Bloqueja el compte d'usuari

Per bloquejar qualsevol compte d'usuari del sistema, podem utilitzar l'opció '-L' (bloquejar). Després de bloquejar el compte, no podem iniciar sessió amb la contrasenya i veureu un ! afegit abans del xifrat. contrasenya al fitxer /etc/shadow, significa contrasenya desactivada.

# usermod -L babin

Comproveu el compte bloquejat.

# grep -E --color 'babin' cat /etc/shadow

9. Desbloquegeu el compte d'usuari

L'opció -U s'utilitza per desbloquejar qualsevol usuari bloquejat, això eliminarà el ! abans de la contrasenya xifrada.

# grep -E --color 'babin' /etc/shadow
# usermod -U babin

Verifica l'usuari després del desbloqueig.

# grep -E --color 'babin' /etc/shadow

10. Mou el directori d'inici de l'usuari a una ubicació nova

Suposem que teniu un compte d'usuari com a pinky amb el directori d'inici /home/pinky, que voleu moure a una nova ubicació, digueu /var/pinky. Podeu utilitzar les opcions '-d' i '-m' per moure els fitxers d'usuari existents del directori d'inici actual a un directori d'inici nou.

Comproveu el compte i el directori d'inici actual.

# grep -E --color 'pinky' /etc/passwd

A continuació, enumereu els fitxers propietat de l'usuari pinky.

# ls -l /home/pinky/

Ara hem de moure el directori d'inici de /home/pinky a /var/pinky.

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

A continuació, verifiqueu el canvi de directori.

# grep -E --color 'pinky' /etc/passwd

Comproveu els fitxers a /home/pinky. Aquí hem mogut els fitxers utilitzant l'opció -m de manera que no hi haurà fitxers. Els fitxers d'usuari pinky estaran ara a /var/pinky.

# ls -l /home/pinky/
# ls -l /var/pinky/

11. Creeu una contrasenya sense xifrar per a l'usuari

Per crear una contrasenya sense xifrar, utilitzem l'opció '-p' (contrasenya). Amb finalitats de demostració, estic configurant una contrasenya nova, dient barquet vermell a un usuari Pinky.

# usermod -p redhat pinky

Després de configurar la contrasenya, comproveu ara el fitxer ombra per veure si està en format xifrat o no.

# grep -E --color 'pinky' /etc/shadow

Nota: Heu vist a la imatge de dalt, la contrasenya és clarament visible per a tothom. Per tant, no es recomana utilitzar aquesta opció, perquè la contrasenya serà visible per a tots els usuaris.

12. Canvia l'shell d'usuari

L'intèrpret d'ordres d'inici de sessió de l'usuari es pot canviar o definir durant la creació de l'usuari amb l'ordre useradd o canviar amb l'ordre usermod mitjançant l'opció -s (shell). Per exemple, l'usuari 'babin' té l'intèrpret d'ordres /bin/bash per defecte, ara vull canviar-lo a /bin/sh.

# grep -E --color 'babin' /etc/passwd
# usermod -s /bin/sh babin

Després de canviar l'intèrpret d'ordres d'usuari, verifiqueu-lo mitjançant l'ordre següent.

# grep -E --color 'babin' /etc/passwd

13. Canvia l'identificador d'usuari (UID)

A l'exemple següent, podeu veure que el meu compte d'usuari babin té l'UID de 502, ara vull canviar-lo a 888 com a UID. Podem assignar un UID entre 0 i 999.

# grep -E --color 'babin' /etc/passwd
OR
# id babin

Ara, canviem l'UID de l'usuari babin mitjançant l'opció -u (uid) i verifiquem els canvis.

# usermod -u 888 babin
# id babin

14. Modificació del compte d'usuari amb múltiples opcions

Aquí tenim un usuari jack i ara vull modificar el seu directori d'inici, l'intèrpret d'ordres, la data de caducitat, l'etiqueta, l'UID i el grup alhora utilitzant una única ordre amb totes les opcions com hem comentat anteriorment.

L'usuari Jack té el directori d'inici predeterminat /home/jack, ara vull canviar-lo a /var/www/html i assignar el seu shell com a bash, establiu la data de caducitat el 10 de desembre de 2014, afegiu una nova etiqueta com a Això és jack, canvieu l'UID a 555 i serà membre del grup d'Apple.

Vegem ara com modificar el compte jack utilitzant múltiples opcions.

# usermod -d /var/www/html/ -s /bin/bash -e 2014-12-10 -c "This is Jack" -u 555 -aG apple jack

A continuació, comproveu els canvis de l'UID i del directori d'inici.

# grep -E --color 'jack' /etc/passwd

Comprovació de caducitat del compte.

# chage -l jack

Comproveu el grup del qual han estat membres tots els Jacks.

# grep -E --color 'jack' /etc/group

15. Canviar l'UID i el GID d'un usuari

Podem canviar l'UID i el GID d'un usuari actual. Per canviar a un GID nou necessitem un grup existent. Aquí ja hi ha un compte anomenat taronja amb GID de 777.

Ara el meu compte d'usuari jack vol que se'ls assigni un UID de 666 i un GID d'Orange (777).

Comproveu l'UID i el GID actuals abans de modificar-los.

# id jack

Modifiqueu l'UID i el GID.

# usermod -u 666 -g 777 jack

Comproveu els canvis.

# id jack

Conclusió

Aquí hem vist com utilitzar l'ordre usermod amb les seves opcions de manera molt detallada. Abans de conèixer l'ordre usermod, cal conèixer l'ordre useradd i les seves opcions per utilitzar l'usermod. Si m'he perdut algun punt de l'article, feu-m'ho saber mitjançant els comentaris i no oblideu afegir els vostres valuosos comentaris.