Главная >> Команды >> Команда who Linux

Команда who Linux

Название команды who Linux полностью отображает ее функциональность — она служит для получения информации о пользователях, которые подключены к системе, в том числе и об терминальных сессиях, через которые происходит подключение.

При выполнении команды используются данные из файла /etc/utmp, хотя можно прописать в терминале и другой файл (как правило, используют /etc/wtmp либо /etc/inittab).


Содержание статьи

Синтаксис who

Синтаксис этой команды достаточно прост и выглядит так:

who опции имя_файла аргументы

Вообще, можно использовать who без каких-либо опций или аргументов. В таком случае отобразится набор данных по умолчанию об учетных записях подключенных пользователей — имя пользователя, название пользовательского терминала, время подключения.

Также можно прописывать команду в виде who am i — тогда она будет идентифицировать конкретно того пользователя, который работает сейчас в терминале (аналогично опции -m).

Опции who

Используя различные опции, можно получать именно ту информацию, которая нужна здесь и сейчас:

  • -a (--all) — включает в себя все основные опции.
  • - b (--boot) — показывает время загрузки операционной системы.
  • -d (--dead) — выводит перечень зомби-процессов.
  • - H (--heading) — никак не влияет на получаемую информацию, зато добавляет колонкам заголовки и помогает понять что где находится.
  • -m — показать пользователя, который сейчас работает в терминале.
  • -r — вывести текущий уровень запуска (runinit);
  • -t — показать последнее изменение системных часов;
  • -s вывести только имя, терминальную сессию и время.
  • -q вывести количество авторизованных пользователей.
  • -T — данные о терминальной сессии.
  • -u — показать активных пользователей.
  • --ips — вместо названия хостов показывает ips.
  • --lookup — используется в сочетании с --ips, выводит данные, которые основываются на сохраненном IP, если он доступен, а не на названии хоста.

Примеры использования who

Используя опцию -a, мы получаем максимум данных, которыми команда готова снабдить нас без каких-либо дополнительных указаний. В состав этой опции входят опции -b, -d, --login, -p, -r, -t, -T, -u:

who -a

Этих данных больше, чем при простом использовании who:

Чтобы узнать только время загрузки системы, достаточно написать в терминале:

who --login

Нужно узнать текущий уровень запуска (runinit)? Для этого служит команда who в сочетании с опцией -r:

who -r

При использовании опции -s выводятся значения NAME, LINE и TIME — информация, идентичная той, что будет получена без использования каких-либо опций. Все то же самое, но уже с добавлением данных о состоянии терминальной сессии, показывает опция -T.

Состояние — это возможность принимать сообщения от других терминалов. Если рядом с названием терминальной линии стоит «+», как на скриншоте, значит, сообщения могут быть приняты от любого стороннего терминала, в противном случае значение примет вид «-». Если вместо плюса или минуса там находится вопросительный знак, то линия неисправна:

who -T

Не упоминается в мануале опция -q, тем не менее, она работает, выводя информацию о количестве пользователей в системе:

who -q

С помощью -u можно узнать информацию о тех пользователях, которые активны в данный момент:

who -u -H

На этом же скрине видны изменения, которые происходят при использовании опции -H — у колонок с данными появились заголовки.А вот и зомби-процессы, которые показывает опция -d:

who -d

Кстати, поле EXIT при использовании этой опции не выводится. Чтобы увидеть его, следует использовать -a.

Выводы

Команда who Linux — это интересный и полезный инструмент для пользователей Linux. С ее помощью можно узнать всю доступную информацию о пользователях, которые активны в системе сейчас или были активны раньше. Мы постарались как можно подробнее рассказать вам о правилах и нюансах использования who, однако, если у вас остались вопросы, задавайте их в комментариях.

Pеклама
Посмотреть детали

Anubis – это максимально легкое open-source решение, созданное специально для защиты небольших веб-ресурсов от бесконечного потока запросов от ботов и AI парсеров. Этот инструмент можно считать "ядерным вариантом", потому что он заставляет ботов выполнять вычисления похожие на майнинг криптовалюты. Но это неплохая альтернатива для тех, кто не может или не хочет использовать Cloudflare. Посмотреть детали

Creative Commons License
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

5 комментариев к “Команда who Linux”

    • Если кто-то подключится по ssh, то да утилита его увидит, если же будет использован какой нибудь шелл на том же python/perl/php, то очень вряд-ли.

      Ответить

Оставьте комментарий