Listează conturile de utilizator pe Mac din linia de comandă
Cuprins:
Administratorii Mac se pot găsi într-o situație în care trebuie să afișeze o listă cu toate conturile de utilizator de pe un anumit Mac prin intermediul liniei de comandă. Vom examina câteva metode pentru persoanele avansate de a enumera toate conturile, atât de utilizator, cât și de sistem, pe orice Mac cu orice versiune de software de sistem Mac OS X.
Câteva abordări de bază preliminare în acest sens ar fi accesarea ecranului de autentificare sau listarea conținutului directorului /Utilizatori, deși dacă un cont de utilizator este ascuns, atunci nu s-ar afișa pe ecranul de conectare și este la fel de simplu să ofuscați un utilizator din folderul /Users.În plus, existența unui nume în directorul /Utilizatori/ nu este sigură, deoarece puteți șterge un cont de utilizator, dar puteți păstra acel director principal al utilizatorilor. Drept urmare, în timp ce aceste abordări pot fi adecvate pentru utilizatorul obișnuit de Mac care caută să arate ce utilizatori au pe un computer, niciuna dintre aceste metode nu este suficientă pentru majoritatea nevoilor administratorilor. Dar, apelând la linia de comandă, puteți dezvălui toate conturile de utilizator de pe un Mac, fie că sunt conturi de utilizator generale ale utilizatorilor activi, conturi de administrator, precum și orice cont de sistem.
Cum se listează toate conturile de utilizator pe un Mac din linia de comandă
Deschideți terminalul dacă nu ați făcut acest lucru deja, fie pe mașina locală pentru care doriți să listați conturile de utilizator, fie prin conectarea la un Mac la distanță pe care doriți să vedeți conturile de utilizator pe . Vom folosi apoi comanda „dscl”, care funcționează în toate versiunile de software de sistem Mac OS X.
Vizualizați toți utilizatorii și conturile pe un Mac
dscl . lista /Utilizatori
Beneficiul (sau problema) cu această abordare este că listează nu numai toate conturile de utilizator de pe un Mac, dar arată și fiecare cont de proces demon și server. Acestea ar include nume de utilizator precum Paul, Bob, Jill, dar și demoni, conturi de sistem și utilizatori de proces precum networked, windowserver, daemon, nobody, root, _spotlight, _ard, _appserver, _iconservices și multe altele.
Dacă lista completă a utilizatorilor este astfel nedorită, puteți exclude cu ușurință toate daemonul _subliniere și conturile de proces, rulând rezultatul prin grep, așa cum vom arăta în continuare.
Afișați numai conturile de utilizator
dscl . lista /Utilizatori | grep -v '_'
Această comandă va filtra oricare dintre utilizatorii demonului _ cu prefix de subliniere, care nu sunt de fapt conturi de utilizator. Veți primi o listă mult mai scurtă de nume de utilizatori returnate ca rezultat, dar veți găsi în continuare trei nume de utilizator incluse care nu sunt conturi de utilizator obișnuite, dar sunt normale să fie găsite pe instalările Mac OS X; demon, nimeni și rădăcină.
Afișați toate conturile de utilizator, directoarele de utilizatori și informațiile despre utilizator GECOS pe un Mac
O altă abordare ar fi să afișeze și să enumere o listă detaliată a conturilor de utilizator, directorul asociat contului de utilizator și informațiile despre contul de utilizator GECOS (care este de obicei o descriere a contului sau un nume complet de utilizator ). Dacă vă întrebați ce naiba sunt unele dintre conturile de sistem și conturile de ID de utilizator de proces din listele menționate mai sus, această abordare oferă mai multe detalii, inclusiv descrierea gecos pentru fiecare cont (de exemplu, utilizatorul _qtss este demonul QuickTime Streaming Server)
dscacheutil -q user
Ieșirea acelei comenzi va fi destul de extinsă, așa că poate doriți să transmiteți rezultatul mai mult sau mai puțin sau să-l redirecționați într-un fișier text pentru o analiză mai ușoară.
Există probabil alte mijloace de afișare a tuturor conturilor de utilizator pe un Mac, indiferent de versiunea sistemului, dacă cunoașteți o metodă informativă eficientă care nu este tratată aici, împărtășiți-o în comentarii.