Jak wyświetlić listę użytkowników w systemie Linux?

How List Users Linux



Linux to system operacyjny dla wielu użytkowników. Aby system był funkcjonalny i produktywny, konieczne jest odpowiednie zarządzanie użytkownikami. Dla administratora systemu znajomość wszystkich użytkowników jest niezbędna do zarządzania użytkownikami i uprawnieniami.

Ten przewodnik pokazuje, jak wyświetlić listę użytkowników w systemie Linux.







Lista użytkowników

System przechowuje listę użytkowników w określonych plikach i bazach danych. Możemy uzyskać do nich dostęp za pomocą różnych narzędzi. Możemy również filtrować dane wyjściowe, aby zebrać określone informacje.



Lista użytkowników z /etc/passwd
Plik /etc/passwd to oparta na zwykłym tekście baza danych zawierająca informacje o wszystkich użytkownikach w systemie. Właścicielem pliku jest root z uprawnieniami do plików 644. Aby uzyskać szczegółowe wyjaśnienie uprawnień do plików, zapoznaj się z tym przewodnikiem dotyczącym uprawnień i własności plików w systemie Linux .



Możemy sprawdzić zawartość pliku /etc/passwd, aby mieć pełną listę wszystkich użytkowników w systemie.





$ cat /etc/passwd | sortuj | mniej

Każdy wiersz w pliku oznacza unikalną nazwę użytkownika i powiązane z nią informacje. Informacje są podzielone na siedem pól oddzielonych dwukropkami. Oto krótki przegląd pól.



  • Pole 1: Nazwa użytkownika użytkownika.
  • Pole 2: Określa, czy hasło użytkownika jest zaszyfrowane. Jeśli wartość to x, oznacza to, że hasło jest przechowywane w pliku tekstowym /etc/shadow. Jest to plik chroniony przez system, który wymaga uprawnień sudo, aby uzyskać dostęp.
  • Pole 3: UID (identyfikator użytkownika) użytkownika.
  • Pole 4: GID (ID grupy) użytkownika.
  • Pole 5: Pełna nazwa użytkownika (GECOS).
  • Pole 6: Katalog domowy dedykowany dla użytkownika.
  • Pole 7: powłoka logowania użytkownika. Domyślnie ta wartość byłaby ustawiona na /bin/bash.

Jeśli dodatkowe informacje nie są w tej chwili potrzebne, możemy je pominąć w danych wyjściowych.

$ cat /etc/passwd | awk -F: '{ print $1}' | sortować

$ cat /etc/passwd | wyciąć -d: -f1 | sortować

Wyświetlanie listy użytkowników korzystających z getent
Termin getent to skrót na określenie wpisów z administracyjnej bazy danych. Jak sugeruje, getent może współpracować z różnymi administracyjnymi bazami danych. Sprawdź wszystkie obsługiwane administracyjne bazy danych.

$ getent --pomoc

Interesuje nas baza danych passwd, ponieważ zawiera informacje o wszystkich użytkownikach w systemie. Sprawdź hasło baza danych z getent.

$ getent passwd | sortować

Wynik jest podobny do zawartości /etc/passwd. Zauważ, że ta komenda getent wyświetli użytkowników z obu baz danych passwd i LDAP, jeśli system jest skonfigurowany do używania protokołu LDAP do uwierzytelniania użytkowników. Aby uzyskać bardziej szczegółowe informacje, zapoznaj się z tym przewodnikiem dotyczącym polecenia getent w systemie Linux .

Możemy usunąć wszystkie dodatkowe informacje z danych wyjściowych, zachowując tylko nazwę użytkownika.

$ getent passwd | awk -F: '{ print $1}' | sortować

$ getent passwd | wyciąć -d: -f1 | sortować

Wystawiający użytkownika grupy
W systemie Linux grupy to jednostki organizacyjne służące do organizowania kont użytkowników i administrowania nimi. Pomaga łatwiej zarządzać różnymi uprawnieniami systemu i plików.

Aby wyświetlić listę wszystkich użytkowników z danej grupy użytkowników, możemy użyć getent.

$ grupa getent

Korzystanie z listy użytkowników

Teraz wiemy, jak wyświetlić listę wszystkich użytkowników w systemie. Oto kilka scenariuszy zastosowania tej wiedzy.

Sprawdzanie istnienia użytkownika
Z listy użytkowników możemy sprawdzić, czy użytkownik istnieje w systemie Linux. Narzędzie getent może sprawdzić, czy użytkownik istnieje w systemie.

$ getent passwd

Inną (choć niezbyt dobrą) metodą jest użycie grep. Listę użytkowników możemy po prostu przefiltrować za pomocą grep. Ponieważ każdy użytkownik ma swój własny, unikalny wpis, nie spowoduje to żadnych kolizji.

$ getent passwd | grep

Liczba kont użytkowników
Jak widzieliśmy do tej pory, wszystkie metody zgłaszają unikalnego użytkownika w każdym wierszu danych wyjściowych. Licząc numer linii, możemy sprawdzić, ilu użytkowników jest aktualnie w systemie.

Aby policzyć numer wiersza, użyjemy toaleta narzędzie. Potokuj wyjście getent do polecenia wc.

$ getent passwd | wc-l

Wyświetlanie listy połączonych użytkowników
Jeśli zalogowano się wielu użytkowników, możemy sprawdzić listę połączonych użytkowników za pomocą który Komenda.

$ kto?

Dane wyjściowe zawierają trzy różne kolumny informacji.

  • Kolumna 1: połączona nazwa użytkownika.
  • Kolumna 2: Rodzaj podłączenia do systemu.
  • Kolumna 3: Godzina i data rozpoczęcia sesji.

Końcowe przemyślenia

W tym samouczku pokazaliśmy, jak wyświetlać i filtrować użytkowników w systemie. Przedstawia również niektóre potencjalne zastosowania listy użytkowników. Te metody działają niezależnie od używanej dystrybucji Linuksa.

Zarządzanie użytkownikami to duża część ekosystemu Linuksa. Aby dowiedzieć się więcej, zapoznaj się z tym szczegółowym przewodnikiem na jak wyświetlać i zarządzać użytkownikami w Linuksie .

Życzymy miłego korzystania z komputera!