有没有办法找到用户在 Ubuntu 11.10 Server 上运行的所有命令的日志?我需要找出我的朋友运行了什么来安装程序。
答案1
如果您使用类似 bash 之类的命令解释器,则可以检查历史记录。
more /home/user/.bash_history
答案2
遵循这些说明(修订自这个答案)。
修改
/etc/bash.bashrc
将以下行附加到该文件的末尾
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/[ ][0-9]+[ ]//" ) [$RETRN_VAL]"'
创建新文件
/etc/rsyslog.d/bash.conf
将以下行添加到文件中
local6.* /var/log/commands.log
向文件中添加行
/etc/logrotate.d/rsyslog
。附近:
/var/log/mail.warn /var/log/mail.err [...] /var/log/message
添加
/var/log/commands.log
重新启动 rsyslog。
sudo service rsyslog restart