Diverse uscite per `w`,` who`, `whoami` e` id`


9

Nelle piattaforme della riga di comando online, come ad esempio quella su Codecademy, quando corro

for cmd in w who whoami id
do
    echo $cmd
    $cmd
    echo =========================
    echo "             "
done

ottengo

w                              
00:52:54 up 8 days, 14:10,  0 users,  load average: 3.78, 2.98, 2.69      
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT       
=========================                            

who
=========================                                                 

whoami                          
ccuser                          
=========================                              
  
id
uid=1000(ccuser) gid=1000(ccuser) groups=1000(ccuser)     
=========================                   

Si noti che solo whoamie idoutput qualcosa. Quando eseguo la stessa cosa sul mio computer, vedo risultati simili per tutti i comandi.

Perché Codecademy non visualizza l'utente per we who? Cosa c'è di diverso in questi comandi?

Risposte:


13
  • id rapporti
    • le attuali credenziali del proprio processo; o
    • le credenziali di un utente nominato, come letto dal database degli account di sistema .
  • whoami riporta le credenziali correnti del proprio processo.
  • whoe wsegnala la tabella delle sessioni di accesso attive dal database di accesso .

Il doco BSD osserva che whoamisvolge un sottoinsieme del lavoro di ide che lo idrende obsoleto.

Un sistema non deve avere una tabella delle sessioni di accesso attiva. Sui sistemi operativi Linux e sui BSD, se la tabella non è stata creata in bootstrap o è stata cancellata da allora, il sistema funzionerà senza. Inoltre, l'accesso e la disconnessione non lo creano implicitamente sui sistemi operativi Linux.

Inoltre, la tabella non deve essere leggibile da utenti non privilegiati e whoné il wcomando né il comando lo segnaleranno come errore.

Ulteriori letture

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.