Jak wyświetlić swoją bieżącą nazwę użytkownika w systemie Linux
Pracując w wielu użytkowników w środowisku Linux, często istotne jest, aby wiedzieć z jakim kontem użytkownika jesteś aktualnie zalogowany. Niezależnie od tego, czy zarządzasz serwerami, piszesz skrypty automatyzacji, czy rozwiązujesz problemy z uprawnieniami, Linux oferuje wiele poleceń, aby wyświetlić aktualną nazwę logowania.
Używanie polecenia whoami
Polecenie whoami jest najprostszym sposobem na wyświetlenie aktualnej efektywnej nazwy użytkownika.
Jak to działa:
- Odczytuje efektywny identyfikator użytkownika (EUID) bieżącego procesu.
- Wyszukuje powiązaną nazwę użytkownika w /etc/passwd.
- Zawsze wyświetla kto jesteś w danym momencie.
Najlepszy przypadek użycia:
Podczas używania sudo lub przełączania użytkowników, „whoami” pokazuje aktywną nazwę użytkownika.
Używanie polecenia id
Polecenie id dostarcza więcej niż tylko twoją nazwę użytkownika — pokazuje identyfikator użytkownika (UID), identyfikator grupy (GID) oraz członkostwa w grupach. Polecenie:
id -unAlternatywnie, bez flag:
idJak to działa:
Używa bazy danych użytkowników systemu, aby wyświetlić aktualne informacje o tożsamości i grupach.
-u → Wyświetla UID.
-n → Drukuje nazwę użytkownika zamiast identyfikatorów numerycznych.
Używanie polecenia logname
Polecenie logname wyświetla oryginalną nazwę użytkownika używaną do rozpoczęcia sesji.
Polecenie:
lognameKluczowa różnica:
logname zawsze zwraca nazwę użytkownika używaną do zalogowania się do sesji.
Jeśli przełączyłeś użytkowników za pomocą su lub sudo, nadal pokazuje oryginalne logowanie.
Używanie polecenia „who”
Polecenie who wyświetla wszystkich użytkowników aktualnie zalogowanych oraz szczegóły ich sesji.
Polecenie:
who am iPrzykład wyjścia:
john tty1 2025-08-29 09:12Jak to działa:
Odczytuje dane sesji z /var/run/utmp.
Wyświetla oryginalną nazwę logowania użytkownika, terminal i znacznik czasu logowania.
🔹 Najlepszy przypadek użycia:
Podczas audytowania aktualnych sesji lub środowisk wieloużytkownikowych.
Używanie zmiennej środowiskowej $USER
W większości dystrybucji Linux, twoja aktualna nazwa użytkownika jest przechowywana w zmiennej środowiskowej $USER.
Polecenie:
echo $USERPrzykład wyjścia:
johnJak to działa:
Pobiera wartość zmiennej $USER ustawionej podczas logowania.
Lekka i bardzo szybka.
Zaawansowane przypadki użycia
a) W skryptach powłoki
echo "Script executed by: $USER"Przydatne do logowania automatyzacji.
b) Sprawdzanie zalogowanych użytkowników na serwerze
whoPrzykład wyjścia:
john pts/0 2025-08-29 10:20 (192.168.1.10)
alice pts/1 2025-08-29 10:30 (192.168.1.15)Wyświetla wszystkich aktywnych użytkowników.
c) Połączenie z ps dla właścicieli procesów
ps -u $USERPokazuje wszystkie procesy należące do bieżącego użytkownika.
Rozważania dotyczące bezpieczeństwa
Serwery wieloużytkownikowe: Zawsze weryfikuj swój efektywny użytkownik przed uruchomieniem poleceń z uprawnieniami.
Kontekst sudo: Używaj „whoami” zamiast $USER, aby uniknąć oszukiwania zmiennych środowiskowych.
Skrypty logowania: Preferuj id -un dla dokładnego raportowania nazw użytkowników.
Podsumowanie
Linux oferuje wiele poleceń do wyświetlania twojej aktualnej nazwy logowania, ale każde z nich ma nieco inny cel:
- Użyj „whoami” dla tożsamości aktywnego użytkownika.
- Użyj „id -un”, gdy potrzebujesz również informacji o grupach.
- Użyj „logname”, aby dowiedzieć się, kto pierwotnie się zalogował.
- Użyj echo $USER do szybkich wyszukiwań i skryptów powłoki.
Zrozumienie tych różnic jest kluczowe dla administracji systemem, automatyzacji skryptów i audytów bezpieczeństwa.


