Brukere er den viktigste komponenten i et Linux-system. Linux gir innebygde kommandoer til administratorene som lar dem administrere brukere effektivt. Det er en for å opprette brukere, slette brukere og endre brukertillatelser. Men hva med å liste opp alle brukerne som for øyeblikket er til stede i et system?

I denne artikkelen vil vi diskutere hvordan du kan få en liste over alle brukerne i Linux, sammen med en kort guide for å sjekke om en bruker eksisterer i et system eller ikke.

Hvordan vise en liste over alle brukere i Linux

Når du oppretter en ny bruker, lagres brukernavnet, passordet og andre detaljer i bestemte filer på en Linux-maskin. Heldigvis lar Linux deg lese og endre slike filer uten noen begrensning. Ved å bruke disse filene kan du vite informasjon relatert til brukere, for eksempel brukernavn, antall brukere og mer.

Bruke Passwd-filen

De passwd filen er en tekstfil som inneholder passordregistrene til alle brukerne som for øyeblikket er tilstede i systemet ditt. Denne filen ligger i /etc katalogen i din lokale lagring og inneholder følgende informasjon:

  1. Brukernavn
  2. Krypterte passord
  3. bruker-ID
  4. Brukerens gruppe-ID
  5. Fullt navn
  6. De /home katalogen til brukeren
  7. Brukerens påloggingsskall

Type katt / etc / passwd eller mindre / etc / passwd i terminalen din for å lese tekstfilen. Åpne /etc/passwd filen vil generere en utgang som ser omtrent slik ut.

root: x: 0: 0: root: / root: / bin / bash
demon: x: 1: 1: demon: / usr / sbin: / bin / sh
søppel: x: 2: 2: søppel: / søppel: / søppel / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
spill: x: 5: 60: spill: / usr / spill: / bin / sh
mann: x: 6: 12: mann: / var / cache / mann: / bin / sh

Ovennevnte utdata inneholder syv felt som inneholder informasjon relatert til brukerne. Disse feltene er atskilt med en avgrensning i dette tilfellet, kolon. Hver rad i utgangen angir en enkelt bruker.

For å få en liste over alle brukernavnene ved hjelp av passwd fil:

awk -F: '{skriv ut $ 1}' / etc / passwd

Awk er et kommandolinjeverktøy som lar Linux-brukere lage enkle "enlinjeprogrammer" som utfører raske operasjoner fra terminalen. I ovennevnte kode:

  1. -F står for feltutskiller. Siden kolontegnet er avgrenseren i /etc/passwd fil, passerer vi kolon som skilletegn i awk-kommandoen.
  2. {skriv ut $ 1} instruerer systemet om å skrive ut det første feltet. I dette tilfellet er det første feltet brukernavnet til brukerne.
  3. /etc/passwd filen inneholder dataene knyttet til brukerne.

Å utføre kommandoen ovenfor vil sende brukernavnene til alle brukere. Siden /etc/passwd filen inneholder systembrukere, vil utdataene også inkludere brukernavnene.

rot
daemon
søppel
sys
synkronisering
spill
Mann

Du kan justere awk-kommandoen litt for å skrive ut brukernavnene. Skriv inn følgende kommando for å vise de fulle navnene på brukere i Linux:

awk -F: '{print $ 5}' / etc / passwd

Siden systembrukere har samme brukernavn og fulle navn, vil du ikke merke noen forskjell i utdataene. Bare brukerne du har lagt til systemet ditt, vil ha forskjellige brukernavn og fulle navn.

Alternativt kan du også bruke kutte opp i stedet for awk-kommandoen. Syntaksen for kutt er ganske lik awk-kommandoen.

Slik skriver du ut brukernavnene i Linux ved hjelp av cut:

kutt -d: f1 / etc / passwd

Her, -d er avgrenseren, f1 betegner det første feltet (brukernavn), og /etc/passwd er tekstfilen som inneholder dataene.

Slik skriver du ut fornavnene på brukerne ved hjelp av cut:

kutt -d: f5 / etc / passwd

På samme måte kan du sende andre felt fra /etc/passwd filen ved å bare erstatte den f5 med f1-f7.

I slekt: Hvordan endre Linux-passordet ditt

Liste brukere med getent-kommandoen

Getent-kommandoen skriver ut innholdet i viktige tekstfiler som fungerer som en database for systemet. Filer som /etc/passwd og /etc/nsswitch.conf inneholder informasjon relatert til henholdsvis brukere og nettverk og kan leses ved hjelp av getent-kommandoen.

For å skrive ut innholdet på /etc/passwd fil ved hjelp av getent:

getent passwd

Utgangen vil inneholde syv forskjellige felt atskilt med kolontegnet. Hvert felt er reservert for bestemt informasjon, inkludert brukernavnene og hjemmekatalogstiene til brukerne.

root: x: 0: 0: root: / root: / bin / bash
demon: x: 1: 1: demon: / usr / sbin: / bin / sh
søppel: x: 2: 2: søppel: / søppel: / søppel / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
spill: x: 5: 60: spill: / usr / spill: / bin / sh
mann: x: 6: 12: mann: / var / cache / mann: / bin / sh

Du kan kjede getent-kommandoen med awk eller klipp for bare å få listen over brukernavn.

getent passwd | awk -F: '{skriv ut $ 1}'
getent passwd | kutt -d: -f1

Slik skriver du ut de fulle navnene på brukerne:

getent passwd | awk -F: '{skriv ut $ 5}'
getent passwd | kutt -d: -f5

Sjekk om en bruker eksisterer eller ikke

I noen situasjoner vil du kanskje sjekke om det finnes en bruker på Linux-systemet ditt eller ikke. De grep kommandoen er nyttig når du vil hente et bestemt tekstmønster fra en fil.

Du kan bruke en av følgende kommandoer for å kontrollere eksistensen av en bruker.

compgen -u | grep brukernavn
getent passwd | grep brukernavn

Hvis brukeren eksisterer, vil påloggingsinformasjonen som er knyttet til dem, vises på skjermen. På den annen side, hvis brukeren ikke er til stede i systemet, vil det oppstå en feil.

Slik sjekker du om en bruker eksisterer på et system uten å bruke grep:

getent passwd brukernavn

Du kan også pipe på getent eller compgen kommando med grep og ekko for å vise tilpasset utdata.

getent passwd | grep -q brukernavn && ekko "Bruker funnet" || ekko "Bruker ikke funnet"
compgen -u | grep -q brukernavn && ekko "Bruker funnet" || ekko "Bruker ikke funnet"

Kommandoen ovenfor vil skrive ut "Bruker funnet" hvis brukeren finnes i systemet, og "Bruker ikke funnet" hvis den ikke gjør det.

Telle antall brukere på et system

For å telle antall brukere som finnes på et Linux-system:

compgen -u | wc -l
getent passwd | wc -l

I kommandoene ovenfor, compgen og getent er ansvarlig for å vise listen som inneholder alle brukere og annen informasjon relatert til dem. De toalett står for ordtelling og brukes til å telle antall ord eller linjer i utdataene. De -l flagg betegner Linjer.

Bekrefte brukerkontoer i Linux

Hver Linux-administrator bør vite hvordan de kan administrere og administrere andre brukere på et system. Å mestre Linux-kommandoer som lar deg opprette, fjerne, kontrollere og liste opp andre brukere er en fin måte å komme i gang med brukeradministrasjon.

Å bli komfortabel med Linux-miljøet bør være ditt første mål hvis du bare er nybegynner. Det er visse ting du må gjøre rett etter at du har installert den første Linux-distribusjonen noensinne. Lære noen grunnleggende kommandoer er en av dem og er viktig for å utføre enkle databehandlingsoppgaver på Linux.

E-post
Hvordan komme i gang med Linux

Interessert i å bruke Linux, men vet ikke hvor du skal begynne? Lær hvordan du bruker Linux, fra å velge distro til å installere apper.

Relaterte temaer
  • Linux
  • Linux
Om forfatteren
Deepesh Sharma (21 publiserte artikler)

Deepesh er Junior Editor for Linux på MUO. Han har skrevet informasjonsinnhold på internett i over 3 år. På fritiden liker han å skrive, høre på musikk og spille gitaren.

Mer fra Deepesh Sharma

Abonner på vårt nyhetsbrev

Bli med på nyhetsbrevet vårt for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Ett steg til…!

Bekreft e-postadressen din i e-posten vi nettopp sendte deg.

.