En komplet guide til brug af kommandoen usermod - 15 praktiske eksempler med skærmbilleder


I Unix/Linux-distributioner bruges kommandoen ' usermod ' til at ændre eller ændre eventuelle attributter for en allerede oprettet brugerkonto via kommandolinjen. Kommandoen 'usermod' svarer til den 'useradd' eller 'adduser', men login til en eksisterende bruger.

Kommandoen 'brugeradd' eller 'adduser' bruges til at oprette brugerkonti i Linux-systemer. Hvis du vil vide mere om, hvordan du opretter systembrugere, kan du læse vores komplette guide på:

  1. En komplet guide til "useradd" -kommando i Linux

Efter oprettelse af brugerkonti, i nogle scenarier, hvor vi har brug for at ændre attributterne for en eksisterende bruger, f.eks. Ændre brugerens hjemmekatalog, login navn, login shell, adgangskodens udløbsdato osv., Hvor der i så fald bruges en 'usermod' kommando.

Når vi udfører kommandoen 'usermod' i terminalen, bruges og påvirkes følgende filer.

  1. /etc/passwd - Brugerkontooplysninger.
  2. /etc/shadow - Sikker kontooplysninger.
  3. /etc/group - Oplysninger om gruppekonto.
  4. /etc/gshadow - Sikker gruppekontooplysninger.
  5. /etc/login.defs - Konfiguration af skyggeadgangskodepakke ..

Grundlæggende syntaks for kommando er:

usermod [options] username

  1. Vi skal have eksisterende brugerkonti for at udføre usermod-kommandoen.
  2. Kun superbruger (root) har tilladelse til at udføre kommandoen usermod.
  3. Kommandoen usermod kan udføres på enhver Linux-distribution.
  4. Skal have grundlæggende viden om kommandoen usermod med muligheder

Kommandoen 'usermod' er enkel at bruge med mange muligheder for at foretage ændringer til en eksisterende bruger. Lad os se, hvordan vi bruger kommandoen usermod ved at ændre nogle eksisterende brugere i Linux-boksen ved hjælp af følgende muligheder.

  1. -c = Vi kan tilføje kommentarfelt til brugerkontoen.
  2. -d = For at ændre biblioteket for enhver eksisterende brugerkonto.
  3. -e = Ved hjælp af denne mulighed kan vi få kontoen til at udløbe i en bestemt periode.
  4. -g = Skift den primære gruppe for en bruger.
  5. -G = For at tilføje supplerende grupper.
  6. -a = At føje nogen af gruppen til en sekundær gruppe.
  7. -l = For at ændre loginnavnet fra tecmint til tecmint_admin.
  8. -L = For at låse brugerkontoen. Dette låser adgangskoden, så vi ikke kan bruge kontoen.
  9. -m = flytning af indholdet i hjemmekataloget fra eksisterende hjemmeadresse til nyt dir.
  10. -p = Brug af ukrypteret adgangskode til den nye adgangskode. (IKKE sikret).
  11. -s = Opret en specificeret shell til nye konti.
  12. -u = Bruges til tildelt UID for brugerkontoen mellem 0 og 999.
  13. -U = For at låse brugerkonti op. Dette fjerner adgangskodelåsen og giver os mulighed for at bruge brugerkontoen.

I denne artikel vil vi se '15 usermod-kommandoer 'med deres praktiske eksempler og brug i Linux, som vil hjælpe dig med at lære og forbedre dine kommandolinjefærdigheder ved hjælp af disse muligheder.

1. Tilføjelse af oplysninger til brugerkonto

Indstillingen ' -c ' bruges til at indstille en kort kommentar (information) om brugerkontoen. Lad os f.eks. Tilføje oplysninger om 'tecmint' bruger ved hjælp af følgende kommando.

# usermod -c "This is Tecmint" tecmint

Efter tilføjelse af oplysninger om brugeren kan den samme kommentar ses i/etc/passwd-filen.

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

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

2. Skift brugerens hjemmekatalog

I ovenstående trin kan vi se, at vores hjemmekatalog er under /home/tecmint/. Hvis vi har brug for at ændre det til en anden mappe, kan vi ændre det ved hjælp af -d option med kommandoen usermod.

For eksempel vil jeg ændre vores hjemmekatalog til /var/www/, men før vi ændrer, skal vi kontrollere den aktuelle hjemmekatalog for en bruger ved hjælp af følgende kommando.

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

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

Skift nu hjemmekatalog fra/home/tecmint til/var/www/og bekræft hjemmedirektøren efter skift.

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

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

3. Indstil udløbsdato for brugerkonto

Indstillingen '-e' bruges til at indstille udløbsdatoen på en brugerkonto med datoformatet ÅÅÅÅ-MM-DD. Før vi opretter en udløbsdato for en bruger, skal vi først kontrollere den aktuelle udløbsstatus for kontoen ved hjælp af kommandoen 'chage' (ændre oplysninger om udløb af brugeradgangskode).

# 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

Udløbsstatus for en 'tecmint' bruger er 1. dec. 2014 , lad os ændre den til 1. nov. 2014 ved hjælp af 'usermod -e' og bekræfte udløbsdatoen 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. Skift primær brugergruppe

For at indstille eller ændre en primær brugergruppe bruger vi indstillingen ‘-g’ med kommandoen usermod. Før du skifter brugerens primære gruppe, skal du først kontrollere den aktuelle gruppe for brugeren tecmint_test .

# id tecmint_test

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

Indstil nu gruppen babin som en primær gruppe til bruger tecmint_test og bekræft ændringerne.

# usermod -g babin tecmint_test
# id tecmint_test

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

5. Tilføjelse af gruppe til en eksisterende bruger

Hvis du vil tilføje en ny gruppe kaldet 'tecmint_test0' til 'tecmint' bruger, kan du bruge mulighed '-G' med kommandoen usermod som vist nedenfor.

# usermod -G tecmint_test0 tecmint
# id tecmint

Bemærk: Vær forsigtig, mens du tilføjer en ny gruppe til en eksisterende bruger med '-G' mulighed alene, fjerner alle eksisterende grupper, som brugeren hører til. Så tilføj altid '-a' (tilføj) med '-G' mulighed for at tilføje eller tilføje nye grupper.

6. Tilføjelse af supplerende og primær gruppe til brugeren

Hvis du har brug for at tilføje en bruger til en af de supplerende grupper, kan du bruge indstillingerne '-a' og '-G'. For eksempel vil vi her tilføje en brugerkonto tecmint_test0 med hjulet brugeren.

# usermod -a -G wheel tecmint_test0
# id tecmint_test0

Så bruger tecmint_test0 forbliver i sin primære gruppe og også i sekundær gruppe (hjul). Dette får min normale brugerkonto til at udføre alle root-privilegerede kommandoer i Linux-boksen.

eg : sudo service httpd restart

7. Skift brugerloginavn

For at ændre ethvert eksisterende brugerloginavn kan vi bruge '-l' (nyt login). I eksemplet nedenfor ændrer vi loginnavnet tecmint til tecmint_admin. Så brugernavnet tecmint er blevet omdøbt med det nye navn tecmint_admin.

# usermod -l tecmint_admin tecmint

Tjek nu for tecmint-brugeren, den vil ikke være til stede, fordi vi har ændret den til tecmint_admin.

# id tecmint

Se efter tecmint_admin-kontoen, den vil være der med samme UID og med eksisterende gruppe, hvad vi har tilføjet før.

# id tecmint_admin

8. Lås brugerkonto

For at låse enhver systembrugerkonto kan vi bruge '-L' (lås) -indstillingen. Når kontoen er låst, kan vi ikke logge ind ved hjælp af adgangskoden, og du vil se en ! tilføjet før den krypterede adgangskode i/etc/shadow-fil, betyder adgangskode deaktiveret.

# usermod -L babin

Se efter den låste konto.

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

9. Lås brugerkonto op

Indstillingen ‘-U’ bruges til at låse op for enhver låst bruger, dette fjerner ! før den krypterede adgangskode.

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

Bekræft brugeren efter oplåsning.

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

10. Flyt brugerens hjemmekatalog til ny placering

Lad os sige, at du har en brugerkonto som 'pinky' med hjemmekatalog '/ home/pinky', du vil flytte til en ny placering, siger '/ var/pinky'. Du kan bruge indstillingerne '-d' og '-m' til at flytte de eksisterende brugerfiler fra det aktuelle hjemmekatalog til et nyt hjemmekatalog.

Se efter kontoen og den aktuelle hjemmekatalog.

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

Skriv derefter de filer, der ejes af bruger pinky.

# ls -l /home/pinky/

Nu skal vi flytte hjemmekataloget fra/home/pinky til/var/pinky.

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

Bekræft derefter bibliotekets ændring.

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

Se efter filerne under '/ home/pinky'. Her har vi flyttet filerne ved hjælp af -m-indstillingen, så der vil ikke være nogen filer. Pinky-brugerfilerne er nu under/var/pinky.

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

11. Opret ikke-krypteret adgangskode til brugeren

For at oprette en ikke-krypteret adgangskode bruger vi optionen '-p' (adgangskode). Af demonstrationsformål indstiller jeg en ny adgangskode, der siger "redhat" på en bruger pink.

# usermod -p redhat pinky

Efter indstilling af adgangskode skal du nu kontrollere skyggefilen for at se, om den er i krypteret format eller ikke-krypteret.

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

Bemærk: Så du i billedet ovenfor, adgangskoden er tydelig synlig for alle. Så denne mulighed anbefales ikke at bruge, fordi adgangskoden vil være synlig for alle brugere.

12. Skift bruger shell

Bruger login shell kan ændres eller defineres under oprettelse af bruger med brugeradd kommando eller ændres med 'usermod' kommando ved hjælp af option '-s' (shell). For eksempel har brugeren 'babin' som standard bin/bash-skallen, nu vil jeg ændre den til/bin/sh.

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

Efter skift af brugerskal skal du kontrollere brugerskallen ved hjælp af følgende kommando.

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

13. Skift bruger-ID (UID)

I eksemplet nedenfor kan du se, at min brugerkonto 'babin' har UID på 502, nu vil jeg ændre den til 888 som min UID. Vi kan tildele UID mellem 0 og 999.

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

Lad os nu ændre UID for brugerbabin ved hjælp af '-u' (uid) og kontrollere ændringerne.

# usermod -u 888 babin
# id babin

14. Ændring af brugerkonto med flere indstillinger

Her har vi et bruger jack , og nu vil jeg ændre hans hjemmekatalog, shell, udløbsdato, label, UID og gruppe på én gang ved hjælp af en enkelt kommando med alle muligheder som vi diskuterede ovenfor.

Brugeren Jack har standardhjemmekataloget /home/jack . Nu vil jeg ændre det til /var/www/html og tildele hans skal som bash , indstil udløbsdato som 10. december 2014, tilføj ny etiket som Dette er jack , skift UID til 555, og han vil være medlem af apple-gruppen.

Lad os se, hvordan du ændrer jackkontoen ved hjælp af flere muligheder nu.

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

Tjek derefter for ændringer i UID og hjemmekatalog.

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

Konto udløber kontrol.

# chage -l jack

Se efter den gruppe, som alle jack har været medlem af.

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

15. Skift UID og GID for en bruger

Vi kan ændre UID og GID for en nuværende bruger. For at skifte til et nyt GID har vi brug for en eksisterende gruppe. Her er der allerede en konto med navnet orange med GID på 777 .

Nu vil min jack-brugerkonto tildeles UID på 666 og GID of Orange ( 777 ).

Kontroller for den aktuelle UID og GID, før du ændrer.

# id jack

Rediger UID og GID.

# usermod -u 666 -g 777 jack

Kontroller for ændringer.

# id jack

Konklusion

Her har vi set, hvordan man bruger usermod-kommandoen med dens muligheder på en meget detaljeret måde. Før man kender til usermod-kommandoen, skal man kende 'useradd' -kommandoen og dens muligheder for at bruge usermod. Hvis jeg har gået glip af noget i artiklen, så lad mig det vide via kommentarer og glem ikke at tilføje dine værdifulde kommentarer.