Was ist PTS / 0 und (: 0.0) in Linux, wenn Sie eingeben, wer ich bin

16

Wenn ich den Befehl eingebe:

[root@degeneration Desktop]# who am i 
root     pts/0        2013-04-12 15:08 (:0.0)

Was ist pts / 0 und was ist mit (: 0.0) gemeint?

Sagar Dalvi
quelle

Antworten:

18

Das pts/0sagt Ihnen, an welchem ​​"Pseudo-Terminal" der Benutzer angemeldet ist. In diesem Fall ist es Terminal # 0. Das "(: 0.0)" gibt an, welchen Hostnamen und welche Anzeige Sie verwenden.

who am iist ein Alias ​​des Befehls who -m. Siehe die Manpage für wen . Sie können den whoBefehl auch hier nachlesen .

Die Ausgabe kann definitiv für einen Unix-Neuling verwirrend sein.

Beispiele

Shows -mist das gleiche wieam i

[root@grinch]$ who am i
root     pts/4        2013-04-12 07:10 (greeneggs.mydom.net)
[root@grinch]$ who -m
root     pts/4        2013-04-12 07:10 (greeneggs.mydom.net)

verbunden mit einem entfernten System

[sam@munger ~]$ who am i
sam      pts/0        2013-04-12 07:19 (192.168.1.7)

lokal auf meinem Laptop

[saml@greeneggs ~]$ who am i
saml     pts/1        2013-04-11 16:41 (:0.0)

Das letzte, was Sie noch verwirren könnte, ist das :0.0. So stellt X Windows die "Anzeige" dar, auf der sich ein Benutzer befindet. Die erste "0" gibt an, auf welchem ​​Monitor / Gerät Sie sich befinden, die zweite "0" gibt an, auf welchem ​​virtuellen Display Sie sich befinden.

Dies geht auf die Zeit zurück, als Computer teuer waren und möglicherweise mehrere Personen gleichzeitig an einem Computer arbeiteten. Ich würde mir keine Sorgen machen, denke nur daran, dass es entweder ": 0.0" oder möglicherweise ": 0" sein wird. Die Umgebungsvariable "DISPLAY" und der Befehl xhostverwenden den Wert ": 0.0".

Weitere Informationen zur Remote-Anzeige in Unix finden Sie hier .

whoami gegen who am i

Sind sie nicht dasselbe Kommando? Nein, sie sind unterschiedlich:

[saml@grinchy ~]$ ls -l /usr/bin/who /usr/bin/whoami
-rwxr-xr-x 1 root root 49432 Nov  3  2010 /usr/bin/who
-rwxr-xr-x 1 root root 26280 Nov  3  2010 /usr/bin/whoami

Auch ihre Ausgabe ist völlig anders; whoamizeigt Ihnen nur Ihre effektive Benutzer-ID, während who am iSie Verbindungsinformationen zu Ihrem Terminal anzeigen :

[saml@grinchy ~]$ who am i
saml     pts/0        2013-04-11 16:41 (:0.0)

[saml@grinchy ~]$ whoami
saml

Siehe die whoamiManpage hier .

slm
quelle
und auch wer ich bin ist dasselbe wie whoami.
Bagavadhar
4
Nein, lesen Sie die Manpage!
slm
1
Ein weiterer wichtiger Unterschied ist, dass die sudo whoamiAusgabe nicht übereinstimmt sudo who am i.
Ulidtko
5

Zitiert von hier .

pts steht für Pseudo Terminal Slave. Ein Terminal (oder eine Konsole) ist traditionell eine Tastatur / Bildschirm-Kombination, an der Sie sitzen und tippen. In alten UNIX-Boxen hingen Dutzende von ihnen von der Rückseite herab, die alle mit kilometerlangen Kabeln verbunden waren. Ein Pseudoterminal bietet nur ohne Hardware die gleiche Möglichkeit. Mit anderen Worten, es ist ein xterm-Fenster oder ein Konsolenfenster oder welches Dienstprogramm auch immer, das Sie verwenden. Sie tauchen auf, wenn Sie nach ihnen fragen, und erhalten fortlaufende Nummern: pts / 0 , dann pts / 1 und so weiter. Die physische Konsole ist die Hardware, die tatsächlich an Ihre Box angeschlossen ist - wahrscheinlich haben Sie nur eine. Das ist mit " : 0 " beschriftet und wird als die eigentliche "Konsole" bezeichnet.

superuser0
quelle
1
:0ist nur der Begriff für die "Konsole" in X.
depquid
0

Sie finden pts / 0 in der whoAusgabe aufgelistet, wenn eine Remote-Verbindung zu ssh besteht :

Ich bin einer und der einzige auf meiner Maschine:

$ who
me    :0           2015-02-02 14:06 (:0)
me    pts/7        2015-02-02 14:07 (:0)
me    pts/12       2015-02-02 14:07 (:0)

Ich bin von einem anderen Computer mit dem SSH-Server verbunden, daher habe ich das Remote-Terminal geöffnet:

$ who
me    :0           2015-02-02 14:06 (:0)
me    pts/7        2015-02-02 14:07 (:0)
me    pts/12       2015-02-02 14:07 (:0)
me    pts/0        2015-02-02 14:31 (x.server.something.com)
4pie0
quelle