解决问题:linux script 命令正有如此强大的功能。满足我们需求。script记录终端会话。 操作步骤:
在末尾添加: if [ $UID -ge 1000 ]; then exec /usr/bin/script -t 2>/mnt/log/script/$USER-$UID-`date +%Y%m%d%H%M`.date -a -f -q /mnt/log/script/$USER-$UID-`date +%Y%m%d%H%M`.log fi 这样用户登陆后执行的操作都会记录到/mnt/log/script/*.log(目录自己根据服务器目录定义)里,我们可以通过more或vi来进行查看。 我这里是把用户ID 大于1000的都记录下操作,你可以重新登录用户,操作一些命令,查看生成的文件。 另外,/mnt/log/script 目录需要其他用户有写的权限; chmod 743 /mnt/log/script
可以看到上图,对应的用户登录,会分别生成一个log和date为后缀的文件。log记录了操作,可以通过date文件 回放操作。通过scriptreplay 来回放 注意:先是 “时间文件”,然后是“命令文件”,不要颠倒。 以上,就完成了记录用户的所有操作记录。并且还有回放功能,像录像一样,非常方便查找问题。 转载请保留固定链接: https://linuxeye.com/Linux/2704.html |