15 nyttige brukeradd-kommandoer med eksempler i Linux


Vi er alle klar over de mest populære kommandoene kalt 'useradd' eller 'adduser' i Linux. Det er tider når en Linux-systemadministrator blir bedt om å opprette brukerkontoer på Linux med spesifikke egenskaper, begrensninger eller kommentarer.

I Linux er kommandoen 'useradd' et lavnivåverktøy som brukes til å legge til eller opprette brukerkontoer i Linux og andre Unix-lignende operativsystemer. «adduser»-kommandoen ligner veldig på «useradd»-kommandoen, siden den bare er en symbolsk kobling til den.

I noen Linux-distribusjoner kan «useradd»-kommandoen ha en litt annen versjon. Jeg foreslår at du leser dokumentasjonen din før du bruker instruksjonene våre for å opprette nye brukerkontoer i Linux.

Når vi kjører kommandoen 'useradd' i Linux-terminalen, utfører den følgende hovedoppgaver:

  • Den redigerer /etc/passwd, /etc/shadow, /etc/group, og /etc/gshadow filer for de nyopprettede brukerkontoene.
  • Oppretter og fyller ut en hjemmekatalog for den nye brukeren.
  • Angir tillatelser og eierskap til hjemmekatalogen.

Brukerlegg til kommandosyntaks

Den grunnleggende syntaksen til «useradd»-kommandoen er:

useradd [options] username

I denne artikkelen vil vi demonstrere de 15 mest brukte 'useradd'-kommandoene med praktiske eksempler i Linux.

1. Hvordan legge til en ny bruker i Linux

For å legge til eller opprette en ny bruker, må du bruke kommandoen «useradd» eller «adduser» etterfulgt av «brukernavn». «brukernavnet» er påloggingsnavnet en bruker bruker for å logge på systemet.

Kun én bruker kan legges til, og brukernavnet må være unikt, og ikke allerede eksistere på systemet.

For å legge til en ny bruker ved navn «tecmint», bruk for eksempel følgende kommando:

useradd tecmint

Når vi legger til en ny bruker i Linux med «useradd»-kommandoen, blir den opprettet i en låst tilstand. For å låse opp den brukerkontoen, må vi angi et passord for den kontoen ved å bruke «passwd»-kommandoen.

passwd tecmint

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

Når en ny bruker er opprettet, legges dens oppføring automatisk til i '/etc/passwd'-filen. Denne filen brukes til å lagre brukerens informasjon, og oppføringen skal være.

tecmint:x:1000:1000:tecmint:/home/tecmint:/bin/bash

Oppføringen ovenfor inneholder et sett med syv kolon-separerte felt, hvert felt har sin egen betydning.

La oss se hva disse feltene er:

  • Brukernavn – Brukerpåloggingsnavnet brukes til å logge på systemet. Den skal være mellom 1 og 32 tegn lang.
  • Passord – Brukerpassordet (eller 'x'-tegnet) lagres i '/etc/shadow'-filen i et kryptert format.
  • Bruker-ID (UID) – Hver bruker må ha en bruker-ID (UID), som står for User Identification Number. Som standard er UID 0 reservert for rotbrukeren, og UID-er fra 1 til 99 er reservert for andre forhåndsdefinerte kontoer. I tillegg er UID-er fra 100 til 999 reservert for systemkontoer og grupper.
  • Gruppe-ID (GID) – Den primære gruppe-ID-en (GID), som står for Group Identification Number, er lagret i ' /etc/group' fil.
  • Brukerinformasjon – Dette feltet er valgfritt og lar deg definere ekstra informasjon om brukeren, for eksempel brukerens fulle navn. Denne informasjonen kan fylles ut ved hjelp av fingerkommandoen.
  • Hjemmekatalog – Den absolutte plasseringen til brukerens hjemmekatalog.
  • Shell – Den absolutte plasseringen av en brukers skall, dvs. /bin/bash.

2. Hvordan opprette en bruker med en annen hjemmekatalog

Som standard oppretter kommandoen «useradd» en brukers hjemmekatalog under «/home»-katalogen med brukernavnet. For eksempel, som vist ovenfor, er standard hjemmekatalog for brukeren "tecmint" "/home/tecmint".

Denne oppførselen kan imidlertid endres ved å bruke '-d'-alternativet sammen med plasseringen av den nye hjemmekatalogen (f.eks. '/data/prosjekter'). For eksempel vil følgende kommando opprette en bruker «anusha» med en hjemmekatalog satt til «/data/prosjekter».

useradd -d /data/projects anusha
passwd anusha

Du kan se brukerens hjemmekatalog og annen brukerrelatert informasjon, for eksempel bruker-ID, gruppe-ID, skall og kommentarer ved å bruke følgende kattekommando.

cat /etc/passwd | grep anusha

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

3. Hvordan opprette en bruker med en spesifikk bruker-ID

I Linux har hver bruker sin egen UID (Unique Identification Number). Som standard, når vi oppretter en ny brukerkonto i Linux, tildeler den bruker-ID-ene 500, 501, 502 og så videre.

Vi kan imidlertid opprette brukere med egendefinerte bruker-IDer ved å bruke '-u'-alternativet. For eksempel vil følgende kommando opprette en bruker «navin» med en tilpasset bruker-ID «1002».

useradd -u 1002 navin

La oss nå bekrefte at brukeren opprettet med en definert bruker-ID (1002) ved å bruke følgende kommando.

cat /etc/passwd | grep navin

navin:x:1002:1002::/home/navin:/bin/bash

MERK: Sørg for at verdien til en bruker-ID må være unik fra alle andre allerede opprettede brukere på systemet.

4. Hvordan opprette en bruker med en spesifikk gruppe-ID

På samme måte har hver bruker sin egen GID (Gruppeidentifikator). Vi kan også opprette brukere med spesifikke gruppe-ID-er ved å bruke '-g'-alternativet.

I dette eksemplet vil vi legge til en bruker 'tarunika' med en spesifikk UID og GID samtidig ved hjelp av '- u' og '-g' alternativer.

useradd -u 1005 -g tecmint tarunika

Sjekk nå den tildelte bruker-IDen og gruppe-IDen i '/etc/passwd'-filen.

cat /etc/passwd | grep tarunika

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

For å bekrefte brukerens GID, bruk id-kommandoen:

id -gn tarunika

5. Hvordan legge til en bruker i flere grupper

Alternativet '-G' brukes til å legge til en bruker i flere grupper. Hvert gruppenavn er atskilt med komma, uten mellomrom.

I dette eksemplet legger vi til en bruker «tecmint» til flere grupper, for eksempel administratorer, webbadmin og utviklere sterk>.

groupadd admins
groupadd webadmin
groupadd developers
usermod -a -G admins,webadmin,developers tecmint
useradd -G admins,webadmin,developers paddy

Deretter kontrollerer du at de flere gruppene er tilordnet brukeren med kommandoen id.

id tecmint

uid=1000(tecmint) gid=1000(tecmint)
groups=1000(tecmint),1007(admins),1008(webadmin),1009(developers)
context=root:system_r:unconfined_t:SystemLow-SystemHigh

6. Hvordan legge til en bruker uten hjemmekatalog

I visse situasjoner, der vi ikke ønsker å tildele hjemmekataloger til en bruker på grunn av sikkerhetsårsaker, vil brukerens hjemmekatalog være root når de logger på et system som nettopp har startet på nytt. Når en slik bruker bruker «su»-kommandoen, vil deres påloggingskatalog være den forrige brukerens hjemmekatalog.

For å opprette brukere uten deres hjemmekataloger, brukes '-M'-alternativet. For eksempel vil følgende kommando opprette en bruker «shilpi» uten en hjemmekatalog.

useradd -M shilpi

La oss nå bekrefte at brukeren er opprettet uten en hjemmekatalog ved å bruke ls-kommandoen.

ls -l /home/shilpi

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

7. Hvordan opprette en bruker med utløpsdato i Linux

Som standard, når vi legger til brukere med «useradd»-kommandoen, utløper aldri brukerkontoen, noe som betyr at deres utløpsdato er satt til 0 (som betyr aldri utløpt).

Vi kan imidlertid angi utløpsdatoen ved å bruke '-e'-alternativet, som skal være i formatet ÅÅÅÅ-MM-DD. Dette er nyttig for å opprette midlertidige kontoer for en bestemt tidsperiode.

I dette eksemplet oppretter vi en bruker «aparna» med en kontoutløpsdato, som er 27. august 2021, i ÅÅÅÅ-MM-DD > format.

useradd -e 2021-08-27 aparna

Deretter bekrefter du aldringsinformasjonen for kontoen og passordet ved å bruke «chage»-kommandoen for brukeren «aparna» etter å ha angitt kontoens utløpsdato.

chage -l aparna

Last password change					: Jun 25, 2021
Password expires					: never
Password inactive					: never
Account expires						: Aug 27, 2021
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. Hvordan opprette en bruker med passordets utløpsdato

Argumentet '-f' brukes til å definere antall dager etter at et passord utløper. En verdi på 0 inaktiverer brukerkontoen så snart passordet har utløpt. Som standard er passordets utløpsverdi satt til -1, noe som betyr at den aldri utløper.

I dette eksemplet vil vi angi en utløpsdato for kontopassordet, som er 45 dager, for en bruker 'mansi' som bruker '-e' og '-f' alternativer.

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

9. Hvordan legge til en bruker med kommentarer i Linux

Alternativet '-c' lar deg legge til egendefinerte kommentarer, for eksempel brukerens fulle navn, telefonnummer, osv., i filen «/etc/passwd». Kommentaren kan legges til som en enkelt linje uten mellomrom.

For eksempel vil følgende kommando legge til en bruker «mansi» og sette inn brukerens fulle navn, Manis Khurana, i kommentarfeltet.

useradd -c "Manis Khurana" mansi

Du kan se den innsatte kommentaren i «/etc/passwd»-filen i kommentarfeltet ved å bruke hale-kommandoen.

tail -1 /etc/passwd

mansi:x:1010:1013:Manis Khurana:/home/mansi:/bin/sh

10. Hvordan lage et brukerpåloggingsskall i Linux

Noen ganger legger vi til brukere som ikke har noe med innloggingsskallet å gjøre, eller noen ganger er vi pålagt å tilordne forskjellige skall til brukerne våre. Vi kan tilordne forskjellige påloggingsskall til hver bruker med «-s»-alternativet.

Her i dette eksemplet vil du legge til en bruker «tecmint» uten et påloggingsskall, dvs. «/sbin/nologin»-skall.

useradd -s /sbin/nologin tecmint

Du kan sjekke det tilordnede skallet til brukeren i '/etc/passwd'-filen.

tail -1 /etc/passwd

tecmint:x:1011:1014::/home/tecmint:/sbin/nologin

11. Hvordan opprette en bruker med spesifisert hjem, skall og kommentar

Følgende kommando vil opprette en bruker «ravi» med en hjemmekatalog «/var/www/tecmint», et standardskall av /bin/bash, og tilleggsinformasjon om brukeren.

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

I kommandoen ovenfor oppretter alternativene '-m' og '-d' en bruker med en spesifisert hjemmekatalog, og '-s' alternativet setter brukerens standard skall til /bin/bash. Alternativet '-c' legger til ekstra informasjon om brukeren, og argumentet '-U' oppretter/legger til en gruppe med samme navn som brukeren.

12. Hvordan opprette en bruker med et definert hjem, skall, kommentar, UID/GID

Kommandoen er veldig lik den ovenfor, men her definerer vi skallet som '/bin/zsh' og setter tilpasset UID og GID for en bruker 'tarunika'. Alternativet '-u' definerer den nye brukerens UID (dvs. 100), og '-g'-alternativet definerer GID (dvs. , 1000).

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

13. Hvordan opprette en bruker med Home, No Shell, Comment og UID

Følgende kommando er veldig lik de to ovennevnte kommandoene. Den eneste forskjellen er at her har vi deaktivert påloggingsskallet for en bruker kalt «avishek» med en tilpasset bruker-ID (dvs. 1019).

Alternativet '-s' setter standard skall til /bin/bash, men i dette tilfellet setter vi påloggingsskallet til '/usr/sbin/ nologin'. Det betyr at brukeren «avishek» ikke vil kunne logge på systemet.

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

14. Hvordan opprette en bruker med et spesifisert hjem, skall, skjelett og UID

Den eneste endringen i denne kommandoen er at vi brukte alternativet '-k' for å sette den tilpassede skjelettkatalogen til /etc/custom.skell i stedet for standarden, /etc/skel. Vi brukte også alternativet '-s' for å definere et annet skall, /bin/tcsh, for brukeren 'navin'.

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

15. Hvordan opprette en bruker uten Home, Shell eller Group, med kommentar

Følgende kommando er veldig forskjellig fra de andre kommandoene som er forklart ovenfor. Her brukte vi alternativet '-M' for å opprette en bruker uten brukerens hjemmekatalog, og alternativet '-N' brukes til å instruere systemet til å bare opprette et brukernavn (uten gruppe). Alternativet '-r' er for å opprette en systembruker.

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

For mer informasjon og alternativer om 'useradd', kjør kommandoen 'useradd' i terminalen for å se de tilgjengelige alternativene

useradd

Hvis du vil endre brukerkontoattributter som å endre brukernavn, bruker-ID (UID), hjemmekatalog, skall og mer, bruk usermod-kommandoen.