Atunci când lucrați într-un mediu Linux multiutilizator, este adesea esențial să știți cu ce cont de utilizator sunteți conectat în prezent. Fie că gestionați servere, automatizați scripturi sau depanați permisiuni, Linux oferă mai multe comenzi pentru a afișa numele dvs. actual de conectare.

Utilizarea comenzii whoami(recomandată și cea mai simplă)

Comanda whoami este cea mai simplă modalitate de a afișa numele dvs. de utilizator efectiv curent.

Comanda:

whoami

Cum funcționează:

  • Citește ID-ul utilizatorului efectiv (EUID) al procesului curent.
  • Caută numele de utilizator asociat în /etc/passwd.
  • Afișează întotdeauna cine sunteți în acel moment.

🔹 Cel mai bun caz de utilizare:

  • Atunci când utilizați sudo sau schimbați utilizatorii, “whoami” afișează utilizatorul activ.

Utilizarea comenzii id 🧩 (informații mai detaliate)

Comanda id oferă mai mult decât numele dvs. de utilizator – arată ID-ul utilizatorului (UID), ID-ul grupului (GID) și apartenența la grup.

Comandă: – id

id -un

Alternativ, fără stegulețe:

id

Cum funcționează:

  • Folosește baza de date a utilizatorilor din sistem pentru a afișa informații curente despre identitate și grup.

  • -u → Afișează UID.

  • -n → Tipărește numele de utilizator în locul ID-urilor numerice.

🔹 Cel mai bun caz de utilizare:

  • Atunci când trebuie să cunoașteți și apartenența la grupuri sau privilegii.

Utilizarea comenzii logname 🖥️ (specifică sesiunii de conectare)

Comanda logname afișează numele de utilizator inițial utilizat pentru a începe sesiunea.

Comandă:

logname

Diferența cheie:

  • logname returnează întotdeauna numele de utilizator utilizat pentru conectarea la sesiune.

  • Dacă ați schimbat utilizatorii prin su sau sudo, se afișează în continuare numele de utilizator inițial.

🔹 Cel mai bun caz de utilizare:

  • Atunci când trebuie să știți cine a inițiat sesiunea.


4. Utilizarea comenzii “who” 🧑‍💻 (informații despre sesiune)

Comanda who afișează toți utilizatorii conectați în prezent și detaliile sesiunii acestora.

Comandă:

who am i

Exemplu de ieșire:

john tty1 2025-08-29 09:12

Cum funcționează:

  • Citește datele sesiunii din /var/run/utmp.

  • Afișează numele de utilizator, terminalul și data inițială de conectare.

🔹 Cel mai bun caz de utilizare:

  • La auditarea sesiunilor curente sau a mediilor multi-user.

Utilizarea variabilei de mediu $USER 🌿 (cea mai rapidă metodă)

În majoritatea distribuțiilor Linux, numele dvs. de utilizator curent este stocat în variabila de mediu $USER.

Comanda:

echo $USER

Exemplu de ieșire:

john

Cum funcționează:

  • Preia valoarea variabilei $USER setată în timpul autentificării.

  • Ușor și foarte rapid.

🔹 Cel mai bun caz de utilizare:

  • Ideal pentru scripturile shell și recuperarea rapidă a numelui de utilizator.

Cazuri de utilizare avansate

a) În interiorul scripturilor shell

#!/bin/bashecho "Script executat de: $USER"
  • Util pentru jurnalizarea automată.

b) Verificarea utilizatorilor conectați pe un server

who

Exemplu de ieșire:

john pts/0 2025-08-29 10:20 (192.168.1.10) alice pts/1 2025-08-29 10:30 (192.168.1.15)
  • Afișează toți utilizatorii activi.

c) Combinați cu ps pentru proprietarii de procese

ps -u $USER
  • Afișează toate procesele deținute de utilizatorul curent.

Considerații privind securitatea

  • Servere multiutilizator: Verificați întotdeauna utilizatorul dvs. efectiv înainte de a executa comenzi privilegiate.

  • Context Sudo: Utilizați “whoami” în loc de $USER pentru a evita falsificarea variabilelor de mediu.

  • Scripturi de logare: Preferați id -un pentru o raportare exactă a numelui de utilizator.

Concluzii

Linux oferă mai multe comenzi pentru a afișa numele de utilizator curent, dar fiecare servește unui scop ușor diferit:

  • Utilizați“whoami” pentru identitatea activă a utilizatorului.
  • Utilizați“id -un” atunci când aveți nevoie și de informații despre grup.
  • Utilizați“logname” pentru a afla cine s-a logat inițial.
  • Utilizați echo $USER pentru căutări rapide și scripturi shell.

Înțelegerea acestor diferențe este esențială pentru administrarea sistemului, automatizarea scripturilor și auditul de securitate.