Den komplette vejledning til "brugeradd" -kommando i Linux - 15 praktiske eksempler


Vi er alle opmærksomme på den mest populære kommando kaldet 'useradd' eller 'adduser' i Linux. Der er tidspunkter, hvor en Linux-systemadministrator bad om at oprette brugerkonti på Linux med nogle specifikke egenskaber, begrænsninger eller kommentarer.

I Linux er en 'useradd' kommando et lavt niveau værktøj, der bruges til at tilføje/oprette brugerkonti i Linux og andre Unix-lignende operativsystemer. 'Adduser' ligner meget kommandoen useradd, fordi det bare er et symbolsk link til det.

I nogle andre Linux-distributioner kan kommandoen brugeradd leveres med let forskelversion. Jeg foreslår, at du læser din dokumentation, inden du bruger vores instruktioner til at oprette nye brugerkonti i Linux.

Når vi kører kommandoen 'useradd' i Linux-terminalen, udfører den følgende vigtige ting:

  1. Den redigerer/etc/passwd,/etc/shadow,/etc/group og/etc/gshadow filer for den nyoprettede brugerkonto.
  2. Opretter og udfylder en hjemmemappe til den nye bruger.
  3. Indstiller tilladelser og ejerskaber til hjemmekataloget.

Grundlæggende syntaks for kommando er:

useradd [options] username

I denne artikel viser vi dig de mest anvendte 15 brugeradd-kommandoer med deres praktiske eksempler i Linux. Vi har opdelt sektionen i to dele fra grundlæggende til avanceret brug af kommando.

  1. Del I: Grundlæggende brug med 10 eksempler
  2. Del II: Forhåndsbrug med 5 eksempler

1. Sådan tilføjes en ny bruger i Linux

For at tilføje/oprette en ny bruger skal du alt følge kommandoen 'useradd' eller 'adduser' med 'username'. 'Brugernavnet' er et brugerloginavn, der bruges af brugeren til at logge ind på systemet.

Der kan kun tilføjes en bruger, og dette brugernavn skal være entydigt (der findes forskelligt fra andet brugernavn på systemet).

For eksempel, hvis du vil tilføje en ny bruger kaldet 'tecmint', skal du bruge følgende kommando.

 useradd tecmint

Når vi tilføjer en ny bruger i Linux med kommandoen 'useradd', oprettes den i låst tilstand, og for at låse den brugerkonto op, skal vi indstille en adgangskode til den konto med kommandoen 'passwd'.

 passwd tecmint
Changing password for user tecmint.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

Når en ny bruger er oprettet, føjes den automatisk til filen '/ etc/passwd'. Filen bruges til at gemme brugeroplysninger, og posten skal være.

tecmint:x:504:504:tecmint:/home/tecmint:/bin/bash

Ovenstående post indeholder et sæt med syv kolon-adskilte felter, hvert felt har sin egen betydning. Lad os se, hvad er disse felter:

  1. Brugernavn: Brugerloginavn bruges til at logge ind på systemet. Det skal være mellem 1 og 32 chartre langt.
  2. Adgangskode: Brugeradgangskode (eller x-tegn) gemt i/etc/shadow-fil i krypteret format.
  3. Bruger-id (UID): Hver bruger skal have et bruger-id (UID) brugeridentifikationsnummer. UID 0 er som standard forbeholdt root-brugere, og UID'er fra 1-99 er reserveret til andre foruddefinerede konti. Yderligere UID'er fra 100-999 er forbeholdt systemkonti og grupper.
  4. Gruppe-id (GID): Det primære gruppe-id (GID) gruppeidentifikationsnummer gemt i/etc/gruppefilen.
  5. Brugerinfo: Dette felt er valgfrit og giver dig mulighed for at definere ekstra information om brugeren. For eksempel brugerens fulde navn. Dette felt udfyldes med kommandoen 'finger'.
  6. Hjemmappe: Den absolutte placering af brugerens hjemmemappe.
  7. Shell: Den absolutte placering af en brugers shell dvs./bin/bash.

2. Opret en bruger med forskellige hjemmekataloger

Som standard opretter kommandoen 'brugeradd' en brugerens hjemmekatalog under/hjemmekatalog med brugernavn. Således har vi for eksempel set ovenfor standardhjemmekataloget for brugeren 'tecmint' er '/ home/tecmint'.

Denne handling kan dog ændres ved hjælp af '-d' mulighed sammen med placeringen af nyt hjemmekatalog (dvs./data/projekter). For eksempel opretter følgende kommando en bruger 'anusha' med en hjemmekatalog '/ data/projekter'.

 useradd -d /data/projects anusha

Du kan se brugerens hjemmekatalog og andre brugerrelaterede oplysninger som bruger-id, gruppe-id, shell og kommentarer.

 cat /etc/passwd | grep anusha

anusha:x:505:505::/data/projects:/bin/bash

3. Opret en bruger med specifikt bruger-id

I Linux har hver bruger sit eget UID (unikt identifikationsnummer). Når vi opretter nye brugerkonti i Linux, tildeles det som standard brugerid 500, 501, 502 og så videre ...

Men vi kan oprette brugerens med brugerdefineret bruger-id med '-u' mulighed. For eksempel opretter følgende kommando en bruger 'navin' med brugerdefineret bruger-id '999'.

 useradd -u 999 navin

Lad os nu kontrollere, at brugeren oprettede med en defineret bruger-id (999) ved hjælp af følgende kommando.

 cat /etc/passwd | grep navin

navin:x:999:999::/home/navin:/bin/bash

BEMÆRK: Sørg for, at værdien af et bruger-id skal være unik fra alle andre allerede oprettede brugere på systemet.

4. Opret en bruger med specifikt gruppe-id

Tilsvarende har hver bruger sit eget GID (Group Identification Number). Vi kan også oprette brugere med specifikke gruppe-id'er med -g mulighed.

Her i dette eksempel vil vi tilføje en bruger 'tarunika' med en specifik UID og GID samtidigt ved hjælp af '-u' og '-g' muligheder.

 useradd -u 1000 -g 500 tarunika

Se nu det tildelte bruger-id og gruppe-id i '/ etc/passwd' fil.

 cat /etc/passwd | grep tarunika

tarunika:x:1000:500::/home/tarunika:/bin/bash

5. Føj en bruger til flere grupper

Indstillingen ‘-G’ bruges til at føje en bruger til yderligere grupper. Hvert gruppenavn er adskilt med et komma uden mellemrum.

Her i dette eksempel tilføjer vi en bruger 'tecmint' i flere grupper som administratorer, webadmin og udvikler.

 useradd -G admins,webadmin,developers tecmint

Kontroller derefter, at de flere grupper, der er tildelt brugeren med id-kommando.

 id tecmint

uid=1001(tecmint) gid=1001(tecmint)
groups=1001(tecmint),500(admins),501(webadmin),502(developers)
context=root:system_r:unconfined_t:SystemLow-SystemHigh

6. Tilføj en bruger uden hjemmekatalog

I nogle situationer, hvor vi af nogle sikkerhedsmæssige årsager ikke ønsker at tildele en hjemmekatalog til en bruger. I en sådan situation, når en bruger logger ind på et system, der netop er genstartet, vil dets hjemmekatalog være root. Når en sådan bruger bruger kommandoen su, vil dens loginmappe være den tidligere brugermappe.

For at oprette brugere uden deres hjemmekataloger bruges '-M'. For eksempel opretter følgende kommando en bruger 'shilpi' uden en hjemmekatalog.

 useradd -M shilpi

Lad os nu kontrollere, at brugeren oprettes uden hjemmekatalog ved hjælp af kommandoen ls.

 ls -l /home/shilpi

ls: cannot access /home/shilpi: No such file or directory

7. Opret en bruger med kontoens udløbsdato

Når vi tilføjer brugerens med 'useradd' kommando, udløber brugerkontoen som standard aldrig, dvs. deres udløbsdato er indstillet til 0 (betyder aldrig udløbet).

Vi kan dog indstille udløbsdatoen ved hjælp af '-e', der indstiller datoen i ÅÅÅÅ-MM-DD-format. Dette er nyttigt til oprettelse af midlertidige konti i en bestemt periode.

Her i dette eksempel opretter vi en bruger 'aparna' med kontoens udløbsdato, dvs. 27. april 2014 i ÅÅÅÅ-MM-DD-format.

 useradd -e 2014-03-27 aparna

Bekræft derefter kontoens alder og adgangskode med kommandoen 'chage' for brugeren 'aparna' efter indstilling af kontoens udløbsdato.

 chage -l aparna

Last password change						: Mar 28, 2014
Password expires						: never
Password inactive						: never
Account expires							: Mar 27, 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

8. Opret en bruger med adgangskodens udløbsdato

Argumentet ‘-f’ bruges til at definere antallet af dage, efter en adgangskode udløber. En værdi på 0 inaktiv brugerkontoen, så snart adgangskoden er udløbet. Som standard betyder adgangskodens udløbsværdi, der er indstillet til -1, aldrig at udløbe.

Her i dette eksempel indstiller vi en udløbsdato for en adgangskode til kontoen, dvs. 45 dage på en bruger 'tecmint' ved hjælp af '-e' og '-f' muligheder.

 useradd -e 2014-04-27 -f 45 tecmint

9. Tilføj en bruger med brugerdefinerede kommentarer

Indstillingen '-c' giver dig mulighed for at tilføje brugerdefinerede kommentarer, såsom brugerens fulde navn, telefonnummer osv. Til/etc/passwd-filen. Kommentaren kan tilføjes som en enkelt linje uden mellemrum.

For eksempel tilføjer følgende kommando en bruger 'mansi' og indsætter brugerens fulde navn, Manis Khurana, i kommentarfeltet.

 useradd -c "Manis Khurana" mansi

Du kan se dine kommentarer i '/ etc/passwd' filen i kommentarfeltet.

 tail -1 /etc/passwd

mansi:x:1006:1008:Manis Khurana:/home/mansi:/bin/sh

10. Skift bruger login shell:

Nogle gange tilføjer vi brugere, der ikke har noget at gøre med login-shell, eller nogle gange har vi brug for at tildele forskellige skaller til vores brugere. Vi kan tildele forskellige login-skaller til hver bruger med '-s' mulighed.

Her i dette eksempel tilføjer en bruger 'tecmint' uden login shell, dvs. '/ sbin/nologin' shell.

 useradd -s /sbin/nologin tecmint

Du kan kontrollere tildelt shell til brugeren i ‘/ etc/passwd’ fil.

 tail -1 /etc/passwd

tecmint:x:1002:1002::/home/tecmint:/sbin/nologin

11. Tilføj en bruger med specifik hjemmekatalog, standardskal og brugerdefineret kommentar

Følgende kommando opretter en bruger 'ravi' med hjemmekatalog '/ var/www/tecmint', standard shell/bin/bash og tilføjer ekstra information om brugeren.

 useradd -m -d /var/www/ravi -s /bin/bash -c "TecMint Owner" -U ravi

I ovenstående kommando opretter '-m -d' mulighed for en bruger med specificeret hjemmekatalog, og indstillingen '-s' indstiller brugerens standardskal, dvs./bin/bash. Indstillingen '-c' tilføjer de ekstra oplysninger om brugeren og '-U' argument opretter/tilføjer en gruppe med samme navn som brugeren.

12. Tilføj en bruger med hjemmekatalog, brugerdefineret shell, brugerdefineret kommentar og UID/GID

Kommandoen svarer meget til ovenstående, men her definerer vi shell som ‘/ bin/zsh’ og brugerdefineret UID og GID til en bruger ‘tarunika’. Hvor '-u' definerer ny brugers UID (dvs. 1000), mens '-g' definerer GID (dvs. 1000).

 useradd -m -d /var/www/tarunika -s /bin/zsh -c "TecMint Technical Writer" -u 1000 -g 1000 tarunika

13. Tilføj en bruger med hjemmekatalog, ingen shell, brugerdefineret kommentar og bruger-id

Den følgende kommando svarer meget til ovenstående to kommandoer, den eneste forskel er her, at vi deaktiverer login-shell til en bruger kaldet 'avishek' med brugerdefineret bruger-id (dvs. 1019).

Her tilføjer '-s' mulighed standard shell/bin/bash, men i dette tilfælde sætter vi login til '/ usr/sbin/nologin'. Det betyder, at bruger 'avishek' ikke kan logge ind på systemet.

 useradd -m -d /var/www/avishek -s /usr/sbin/nologin -c "TecMint Sr. Technical Writer" -u 1019 avishek

14. Tilføj en bruger med hjemmekatalog, shell, brugerdefineret skal/kommentar og bruger-id

Den eneste ændring i denne kommando er, vi brugte '-k' mulighed for at indstille brugerdefineret skeletkatalog, dvs. /etc/custom.skell, ikke standard/etc/skel. Vi brugte også '-s' mulighed for at definere forskellige shell dvs./bin/tcsh til bruger 'navin'.

 useradd -m -d /var/www/navin -k /etc/custom.skell -s /bin/tcsh -c "No Active Member of TecMint" -u 1027 navin

15. Tilføj en bruger uden hjemmekatalog, ingen skal, ingen gruppe og brugerdefineret kommentar

Denne kommando er meget anderledes end de andre kommandoer, der er forklaret ovenfor. Her brugte vi '-M' mulighed for at oprette bruger uden brugerens hjemmekatalog, og der bruges '-N' argument, der fortæller systemet at kun oprette brugernavn (uden gruppe). Argumenterne ‘-r’ er til oprettelse af en systembruger.

 useradd -M -N -r -s /bin/false -c "Disabled TecMint Member" clayton

For mere information og valgmuligheder om brugeradd, kør kommandoen 'useradd' på terminalen for at se tilgængelige indstillinger.

Læs også : 15 eksempler på kommandoer med usermod