Išsamus „usermod“ komandos naudojimo vadovas – 15 praktinių pavyzdžių su ekrano kopijomis


„Unix“/„Linux“ paskirstymuose komanda „usermod“ naudojama modifikuoti arba pakeisti bet kokius jau sukurtos vartotojo abonemento atributus naudojant komandinę eilutę. Komanda „usermod“ yra panaši į komandą „useradd“ arba „adduser“, tačiau prisijungimas suteiktas esamam vartotojui.

Komanda „useradd“ arba „adduser“ naudojama kuriant naudotojų paskyras „Linux“ sistemose. Norėdami sužinoti daugiau apie tai, kaip sukurti sistemos vartotojus, perskaitykite visą vadovą adresu:

  1. Išsamus „useradd“ komandos „Linux“ vadovas

Sukūrus vartotojo abonementus, kai kuriais atvejais, kai turime pakeisti esamo vartotojo atributus, pvz., pakeisti vartotojo namų katalogą, prisijungimo vardą, prisijungimo apvalkalą, slaptažodžio galiojimo datą ir pan., kai tokiu atveju naudojama komanda „usermod“.

Kai terminale vykdome komandą „usermod“, naudojami ir paveikiami šie failai.

  1. /etc/passwd – vartotojo paskyros informacija.
  2. /etc/shadow – saugi paskyros informacija.
  3. /etc/group – grupės paskyros informacija.
  4. /etc/gshadow – saugi grupės paskyros informacija.
  5. /etc/login.defs – šešėlinio slaptažodžių rinkinio konfigūracija.

Pagrindinė komandos sintaksė yra:

usermod [options] username

Reikalavimai

  1. Turime turėti esamas vartotojo paskyras, kad galėtume vykdyti usermod komandą.
  2. Tik supervartotojui (root) leidžiama vykdyti usermod komandą.
  3. Komanda usermod gali būti vykdoma bet kuriame Linux paskirstyme.
  4. Turi turėti elementarių žinių apie usermod komandą su parinktimis

Usermod parinktys

Komanda „usermod“ yra paprasta naudoti su daugybe parinkčių, leidžiančių pakeisti esamą naudotoją. Pažiūrėkime, kaip naudoti komandą usermod modifikuojant kai kuriuos esamus vartotojus „Linux“ lange, naudojant šias parinktis.

  1. -c=Galime pridėti komentaro lauką prie vartotojo paskyros.
  2. -d=Keisti bet kurios esamos vartotojo abonemento katalogą.
  3. -e=Naudodami šią parinktį galime nustatyti, kad paskyros galiojimas baigtųsi tam tikru laikotarpiu.
  4. -g=Pakeiskite pagrindinę vartotojo grupę.
  5. -G=Norėdami pridėti papildomų grupių.
  6. -a=Norėdami įtraukti bet kurį iš grupės į antrinę grupę.
  7. -l=Norėdami pakeisti prisijungimo vardą iš tecmint į tecmint_admin.
  8. -L=Norėdami užrakinti vartotojo abonementą. Tai užrakins slaptažodį, kad negalėtume naudoti paskyros.
  9. -m=namų katalogo turinio perkėlimas iš esamo namų katalogo į naują.
  10. -p=Naujam slaptažodžiui naudoti nešifruotą slaptažodį. (NEapsaugotas).
  11. -s=Sukurkite nurodytą apvalkalą naujoms paskyroms.
  12. -u=naudojamas vartotojo abonementui priskirtam UID nuo 0 iki 999.
  13. -U=Norėdami atrakinti vartotojo abonementus. Tai pašalins slaptažodžio užraktą ir leis mums naudoti vartotojo abonementą.

Šiame straipsnyje pamatysime „15 usermod komandų“ su jų praktiniais pavyzdžiais ir naudojimu „Linux“, kurios padės išmokti ir patobulinti komandų eilutės įgūdžius naudojant šias parinktis.

1. Informacijos įtraukimas į vartotojo abonementą

Parinktis „-c“ naudojama trumpam komentarui (informacijai) apie vartotojo abonementą nustatyti. Pavyzdžiui, pridėkime informacijos apie „tecmint“ naudotoją naudodami šią komandą.

usermod -c "This is Tecmint" tecmint

Pridėjus informaciją apie naudotoją, tą patį komentarą galima peržiūrėti faile /etc/passwd.

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

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

2. Pakeiskite vartotojo namų katalogą

Atlikdami aukščiau pateiktą veiksmą matome, kad mūsų namų katalogas yra /home/tecmint/. Jei reikia pakeisti jį į kitą katalogą, galime jį pakeisti naudodami -d parinktis su usermod komanda.

Pavyzdžiui, noriu pakeisti mūsų namų katalogą į /var/www/, bet prieš keisdami patikrinkime dabartinį vartotojo namų katalogą naudodami šią komandą.

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

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

Dabar pakeiskite namų katalogą iš /home/tecmint į /var/www/ ir pakeitę patvirtinkite namų direktorių.

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

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

3. Nustatykite vartotojo abonemento galiojimo pabaigos datą

Parinktis „-e“ naudojama norint nustatyti galiojimo pabaigos datą naudotojo paskyroje, kurios datos formatas yra YYYY-MM-DD. Prieš nustatydami vartotojo galiojimo pabaigos datą, pirmiausia patikrinkime dabartinę paskyros galiojimo pabaigos būseną naudodami komandą pakeisti (pakeisti vartotojo slaptažodžio galiojimo pabaigos informaciją).

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

tecmint“ naudotojo galiojimo pabaigos būsena yra 2014 m. gruodžio 1 d., pakeiskime ją į 2014 m. lapkričio 1 d. naudodami „usermod -e “ ir patvirtinkite galiojimo pabaigos datą naudodami komandą „pakeisti“.

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. Pakeiskite vartotojo pagrindinę grupę

Norėdami nustatyti arba pakeisti pagrindinę naudotojo grupę, naudojame parinktį „-g“ su „usermod“ komanda. Prieš keisdami pagrindinę naudotojo grupę, pirmiausia patikrinkite esamą naudotojo tecmint_test grupę.

id tecmint_test

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

Dabar nustatykite babin grupę kaip pagrindinę naudotojo tecmint_test grupę ir patvirtinkite pakeitimus.

usermod -g babin tecmint_test
id tecmint_test

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

5. Grupės įtraukimas į esamą vartotoją

Jei norite pridėti naują grupę pavadinimu „tecmint_test0“ prie „tecmint“ naudotojo, galite naudoti parinktį „-G“ su usermod komanda kaip parodyta žemiau.

usermod -G tecmint_test0 tecmint
id tecmint

Pastaba: būkite atsargūs, pridėdami naujas grupes prie esamo naudotojo naudodami tik parinktį -G, bus pašalintos visos esamos grupės, kurios priklauso vartotojui. Taigi, visada pridėkite „-a“ (pridėti) su „-G“, kad pridėtumėte arba pridėtumėte naujų grupių.

6. Papildomos ir pagrindinės grupės pridėjimas prie vartotojo

Jei reikia pridėti vartotoją prie bet kurios papildomos grupės, galite naudoti parinktis „-a“ ir „-G“. Pavyzdžiui, čia mes pridėsime naudotojo paskyrą tecmint_test0 su rato naudotoju.

usermod -a -G wheel tecmint_test0
id tecmint_test0

Taigi vartotojas tecmint_test0 lieka pirminėje ir antrinėje grupėje (ratas). Tai privers mano įprastą vartotojo abonementą vykdyti visas pagrindines privilegijuotas komandas Linux laukelyje.

eg : sudo service httpd restart

7. Pakeiskite vartotojo prisijungimo vardą

Norėdami pakeisti bet kurį esamą vartotojo prisijungimo vardą, galime naudoti parinktį „-l“ (naujas prisijungimas). Toliau pateiktame pavyzdyje prisijungimo vardą tecmint keičiame į tecmint_admin. Taigi naudotojo vardas tecmint buvo pervadintas nauju pavadinimu tecmint_admin.

usermod -l tecmint_admin tecmint

Dabar patikrinkite, ar nėra tecmint naudotojo. Jo nebus, nes pakeitėme jį į tecmint_admin.

id tecmint

Patikrinkite, ar nėra tecmint_admin paskyros, ji bus su tuo pačiu UID ir esama grupe, kurią įtraukėme anksčiau.

id tecmint_admin

8. Užrakinkite vartotojo abonementą

Norėdami užrakinti bet kurią sistemos vartotojo paskyrą, galime naudoti parinktį -L (užrakinti). Užrakinus paskyrą negalime prisijungti naudodami slaptažodį ir pamatysite !, pridėtas prieš užšifruotą slaptažodį faile /etc/shadow, reiškia, kad slaptažodis išjungtas.

usermod -L babin

Patikrinkite, ar paskyra užrakinta.

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

9. Atrakinkite vartotojo abonementą

Parinktis „-U“ naudojama bet kuriam užrakintam vartotojui atrakinti. Taip pašalinsite ! prieš užšifruotą slaptažodį.

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

Atrakinę patvirtinkite naudotoją.

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

10. Perkelkite vartotojo namų katalogą į naują vietą

Tarkime, kad turite „pinky“ naudotojo paskyrą, kurios pagrindinis katalogas yra „/home/pinky“, o norite perkelti į naują vietą, pasakykite „/var“ /rožinė“. Galite naudoti parinktis „-d“ ir „-m“, jei norite perkelti esamus vartotojo failus iš dabartinio namų katalogo į naują namų katalogą.

Patikrinkite, ar yra paskyra ir dabartinis namų katalogas.

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

Tada išvardykite failus, kurie priklauso vartotojui pinky.

ls -l /home/pinky/

Dabar turime perkelti namų katalogą iš /home/pinky į /var/pinky.

usermod -d /var/pinky/ -m pinky

Tada patikrinkite katalogo pakeitimą.

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

Patikrinkite, ar nėra failų skiltyje „/home/pinky“. Čia mes perkėlėme failus naudodami parinktį -m, todėl failų nebus. Pinky naudotojo failai dabar bus /var/pinky.

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

11. Sukurkite nešifruotą vartotojo slaptažodį

Norėdami sukurti nešifruotą slaptažodį, naudojame parinktį „-p“ (slaptažodis). Demonstravimo tikslais nustatau naują slaptažodį, pasakykite „redhat“ naudotojui pinky.

usermod -p redhat pinky

Nustatę slaptažodį, dabar patikrinkite šešėlinį failą, kad pamatytumėte, ar jis užšifruotas, ar nešifruotas.

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

Pastaba: ar aukščiau esančiame paveikslėlyje matėte, kad slaptažodis yra aiškiai matomas visiems. Taigi, šios parinkties naudoti nerekomenduojama, nes slaptažodis bus matomas visiems vartotojams.

12. Pakeiskite vartotojo apvalkalą

Vartotojo prisijungimo apvalkalą galima pakeisti arba apibrėžti naudotojo kūrimo metu naudojant komandą useradd arba pakeisti naudojant komandą usermod, naudojant parinktį -s ( apvalkalas). Pavyzdžiui, naudotojas „babin“ pagal numatytuosius nustatymus turi /bin/bash apvalkalą, dabar noriu jį pakeisti į /bin/sh .

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

Pakeitę vartotojo apvalkalą, patikrinkite vartotojo apvalkalą naudodami šią komandą.

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

13. Pakeiskite naudotojo ID (UID)

Toliau pateiktame pavyzdyje matote, kad mano vartotojo paskyroje „babin“ yra 502 UID, dabar noriu jį pakeisti į 888 kaip mano UID. Galime priskirti UID nuo 0 iki 999.

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

Dabar pakeiskime naudotojo babin UID naudodami parinktį -u (uid) ir patikrinkite pakeitimus.

usermod -u 888 babin
id babin

14. Vartotojo paskyros keitimas naudojant kelias parinktis

Čia turime naudotojo jack ir dabar noriu pakeisti jo pagrindinį katalogą, apvalkalą, galiojimo datą, etiketę, UID ir grupę iš karto, naudodamas vieną komandą su visomis parinktimis, kaip aptarėme aukščiau.

Naudotojas Jack turi numatytąjį namų katalogą /home/jack, dabar noriu jį pakeisti į /var/www/html ir priskirti jam shell kaip bash, nustatykite galiojimo datą kaip 2014 m. gruodžio 10 d., pridėkite naują etiketę kaip This is Jack, pakeiskite UID į 555 ir jis bus Apple grupės narys.

Pažiūrėkime, kaip dabar pakeisti „Jack“ paskyrą naudojant kelias parinktis.

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

Tada patikrinkite UID ir namų katalogo pakeitimus.

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

Paskyros galiojimo pabaigos patikrinimas.

chage -l jack

Patikrinkite grupę, kurios nariai buvo visi lizdai.

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

15. Pakeiskite vartotojo UID ir GID

Galime pakeisti esamo vartotojo UID ir GID. Norint pakeisti į naują GID mums reikia esamos grupės. Čia jau yra paskyra, pavadinta oranžinė, kurios GID yra 777.

Dabar mano jack vartotojo paskyrai norima priskirti 666 UID ir oranžinės spalvos GID (777).

Prieš keisdami patikrinkite esamą UID ir GID.

id jack

Pakeiskite UID ir GID.

usermod -u 666 -g 777 jack

Patikrinkite, ar nėra pakeitimų.

id jack

Išvada

Čia mes matėme, kaip labai išsamiai naudoti komandą usermod su jos parinktimis. Prieš žinant apie komandą usermod, reikia žinoti komandą „useradd“ ir jos parinktis, kad būtų galima naudoti usermod. Jei praleidau kurią nors straipsnio dalį, praneškite man komentaruose ir nepamirškite pridėti vertingų komentarų.