Команда last в Linux

Если вы управляете многопользовательской системой, вам часто нужно знать, кто, когда и откуда вошел в систему.

last — это утилита командной строки, которая отображает информацию о последних сеансах входа в систему пользователей системы. Это очень полезно, когда вам нужно отслеживать активность пользователей или расследовать возможное нарушение безопасности.

В этой статье объясняется, как проверить, кто вошел в систему с помощью last команды.

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

Синтаксис last команды следующий:

last [OPTIONS] [USER] [<TTY>...]

Каждый раз, когда пользователь входит в систему, запись для этого сеанса записывается в файл /var/log/wtmp . last читает файл wtmp и печатает информацию о логинах и выходах пользователей. Записи печатаются в обратном временном порядке, начиная с самых последних.

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

mark     pts/0        10.10.0.7   Fri Feb 21 21:23   still logged in
mark     pts/0        10.10.0.7   Tue Feb 18 22:34 - 00:05  (01:31)
lisa     :0           :0          Thu Feb 13 09:19   gone - no logout
reboot   system boot  4.15.0-74-g Fri Jan 24 08:03 - 08:03  (00:00)
...

Каждая строка вывода содержит следующие столбцы слева направо:

  • Имя пользователя. Когда система перезагружается или выключается, last показывает reboot и shutdown специальных пользователей.
  • Терминал, на котором состоялся сеанс. :0 обычно означает, что пользователь входил в среду рабочего стола.
  • IP-адрес или имя хоста, с которого пользователь вошел в систему.
  • Время начала и окончания сеанса.
  • Продолжительность сеанса. Если сеанс все еще активен или пользователь не вышел из системы, последний будет отображать информацию об этом вместо продолжительности.

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

last marklast pts/0

Вы также можете указать несколько имен пользователей и ttys в качестве аргументов:

last mark root pts/0

last параметры команды

last принимает несколько параметров, которые позволяют ограничивать, форматировать и фильтровать вывод. В этом разделе мы рассмотрим наиболее распространенные.

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

last -10

С помощью опции -p ( --present ) вы можете узнать, кто вошел в систему в определенный день.

last -p 2020-01-15

Используйте --since -s ( --since ) и -t ( --until ), чтобы указать last отображать строки с или до указанного времени. Эти две опции часто используются вместе для определения временного интервала, в течение которого вы хотите получить информацию. Например, чтобы отобразить записи входа с 13 по 18 февраля, вы должны запустить:

last -s 2020-02-13 -u 2020-02-18

Время, передаваемое параметрам -p , -s и -t , можно указать в следующих форматах:

YYYYMMDDhhmmss
YYYY-MM-DD hh:mm:ss
YYYY-MM-DD hh:mm     (seconds will be set to 00)
YYYY-MM-DD           (time will be set to 00:00:00)
hh:mm:ss             (date will be set to today)
hh:mm                (date will be set to today, seconds to 00)
now
yesterday            (time is set to 00:00:00)
today                (time is set to 00:00:00)
tomorrow             (time is set to 00:00:00)
+5min
-5days

По умолчанию в last не отображаются секунды и год. Используйте параметр -F , --fulltimes чтобы просмотреть полное время и даты входа и выхода:

last -F

Опция -i ( --ip ) заставляет last всегда показывать IP-адрес, а --dns -d ( --dns ) показывает --dns хостов:

last -i

Выводы

last команда выводит информацию о времени входа и выхода пользователей. Для получения дополнительной информации о команде введите в терминале man last .

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

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