Articles

How to List Users on CentOS

Linux gebaseerde besturingssystemen zoals CentOS zijn ontworpen om te werken met een groot aantal gebruikers tegelijk. Als je ooit gedeelde Linux-gebaseerde webhosting hebt gebruikt, dan is het je misschien opgevallen. Uw gebruikersnaam kan iets zijn als xyz_232323. Technisch gezien betekent dit dat er veel gebruikers zijn en dat elk van de gebruikers genummerd is. Dus als Linux systeembeheerder is het een must om te weten hoe je een gebruikerslijst maakt op CentOS en andere Linux distributies.

In dit artikel zal ik laten zien hoe je een gebruikerslijst maakt op CentOS 7. Laten we beginnen.

De details van de gebruikers worden op het CentOS besturingssysteem opgeslagen in het bestand /etc/passwd. Dit is een tekstbestand zonder opmaak. U kunt dat dus als volgt lezen met het commando less of cat:

$ less /etc/passwd

Zoals u kunt zien, wordt een lijst van alle gebruikers afgedrukt. Informatie over een enkele gebruiker wordt opgeslagen in een enkele regel /etc/passwd bestand. Elke regel bevat veel informatie over die specifieke gebruiker, gescheiden door een dubbele punt (:)

Een regel in het bestand /etc/passwd bevat de volgende informatie, gescheiden door een dubbele punt (:)

Username : Password : UID : GID : Gebruikersdetails : Home Directory Path : Default Shell

Hier, Gebruikersnaam – De loginnaam van de gebruiker. Het mag geen spaties of andere speciale tekens bevatten. Alleen alfa-numerieke karakters zijn toegestaan.

Wachtwoord – Op Linux gebaseerde besturingssystemen zoals CentOS wordt het wachtwoord opgeslagen in het bestand /etc/shadow. Als het wachtwoord is ingesteld, wordt x in dit veld opgeslagen.

UID – Op Linux gebaseerde besturingssystemen heeft elke gebruiker een alfanumerieke naam of Username en een numerieke ID die User ID of UID wordt genoemd. Voor gewone gebruikers begint de UID bij 1000. De root gebruiker heeft de UID 0.

GID – Op Linux gebaseerde besturingssystemen, heeft elke groep een groepsnaam en een numerieke ID die Groep ID of GID wordt genoemd. In Linux moet elke gebruiker lid zijn van minstens één groep. Dus voor elke gebruiker die wordt aangemaakt, wordt ook een groep aangemaakt met dezelfde naam als de gebruikersnaam. De gebruiker wordt dan toegevoegd aan de groep. In dit veld wordt de GID van de primaire groep toegevoegd. Primaire groep is de standaard groep van de gebruiker. Als een gebruiker lid is van veel groepen, kan hij/zij dit veranderen terwijl hij/zij is ingelogd met newgrp commando. De GID voor de gewone groepen begint bij 1000. Als uw Linux systeem niet specifiek is geconfigureerd, moet de GID dezelfde zijn als de UID. De root groep heeft de GID 0.

Gebruikersdetails – Dit veld bewaart de volledige naam en andere persoonlijke informatie over de gebruiker als door komma’s gescheiden lijst. Het meest gebruikelijke gebruik van dit veld is om de volledige naam van de gebruiker in te stellen. Typ gewoon de volledige naam van uw gebruikersnaam hier in en het zou ingesteld moeten zijn.

Home Directory Path – Dit veld bevat het pad naar een directory waar alle gebruikersbestanden zullen worden opgeslagen. De $HOME shell variabele wordt vanuit dit veld ingesteld.

Default Shell – Op Linux gebaseerde besturingssystemen moet u een shell hebben ingesteld voor uw gebruiker. Standaard moeten de sh (/bin/sh) en bash (/bin/bash) shell worden ingesteld voor gewone gebruikers die zich op het systeem kunnen aanmelden. Maar er zijn andere shells zoals zsh, csh enz. De systeemgebruikers hebben /sbin/nologin shell ingesteld, dus zij zullen niet kunnen inloggen op het systeem. Als je de login voor sommige gebruikers wilt uitschakelen, zet dan dit veld op /sbin/nologin voor deze gebruikers.

U kunt dezelfde informatie krijgen als in het bestand /etc/passwd met het volgende commando:

$ getent passwd

Uitvoer van het getent wachtwoord:

Uitpakken van alleen de lijst met gebruikersnamen uit /etc/passwd-bestand:

Het bestand /etc/passwd bevat veel informatie. Als u alleen de gebruikersnaam uit de door dubbele punten (:) gescheiden lijst wilt halen, dan kunt u awk of cut gebruiken om dat te doen.

U kunt het volgende commando uitvoeren om de loginnaam of gebruikersnaam eruit te halen met het commando cut:

$ cut -d: -f1 /etc/passwd

Of

$ getent passwd | cut -d: -f1

Zoals u kunt zien, zijn alle gebruikersnamen uitgepakt.

Hetzelfde kun je doen met awk, en wel als volgt:

$ awk -F: ‘{print $1}’ /etc/passwd

Of,

$ getent passwd | awk -F: ‘{print $1}’

Zoals u kunt zien, krijg ik dezelfde uitvoer.

Lijst van gebruikers die kunnen inloggen op het systeem:

Als u een lijst wilt maken van alle gebruikers die op uw CentOS-besturingssysteem kunnen inloggen, voert u het volgende commando uit:

$ getent passwd | egrep -v ‘/s?bin/(nologin|shutdown|sync|halt)’ | cut -d: -f1

Zoals u kunt zien, kunnen slechts 4 gebruikers van mijn CentOS-machine inloggen en zijn de andere gebruikers systeemgebruikers. Zij kunnen zich niet aanmelden bij het systeem.

Dus dat is hoe je gebruikers op CentOS in een lijst opneemt. Bedankt voor het lezen van dit artikel.

Laat een antwoord achter

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *