Коли я набираю команду:
[root@degeneration Desktop]# who am i
root pts/0 2013-04-12 15:08 (:0.0)
Що таке pts / 0 і що розуміється під (: 0,0)?
Коли я набираю команду:
[root@degeneration Desktop]# who am i
root pts/0 2013-04-12 15:08 (:0.0)
Що таке pts / 0 і що розуміється під (: 0,0)?
Відповіді:
Повідомляє pts/0
вам, на якому "псевдотерміналі" користувач увійшов у систему. У цьому випадку це термінал №0. "(: 0.0)" вказує, яке ім'я хоста та відображення ви використовуєте.
who am i
є псевдонімом команди who -m
. Дивіться сторінку чоловіка для кого . Про who
команду ви також можете прочитати тут .
Вихід, безумовно, може бути заплутаним для початківців Unix.
-m
саме, щоam 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)
[sam@munger ~]$ who am i
sam pts/0 2013-04-12 07:19 (192.168.1.7)
[saml@greeneggs ~]$ who am i
saml pts/1 2013-04-11 16:41 (:0.0)
Останній біт, який все ще може вас бентежити, - це :0.0
. Ось так X Windows являє собою "дисплей", на якому знаходиться користувач. Перший "0" говорить про те, на якому моніторі / пристрої ви ввімкнено, а другий "0" - на якому віртуальному дисплеї ви перебуваєте.
Це повертається до тих часів, коли комп’ютери були дорогими, і тому багато людей могли працювати на одному комп’ютері одночасно. Я б не хвилювався з цього приводу, просто пам’ятайте, що це або буде «: 0,0», або, можливо, «: 0». Змінна середовища "DISPLAY" та команда xhost
використовують значення ": 0.0".
Детальніше про віддалене відображення в Unix ви можете прочитати тут .
whoami
vs. who am i
Хіба вони не одна і та ж команда? Ні вони не відрізняються:
[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
Також їх вихід абсолютно інший; whoami
просто показує ваш ефективний userid, а також who am i
показує інформацію про з'єднання вашого терміналу:
[saml@grinchy ~]$ who am i
saml pts/0 2013-04-11 16:41 (:0.0)
[saml@grinchy ~]$ whoami
saml
Дивіться сторінку whoami
людини тут .
sudo whoami
вихід не буде відповідати sudo who am i
.
Цитуючи звідси .
pts означає псевдотермінальний раб. Термінал (або консоль) - це традиційно комбінація клавіатури / екрана, за якою ви сидите і набираєте. У старих коробках UNIX було б десятки з них, які висіли ззаду, всі пов'язані з милями кабелю. Псевдотермінал забезпечує таке ж обладнання лише без обладнання. Іншими словами, це вікно xterm або вікно konsole або будь-яку іншу утиліту, яку ви використовуєте. Вони спливають у життя, коли ви просите їх, і отримуєте задані порядкові числа: pts / 0 , тоді pts / 1 тощо. Фізична консоль - це обладнання, яке фактично прикріплено до коробки - у вас, ймовірно, є лише один. Це позначено " : 0 " і називається фактичною "консоллю".
:0
є лише терміном для "консолі" X.
Ви знайдете pts / 0, вказані у who
вихідних даних, якщо є віддалене з'єднання до ssh :
Я один і єдиний на своїй машині:
$ 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)
Я підключений від іншої машини до ssh-сервера, тому я відкрив віддалений термінал:
$ 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)