En komplett guide til bruk av usermod-kommando - 15 praktiske eksempler med skjermbilder
I Unix/Linux-distribusjoner brukes kommandoen «usermod» til å endre eller endre eventuelle attributter til en allerede opprettet brukerkonto via kommandolinjen. Kommandoen usermod ligner på useradd eller adduser, men påloggingen gitt til en eksisterende bruker.
Kommandoen 'useradd' eller 'adduser' brukes til å opprette brukerkontoer i Linux-systemer. For å vite mer om hvordan du oppretter systembrukere, les vår komplette veiledning på:
- En komplett guide til kommandoen \useradd i Linux
Etter å ha opprettet brukerkontoer, i noen scenarier der vi må endre attributtene til en eksisterende bruker, for eksempel endre brukerens hjemmekatalog, påloggingsnavn, påloggingsskall, passordets utløpsdato osv., der i et slikt tilfelle 'usermod'-kommandoen brukes.
Når vi utfører 'usermod'-kommandoen i terminalen, blir følgende filer brukt og påvirket.
- /etc/passwd – Brukerkontoinformasjon.
- /etc/shadow – Sikker kontoinformasjon.
- /etc/group – Gruppekontoinformasjon.
- /etc/gshadow – Sikker gruppekontoinformasjon.
- /etc/login.defs – Konfigurasjon av skyggepassordpakke..
Grunnleggende syntaks for kommandoen er:
usermod [options] username
- Vi må ha eksisterende brukerkontoer for å utføre usermod-kommandoen.
- Kun superbruker (root) har lov til å utføre usermod-kommando.
- Usermod-kommandoen kan utføres på hvilken som helst Linux-distribusjon.
- Må ha grunnleggende kunnskap om usermod-kommando med alternativer
Kommandoen 'usermod' er enkel å bruke med mange alternativer for å gjøre endringer i en eksisterende bruker. La oss se hvordan du bruker usermod-kommandoen ved å endre noen eksisterende brukere i Linux-boksen ved hjelp av følgende alternativer.
- -c = Vi kan legge til kommentarfelt for brukerkontoen.
- -d = For å endre katalogen for en eksisterende brukerkonto.
- -e = Ved å bruke dette alternativet kan vi få kontoen til å utløpe i en bestemt periode.
- -g = Endre primærgruppen for en bruker.
- -G = For å legge til en tilleggsgruppe.
- -a = For å legge til hvem som helst i gruppen til en sekundær gruppe.
- -l = For å endre påloggingsnavnet fra tecmint til tecmint_admin.
- -L = For å låse brukerkontoen. Dette låser passordet slik at vi ikke kan bruke kontoen.
- -m = flytting av innholdet i hjemmekatalogen fra eksisterende hjemmekatalog til ny katalog.
- -p = For å bruke ukryptert passord for det nye passordet. (IKKE sikret).
- -s = Opprett et spesifisert skall for nye kontoer.
- -u = Brukes til å tilordne UID for brukerkontoen mellom 0 og 999.
- -U = For å låse opp brukerkontoene. Dette vil fjerne passordlåsen og tillate oss å bruke brukerkontoen.
I denne artikkelen vil vi se '15 usermod-kommandoer' med deres praktiske eksempler og bruk i Linux, som vil hjelpe deg å lære og forbedre kommandolinjeferdighetene dine ved å bruke disse alternativene.
1. Legge til informasjon til brukerkontoen
Alternativet «-c» brukes til å angi en kort kommentar (informasjon) om brukerkontoen. La oss for eksempel legge til informasjon om 'tecmint'-bruker ved å bruke følgende kommando.
# usermod -c "This is Tecmint" tecmint
Etter å ha lagt til informasjon om brukeren, kan den samme kommentaren sees i filen /etc/passwd.
# grep -E --color 'tecmint' /etc/passwd tecmint:x:500:500:This is Tecmint:/home/tecmint:/bin/sh
2. Endre brukerhjemmekatalog
I trinnet ovenfor kan vi se at hjemmekatalogen vår er under /home/tecmint/. Hvis vi trenger å endre den til en annen katalog, kan vi endre den ved å bruke -d alternativ med usermod kommando.
For eksempel vil jeg endre hjemmekatalogen vår til /var/www/, men før du endrer, la oss sjekke gjeldende hjemmekatalog til en bruker ved å bruke følgende kommando.
# grep -E --color '/home/tecmint' /etc/passwd tecmint:x:500:500:This is Tecmint:/home/tecmint:/bin/sh
Endre nå hjemmekatalog fra /home/tecmint til /var/www/ og bekreft hjemmedirektøren etter endring.
# usermod -d /var/www/ tecmint # grep -E --color '/var/www/' /etc/passwd tecmint:x:500:500:This is Tecmint:/var/www:/bin/sh
3. Angi utløpsdato for brukerkonto
Alternativet -e brukes til å angi utløpsdato på en brukerkonto med datoformatet ÅÅÅÅ-MM-DD. Før du setter opp en utløpsdato for en bruker, la oss først sjekke gjeldende kontoutløpsstatus ved å bruke kommandoen chage (endre utløpsinformasjon for brukerpassord).
# 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
Utløpsstatusen til en tecmint-bruker er 1. desember 2014, la oss endre den til 1. november 2014 ved å bruke usermod -e-alternativet og bekrefte utløpsdatoen med chage ' kommando.
# 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. Endre brukerens primærgruppe
For å angi eller endre en primær brukergruppe bruker vi alternativet -g med kommandoen usermod. Før du endrer brukerens primærgruppe, sørg for å sjekke gjeldende gruppe for brukeren tecmint_test.
# id tecmint_test uid=501(tecmint_test) gid=502(tecmint_test) groups=502(tecmint_test)
Sett nå babin-gruppen som en primær gruppe til brukeren tecmint_test og bekreft endringene.
# usermod -g babin tecmint_test # id tecmint_test uid=501(tecmint_test) gid=502(babin) groups=502(tecmint_test)
5. Legge til gruppe til en eksisterende bruker
Hvis du vil legge til en ny gruppe kalt 'tecmint_test0' til 'tecmint'-bruker, kan du bruke alternativet '-G' med usermod-kommandoen som vist nedenfor.
# usermod -G tecmint_test0 tecmint # id tecmint
Merk: Vær forsiktig, mens du legger til en ny gruppe til en eksisterende bruker med -G-alternativet alene, vil fjerne alle eksisterende grupper som brukeren tilhører. Så legg alltid til '-a' (legg til) med '-G'-alternativet for å legge til eller legge til nye grupper.
6. Legge til tilleggs- og primærgruppe til bruker
Hvis du trenger å legge til en bruker i en av tilleggsgruppene, kan du bruke alternativene '-a' og '-G'. For eksempel, her skal vi legge til en brukerkonto tecmint_test0 med hjul-brukeren.
# usermod -a -G wheel tecmint_test0 # id tecmint_test0
Så bruker tecmint_test0 forblir i primærgruppen og også i sekundærgruppen (hjul). Dette vil få min vanlige brukerkonto til å utføre alle root-privilegerte kommandoer i Linux-boksen.
eg : sudo service httpd restart
7. Endre brukerpåloggingsnavn
For å endre eksisterende brukernavn, kan vi bruke alternativet -l (ny pålogging). I eksemplet nedenfor endrer vi påloggingsnavnet tecmint til tecmint_admin. Så brukernavnet tecmint har blitt omdøpt med det nye navnet tecmint_admin.
# usermod -l tecmint_admin tecmint
Se nå etter tecmint-brukeren, den vil ikke være til stede fordi vi har endret den til tecmint_admin.
# id tecmint
Se etter tecmint_admin-kontoen, den vil være der med samme UID og med eksisterende gruppe det vi har lagt til før.
# id tecmint_admin
8. Lås brukerkonto
For å låse en systembrukerkonto kan vi bruke alternativet -L (lås). Etter at kontoen er låst kan vi ikke logge inn ved å bruke passordet, og du vil se en ! lagt til før den krypterte passord i /etc/shadow-fil, betyr passord deaktivert.
# usermod -L babin
Se etter den låste kontoen.
# grep -E --color 'babin' cat /etc/shadow
9. Lås opp brukerkonto
-U-alternativet brukes til å låse opp enhver låst bruker, dette vil fjerne ! før det krypterte passordet.
# grep -E --color 'babin' /etc/shadow # usermod -U babin
Bekreft brukeren etter opplåsing.
# grep -E --color 'babin' /etc/shadow
10. Flytt brukerhjemmekatalog til ny plassering
La oss si at du har en brukerkonto som 'pinky' med hjemmekatalog '/home/pinky', du vil flytte til en ny plassering si '/var/pinky'. Du kan bruke alternativene -d og -m for å flytte de eksisterende brukerfilene fra gjeldende hjemmekatalog til en ny hjemmekatalog.
Se etter kontoen og dens gjeldende hjemmekatalog.
# grep -E --color 'pinky' /etc/passwd
List deretter filene som eies av brukeren pinky.
# ls -l /home/pinky/
Nå må vi flytte hjemmekatalogen fra /home/pinky til /var/pinky.
# usermod -d /var/pinky/ -m pinky
Deretter bekrefter du katalogendringen.
# grep -E --color 'pinky' /etc/passwd
Se etter filene under '/home/pinky'. Her har vi flyttet filene ved å bruke -m alternativet slik at det ikke blir noen filer. Pinky-brukerfilene vil nå være under /var/pinky.
# ls -l /home/pinky/ # ls -l /var/pinky/
11. Opprett ukryptert passord for brukeren
For å lage et ukryptert passord bruker vi alternativet '-p' (passord). For demonstrasjonsformål setter jeg et nytt passord og sier redhat på en brukerpinky.
# usermod -p redhat pinky
Etter å ha angitt passord, sjekk nå skyggefilen for å se om den er i kryptert format eller ukryptert.
# grep -E --color 'pinky' /etc/shadow
Merk: Så du i bildet ovenfor, er passordet godt synlig for alle. Så dette alternativet anbefales ikke å bruke, fordi passordet vil være synlig for alle brukere.
12. Endre brukerskall
Brukerpåloggingsskallet kan endres eller defineres under brukeroppretting med useradd-kommandoen eller endres med 'usermod'-kommandoen ved å bruke alternativet '-s' (shell). For eksempel har brukeren 'babin' /bin/bash-skallet som standard, nå vil jeg endre det til /bin/sh.
# grep -E --color 'babin' /etc/passwd # usermod -s /bin/sh babin
Etter å ha endret brukerskall, verifiser brukerskallet ved å bruke følgende kommando.
# grep -E --color 'babin' /etc/passwd
13. Endre bruker-ID (UID)
I eksemplet nedenfor kan du se at brukerkontoen min 'babin' har UID på 502, nå vil jeg endre den til 888 som min UID. Vi kan tildele UID mellom 0 og 999.
# grep -E --color 'babin' /etc/passwd OR # id babin
La oss nå endre UID for bruker babin ved å bruke -u (uid) alternativet og bekrefte endringene.
# usermod -u 888 babin # id babin
14. Endre brukerkonto med flere alternativer
Her har vi en bruker jack og nå vil jeg endre hjemmekatalogen hans, skallet, utløpsdatoen, etiketten, UID og gruppen på en gang ved å bruke en enkelt kommando med alle alternativer som vi diskuterte ovenfor.
Brukeren Jack har standard hjemmekatalog /home/jack, nå vil jeg endre den til /var/www/html og tilordne hans shell som bash, sett utløpsdatoen til 10. desember 2014, legg til ny etikett som This is jack, endre UID til 555 og han vil være medlem av Apple-gruppen.
La oss se hvordan du endrer jack-kontoen ved å bruke flere alternativer nå.
# usermod -d /var/www/html/ -s /bin/bash -e 2014-12-10 -c "This is Jack" -u 555 -aG apple jack
Se deretter etter UID og hjemmekatalogendringer.
# grep -E --color 'jack' /etc/passwd
Utløpssjekk for kontoen.
# chage -l jack
Se etter gruppen som alle knekt har vært medlem av.
# grep -E --color 'jack' /etc/group
15. Endre UID og GID for en bruker
Vi kan endre UID og GID for en nåværende bruker. For å endre til en ny GID trenger vi en eksisterende gruppe. Allerede her er det en konto kalt oransje med GID på 777.
Nå ønsker jack-brukerkontoen min å bli tildelt UID på 666 og GID på Orange (777).
Se etter gjeldende UID og GID før du endrer.
# id jack
Endre UID og GID.
# usermod -u 666 -g 777 jack
Se etter endringene.
# id jack
Konklusjon
Her har vi sett hvordan man bruker usermod-kommandoen med dens alternativer på en veldig detaljert måte, før man vet om usermod-kommandoen, bør man kjenne ‘useradd’-kommandoen og dens alternativer for å bruke usermod. Hvis jeg har gått glipp av noe punkt i artikkelen, gi meg beskjed via kommentarer og ikke glem å legge til verdifulle kommentarer.