Как я могу проверить историю команд пользователя в Unix?
Я знаю, что команда 'history' дает мне список команд, которые я набрал в терминале Unix.
Как просмотреть историю команд для всех пользователей, которые в данный момент вошли в систему?
2 ответа
Вы получаете список зарегистрированных в данный момент пользователей в /var/run/utmp
(увидеть man 5 utmp
). История хранится в ~/.history или для пользователя bash в ~/.bash_history. Другие оболочки могут использовать другие файлы истории, поэтому получить всю информацию не так просто.
Кроме того, если пользователь вошел в систему несколько раз, файл.bash_history не всегда надежен.
Читать utmp
файл есть "внешний интерфейс" под названием who
Таким образом, вы также можете написать shell-скрипт для итерации вошедших в систему пользователей.