Ați dorit vreodată să listați toți utilizatorii din sistemul dvs. Linux sau să numărați numărul de utilizatori din sistem? Există comenzi pentru crearea unui utilizator, ștergerea unui utilizator, listarea utilizatorilor conectați, dar care este comanda pentru listarea tuturor utilizatorilor din Linux?
Acest tutorial vă va arăta cum să listați utilizatorii din sistemele Linux.
Obțineți o listă a tuturor utilizatorilor care utilizează fișierul / etc / passwd #
Informațiile despre utilizator local sunt stocate în fișierul /etc/passwd
. Fiecare linie din acest fișier reprezintă informații de conectare pentru un utilizator. Pentru a deschide fișierul, puteți folosi cat
sau less
:
Fiecare linie din fișier are șapte câmpuri delimitate de două puncte care conțin următoarele informații:
Dacă doriți să afișați numai nume de utilizator puteți utiliza fie comenzile awk
, fie cut
pentru a imprima numai primul câmp care conține numele de utilizator:
Obțineți o listă a tuturor utilizatorilor care utilizează comanda getent #
Comanda getent
afișează intrări din bazele de date configurate în fișierul /etc/nsswitch.conf
, inclusiv passwd
baza de date, care poate fi utilizată pentru interogarea unei liste cu toți utilizatorii.
Pentru a obține o listă cu toți utilizatorii Linux, introduceți următoarea comandă :
După cum puteți vedea, rezultatul este același ca la afișarea conținutul fișierului /etc/passwd
. Dacă utilizați LDAP pentru autentificarea utilizatorului, getent
va afișa toți utilizatorii Linux din fișierul /etc/passwd
și din baza de date LDAP.
De asemenea, puteți utiliza awk
sau cut
pentru a imprima numai primul câmp care conține numele de utilizator:
Verificați dacă există un utilizator în sistemul Linux #
Acum că știm cum să listăm toți utilizatorii, pentru a verifica dacă există un utilizator în caseta noastră Linux, putem pur și simplu să filtrăm lista de utilizatori prin canalizarea listei la comanda grep
.
De exemplu, pentru a aflați dacă există un utilizator cu numele jack
în sistemul nostru Linux putem folosi următoarea comandă:
Dacă utilizatorul există, comanda de mai sus va imprima datele de conectare ale utilizatorului informație. Nicio ieșire care înseamnă că utilizatorul nu există.
Putem verifica, de asemenea, dacă există un utilizator fără a utiliza comanda grep
așa cum se arată mai jos:
La fel ca înainte, dacă utilizatorul există, comanda va afișa informațiile de conectare ale utilizatorului.
Dacă doriți să aflați câte conturi de utilizatori aveți pe sistemul dvs., conectați ieșirea getent passwd
la comanda wc
:
După cum puteți vedea din rezultatul de mai sus, sistemul meu Linux are 33 de conturi de utilizator.
Sistem și utilizatori normali #
Nu există nicio diferență tehnică reală între sistem și utilizatorii obișnuiți (normali). De obicei, utilizatorii de sistem sunt creați la instalarea sistemului de operare și a pachetelor noi. În unele cazuri, puteți crea un utilizator de sistem care va fi utilizat de unele aplicații.
Utilizatorii normali sunt utilizatorii creați de root sau de un alt utilizator cu privilegii sudo. De obicei, un utilizator normal are un shell de autentificare real și un director principal.
Fiecare utilizator are un ID de utilizator numeric numit UID. Dacă nu este specificat la crearea unui utilizator nou cu comanda useradd
, UID-ul va fi selectat automat din fișierul /etc/login.defs
în funcție de UID_MIN
și UID_MIN
valorile.
Pentru a verifica UID_MIN
și UID_MIN
valorile din sistemul dvs., puteți utiliza următoarea comandă:
Din rezultatul de mai sus, putem vedea că toți utilizatorii normali ar trebui să aibă un UID între 1000 și 60000. Cunoașterea valorii minime și maxime ne permite să interogăm o listă a tuturor utilizatorilor normali din sistemul nostru.
Comanda de mai jos va enumera toți utilizatorii normali din sistemul nostru Linux:
Valorile sistemului dvs. UID_MIN
și UID_MIN
pot fi diferite, astfel încât versiunea mai generică a comenzii de mai sus ar fi:
Dacă doriți să imprimați doar numele de utilizator, trimiteți ieșirea la comanda cut
:
Concluzie #
În acest tutorial, ați învățat cum să listați și să filtrați utilizatorii din sistemul dvs. Linux și care sunt principalele diferențe între sistem și Linux normal utilizatori.
Aceleași comenzi se aplică pentru orice distribuție Linux, inclusiv Ubuntu, CentOS, RHEL, Debian și Linux Mint.