Про команду "хто" та її вихід на '14 .04 TrustyTahr '


9

У мене є питання, яке виникло у мене після переходу на 14.04 TrustyTahr з 12.04 PrecisionPangolin. Питання стосується команди "хто" та її результату. У попередніх випусках Ubuntu команда who читала б, які tty використовувались для входу та ініціювання системи та lightdm, наприклад:

:~$ who
geo      tty7     thedate (:0)
geo      pts/n    thedate (:0.0)

Але 14.04 TrustyTahr, коли я запускаю той, хто командує моїм результатом, дає результат:

:~$ who
geo      :0       thedate (:0)
geo      pts/n    thedate (:0.0)

В обох виданнях передача vt7 відбувається в / boot, а на TrustyTahr мій змінник XDG_VTNR становить 7, коли я входжу через lightdm; але tty7, ні vt7 не друкується у файл utmp. Це роздратувало мене місяцями, я нарешті написав програму c ++, яка включає функцію popen, як доповнення до команди хто для того, щоб команда хто показала поточний XDG_VTNR з коефіцієнтом tty, наприклад:

geo      tty7         2015-06-04 20:54 (:0)
geo      pts/0        2015-06-04 20:54 (:0.0)

Тим не менш, чому це змінилося? А також мій єдиний подібний, тому що я завантажив це приблизно в травні минулого року, і, можливо, я отримав двоярусне ізо або щось подібне, кожного разу, коли я запускаю хто командує це змушує мене думати про цю пісню Beastie Boys: Sabotage (jk це не погано).


Я 14.04. Просто зараз я пішов до tty1 і побіг startx $(which gnome-shell). Вихід whoповідомлених tty1 і: 0. Я думаю, що у вашої конкретної машини виникає якась помилка
Сергій Колодяжний

оновіть питання на $ who --version
j0h

Відповіді:


2

Спробуйте оновити пакет, що містить whoкоманду; навіть якщо ви використовували дивну версію ISO для встановлення, оновлення має замінити її:

Дізнайтеся, яким пакетом належить who:

which who    # find out where 'who' binary is
dpkg -S /path/to/who

Тоді:

apt-get update
apt-get install <package name from dpkg -S command>

Якщо вона все ще не працює, спробуйте іншу оболонку без середовища (щоб позбутися від будь-яких непростих змінних середовищ, налаштувань, специфічних для bash сміття тощо):

env -i /bin/dash
$ who

Якщо вона працює в голій оболонці, то проблема, ймовірно, є дивним визначенням псевдоніму в bashrc або щось подібне.

Також who --allпрацює?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.