Команда lastlog позволяет задействовать одноименную утилиту, предназначенную для получения информации о времени открытия последних пользовательских сессий. Утилита читает бинарный файл журнала /var/log/lastlog и выводит информацию о времени создания сессии каждым из пользователей системы, используемых для работы терминалах, а также некоторых других менее важных аспектах. Она может оказаться крайне полезной в случаях несанкционированного доступа к вашей системе.
Базовый синтаксис команды выглядит следующим образом:
$ lastlog [параметры]
Утилита поддерживает ограниченное количество параметров. Наиболее важными из них являются параметр -u, позволяющий задать имя интересующего пользователя и параметр -t, позволяющий указать интересующий интервал времени в днях. Параметр -t имеет приоритет по отношению к параметру -u. В том случае, если пользователем не было инициировано сессий (в том числе, в течение указанного промежутка времени), выводится соответствующее сообщение: «**Никогда не входил в систему**».
Для вывода информации о времени открытия последних пользовательских сессий достаточно использовать утилиту без каких-либо дополнительных параметров:
$ lastlog
Пользователь Порт С Последний раз
root **Никогда не входил в систему**
daemon **Никогда не входил в систему**
...
gnome-initial-setup **Никогда не входил в систему**
gdm **Никогда не входил в систему**
alex tty2 Пн ноя 2 15:45:36 +0300 2020
systemd-coredump **Никогда не входил в систему**
lxd **Никогда не входил в систему**
tcpdump **Никогда не входил в систему**
_flatpak **Никогда не входил в систему**
tss **Никогда не входил в систему**
root **Никогда не входил в систему**
nobody **Никогда не входил в систему**
В результате будет выведена информация о времени открытия последних пользовательских сессий для всех пользователей системы. Разумеется, в типичной системе присутствует достаточно большое количество системных пользовательских учетных записей, которые предназначены для системных служб и не используются для открытия пользовательских сессий.
Для указания интервала времени, пользовательские сессии из которого вас интересуют, следует использовать параметр -t. Например, посмотрим информацию о пользовательских сессиях, открытых вчера (используем значение 1, то есть один день назад):
$ lastlog -t 1
Так как со вчерашнего дня открытых пользовательских сессий не сохранилось, утилита ничего не выведет.
Для вывода информации о времени открытия сессии конкретного пользователя достаточно использовать параметр -u и указать после него имя интересующего пользователя:
$ lastlog -u alex
Пользователь Порт С Последний раз
alex tty2 Пн ноя 2 15:45:36 +0300 2020
В принципе, эту же информацию можно получить с помощью фильтра grep:
$ lastlog | grep alex
alex tty2 Пн ноя 2 15:45:36 +0300 2020
Но если утилита предоставляет готовый инструментарий, то грех им не пользоваться.