Who linux что это

Команда WHO в операционной системе Linux

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

В этой статье мы расскажем все о команде who в Linux, а так же рассмотрим дополнительные опции.

Как использовать команду WHO

Синтаксис команды who:

Откройте терминал с помощью клавиш Ctrl + Alt + T, а затем введите:

Ответ в терминале:

root tty/0 Aug 7 23:50 (49.192.46.62)
tom pts/1 Aug 7 23:51 (49.192.46.62)

По умолчанию выходные данные who содержат пять столбцов.

  • 1 — й столбец показывает имя пользователя
  • 2-й столбец показывает, как пользователь подключился. Tty означает, что пользователь подключен непосредственно к компьютеру, в то время как pts означает, что пользователь подключен с удаленного
  • 3-й и 4-й столбцы показывают дату и время
  • 5-й столбец показывает IP-адрес, к которому подключены пользователи

команда who обнаруживает информацию из файла utmp, который находится в /var/run/utmp.

Примечание: команда who не будет перечислять пользователей, которые переключились с помощью команды su.

Дополнительные опции к команде Who

Команда who поставляется с несколькими полезными опциями, давайте их рассмотрим.

1. Показать время и дату последней перезагрузки системы, для этого используйте опцию -b.

Ответ терминала Linux:

2. Для отображение текущего уровня запуска системы init, используйте опцию -r.

3. Показать имена пользователей, которые в настоящее время вошли в систему и их количество. Для этого используйте опцию -q

4.Для добавления имен столбцов, используйте опцию -H

Ответ терминала Linux:

NAME LINE TIME COMMENT
root pts/0 Aug 7 23:50 (49.192.46.62)
tom pts/1 Aug 8 00:58 (49.192.46.62)

5. Показать информацию о времени простоя и PID каждого пользователя, вошедшего в систему

Ответ терминала Linux::

NAME LINE TIME IDLE PID COMMENT
root pts/0 Aug 7 23:50 . 3161 (49.192.46.62)
tom pts/1 Aug 8 00:58 00:35 4857 (49.192.46.62)

6. Чтобы показать процесс входа в систему, используйте опцию -l

Ответ терминала Linux::

NAME LINE TIME IDLE PID COMMENT
LOGIN ttyS0 Aug 7 20:56 825 > LOGIN tty1 Aug 7 20:56 828 >

7. Чтобы отобразить подробную информацию обо всех мертвых процессах, используйте опцию -d

8. Для отображения всей информации используйте опцию -a

Ответ терминала Linux::

system boot Aug 7 20:56
LOGIN ttyS0 Aug 7 20:56 825 > LOGIN tty1 Aug 7 20:56 828 > run-level 3 Aug 7 20:56
root — pts/0 Aug 7 23:50 . 3161 (49.192.46.62)
tom + pts/1 Aug 8 00:58 00:14 4857 (49.192.46.62)

Заключение

В этой статье мы показали как использовать команду who в Linux. Так же подробно рассказали, как использовать команду who и ее опции.

Источник

Команда who Linux

Команда who – настоящая палочка-выручалочка, благодаря которой так легко раздобыть всю необходимую информацию о пользователях, когда-либо работающих за конкретным компьютером. Так как операционная система Linux является многопользовательской, она отслеживает сеансы всех юзеров сети (кто работал за ПК, время старта и окончания его сеанса и прочее). Большинство пользователей операционной системы Linux отзываются об этом инструменте положительно. Он прекрасно показывает себя на практике.

Читайте также:  Как увеличить tx power kali linux

Синтаксис

  • -a — читает файл /etc/utmp, включает все основные опции;
  • -b — показывает дату и время загрузки операционной системы;
  • -d — показывает зомби-процессы.
  • -u — выводит активных пользователей.
  • -s — выводит имя, терминальную сессию и время, данный параметр используется по умолчанию;
  • -T — информация о терминальной сессии;
  • -q — количество пользователей в системе в данный момент;
  • -r — показывает уровень процесса init.

Обычно для выполнения команды who берется информация файла: «/etc/utmp».

Альтернативные файлы: «/etc/wtmp» и «/etc/inittab».

Примеры

Если не использовать опции и аргументы, на экране появятся данные по умолчанию, включающие в себя информацию об учетных записях (тех, кто подключен к системе). Чтобы ознакомиться с данными о пользователе, который изъявил желание обратиться к терминалу прямо сейчас («спросить» у системы о самом себе), необходимо использовать команду «who am i».

Для получения обширной информации о подключенных пользователей достаточно ввести команду в виде:

Каких-либо дополнительных указаний в этом случае не потребуется. Если использовать исключительно «who», данных будет сравнительно меньше. Детализировать этот запрос или нет – решать только вам. Смотрите по ситуации.

Время загрузки системы можно посмотреть по команде:

Впишите её в терминале и ознакомьтесь с результатами запроса.

Чтобы посмотреть «runinit» (текущий уровень запуска), впишите в команду соответствующую опцию. Это будет выглядеть так:

Опция -s не имеет особого смысла, поскольку она провоцирует вывод таких стандартных значений, как «Имя пользователя», «терминальная линия», «время начала/окончания сеанса». Эта информация доступна и без добавления каких-либо опций. Едем дальше.

С помощью аргумента -T можно узнать состояние терминальной сессии. На практике это выглядит следующим образом:

Для чего нужна информация о состоянии терминальной сессии? От её состояния зависят некоторые нюансы в работе пользователя. Обратите внимание на название любой сессии, отображенной в окошке терминала. Если рядом с ним указан значок «+», значит, пользователь может получать сообщения от других терминалов. Если такой возможности нет, рядом с названием сессии будет указан значок «-».

При неисправности линии появится вопросительный знак.

При необходимости узнать, сколько пользователей подключено к системе, вводится:

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

При добавлении опции -d отображаются зомби-процессы:

Важное примечание: при использовании опции -d нельзя увидеть поле EXIT в окне терминала. Оно появляется лишь при добавлении опции -а.

Заключение

Основная задача утилиты who заключается в получении информации о пользователях, подключенных к системе. Вторичная задача – сбор данных о терминальных сессиях, благодаря которым и происходит их подключение.

Благодаря выше предоставленным примерам команд вы тоже можете ощутить простоту отслеживания данных о user системы. Всего несколько нажатий клавиш – и ответы на вопросы найдены.

Источник

Who linux что это

Наши партнеры

Библиотека сайта rus-linux.net

НАЗВАНИЕ
who — кто в системе?

ОПИСАНИЕ
Команда who сообщает имя пользователя, имя терминальной линии, астрономическое время начала сеанса, продолжительность бездействия терминальной линии с момента последнего обмена, идентификатор процесса интерпретатора команд shell для каждого из пользователей, работающих в системе UNIX. Для получения этой информации команда просматривает файл /etc/utmp. Впрочем, вместо него может просматриваться другой файл, имя которого должно быть тогда указано в командной строке (файл должен иметь формат utmp[4]). Обычно в качестве файла указывают /etc/wtmp, где зафиксированы времена начала всех сеансов с момента его последнего создания.

Читайте также:  Fusion 360 windows 10 32 bit

Команда who с опциями am i или am I идентифицирует обратившегося с ней пользователя.

Выдаваемые сообщения имеют, вообще говоря, следующий формат:

Информация NAME, LINE и TIME выдается при всех опциях, кроме -q; STATE — только при -T; IDLE и PID — только при -u и -l; и, наконец, COMMENT и EXIT — только при -a. Какая информация выдается в случае опций -p, -d и -r, подробно объясняется для каждой из них отдельно.

Задавая различные опции, с помощью команды who можно получить информацию о времени начала и конца сеансов, перезагрузок, корректировках системных часов, а также о других процессах, порожденных процессом init. Опции эти таковы:

-u Выдать информацию только о тех пользователях, которые в настоящий момент работают в системе. NAME — это входное имя пользователя. LINE — имя терминальной линии, под которым она фигурирует в каталоге /dev. TIME — астрономическое время начала сеанса. IDLE — количество часов и минут, протекших с последнего момента активизации данной линии. Точка (.) свидетельствует о том, что данный терминал находился в активном состоянии не более минуты тому назад, то есть о том, что это действующий терминал. Если с тех пор прошло более 24 часов или если линия не была использована с момента загрузки, то сообщение маркируется как старое (old). Это поле оказывается полезным при попытке определить, работает ли кто-нибудь за терминалом. PID — идентификатор процесса интерпретатора shell, обслуживающего данного пользователя. COMMENT — комментарий характеризующий данную линию; берется из соответствующего поля файла /etc/inittab. Этот файл может содержать, например, сведения о местоположении терминала, телефонном номере комнаты или о типе физического терминала.
-T Эта опция аналогична опции -s с той разницей, что дополнительно выводится информация о состоянии терминальной линии (в позиции STATE). Здесь под состоянием имеется в виду возможность передавать сообщения на этот терминал со стороны кого-либо другого. Терминалу, на который передавать сообщения может любой, отвечает состояние «+»; если это не так — состояние «-«. Пользователь root может передавать сообщения во все линии, которым отвечает состояние «+» или «-«. При обнаружении неисправной линии печатается «?».
-l Перечислить только те линии, на которых система ожидает входа в нее какого-либо пользователя. Поле NAME в таких случаях содержит слово LOGIN. Другие поля имеют такой же смысл, как и в сообщении о пользователе, с той разницей, что не существует поля STATE.
-H При этой опции над обычными сообщениями печатаются названия столбцов.
-q Реализует быстрый вариант команды who, отображающей только имена и количество пользователей, работающих в настоящий момент в системе. При этой опции все прочие игнорируются.
-p Перечисляет все другие процессы, активные в настоящий момент, которые были порождены процессом init. Поле NAME содержит название программы, исполняемой процессом init, которое берется из файла /etc/inittab. Поля STATE, LINE, IDLE смысла не имеют. В поле COMMENT отображается поле идентификатора из строки файла /etc/inittab, вызвавшей порождение этого процесса.
-d Выдать информацию о всех процессах, которые прекратили существование и не были заново порождены процессом init. У мертвых процессов появляется поле EXIT, которое содержит значения системного и пользовательского кодов завершения. Это может оказаться полезным при выяснении причин аварийного окончания процесса.
-b Выдать время и дату последней загрузки системы.
-r Выдать текущий уровень выполнения процесса init. Кроме этого, будут выданы идентификатор процесса, системный код завершения и пользовательский код завершения процесса.
-t Выдать информацию о последней корректировке системных часов [посредством команды date] пользователем root.
-a Обрабатывать файл /etc/utmp или файл, указанный в команде, считая все опции (кроме THqs) включенными.
-s Выдавать только поля NAME, LINE и TIME; это опция, принимаемая по умолчанию.

СЮРПРИЗЫ
При использовании опции -d поле EXIT не выдается; появляется только при опции -a.

Если длина входного имени пользователя превышает 7 символов, команда who am i не работает.

Источник

Команда who в Linux

В этой статье мы объясняем команду who которая входит в пакет GNU coreutils.

who — это утилита командной строки, которая выводит список пользователей, вошедших в систему. Он также может отображать текущий уровень выполнения, время последней загрузки системы и многое другое.

Как использовать команду who

Базовый синтаксис команды who следующий:

При вызове без какой-либо опции или аргумента вывод выглядит примерно так:

who выведет форматированный список всех пользователей, которые в настоящее время вошли в систему.

Каждая строка содержит четыре поля, разделенных одним или несколькими пробелами:

  • Имя зарегистрированного пользователя.
  • Терминал пользователя.
  • Время, когда пользователь вошел в систему.
  • Имя хоста или IP-адрес, с которого пользователь вошел в систему. Чтобы принудительно —ips Ips, используйте параметр —ips .

Если вы хотите распечатать заголовки столбцов, добавьте параметр -H ( —heading ):

Команда извлекает информацию о системе и о том, кто вошел в систему, из файла /var/run/utmp . Если вы хотите использовать другой файл, передайте команде путь к файлу.

who принимает два аргумента, не являющихся опциями. При вызове с двумя аргументами команда выводит информацию только о терминале, связанном с текущим пользователем. Тот же вывод отображается при использовании опции -m .

Вы можете использовать любые два аргумента:

Каждая из вышеперечисленных команд выводит одну и ту же информацию:

Параметры команды who

who принимает несколько вариантов, которые обычно используются редко.

Параметр -b , —boot указывает, who печатать время последней загрузки системы:

Чтобы получить список всех мертвых процессов, используйте параметр -d , —dead :

Параметр -r , —runlevel указывает, who показывать текущий уровень выполнения:

Чтобы получить только имена пользователей и количество пользователей, вошедших в систему в данный момент, используйте параметр -q , —count :

Опция -a , —all заставляет who печатать всю информацию:

Выводы

Команда who выводит список всех пользователей, вошедших в систему в данный момент.

Чтобы получить дополнительную информацию о пользователях, которые в данный момент вошли в систему, проверьте команду w .

Если у вас есть вопросы, оставьте комментарий ниже.

Источник

Читайте также:  Складской учет для linux
Оцените статью