linux纪录系统用户执行过的命令
2013-08-22 16:16
337 查看
在/etc/profile文件里添加:
设置普通用户写日志权限:
# chmod 777 /var/log/CommandHistory.log
定期清理脚本:
crontab设置每天执行一次,清理15天前的命令记录,备份前一天的命令记录
参考:
http://www.it165.net/os/html/201308/6011.html
export HISTSIZE=50000 export HISTORY_FILE=/var/log/CommandHistory.log export PROMPT_COMMAND='{ thisHistID=`history 1|awk "{print \\$1}"`;lastCommand=`history 1| awk "{\\$1=\"\" ;print}"`;user=`id -un`;whoStr=(`who -u am i`);realUser=${whoStr[0]};logMonth=${whoStr[2]};logDay=${whoStr[3]};pid=${whoStr[5]};ip=${whoStr[6]};if [ ${thisHistID}x != ${lastHistID}x ];then echo -E `date "+%Y/%m/%d %H:%M:%S"` $user\($realUser\)@$ip[Pid:$pid][LoginTime:$logMonth $logDay] ExecuteCommand: $lastCommand;fi; } >> $HISTORY_FILE'
设置普通用户写日志权限:
# chmod 777 /var/log/CommandHistory.log
定期清理脚本:
#!/bin/bash dt=`date +"%Y%m%d%H%M"` find /var/log/ -name "CommandHistory*.log" -mtime +15 -exec rm -f {} \; cat /var/log/CommandHistory.log >/var/log/CommandHistory$dt.log >/var/log/CommandHistory.log
crontab设置每天执行一次,清理15天前的命令记录,备份前一天的命令记录
参考:
http://www.it165.net/os/html/201308/6011.html
相关文章推荐
- jmap命令在linux系统执行不了问题解决
- 用日志记录Linux用户执行的每一条命令(history)
- Linux系统用户网络磁盘命令
- php执行linux系统命令的相关函数exec|system|popen
- linux 查看用户信息、系统日志信息等命令
- PHP执行linux系统命令
- linux记录系统中常用重要的log记录和用户的所有操作精确命令记录
- python2.7执行Linux系统命令
- PHP执行linux系统命令
- 已知/tmp目录下已经存在了test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖掉/tmp/test.txt,而让linux系统不提示是否覆盖(root权限下)
- lastb命令_Linux lastb 命令用法详解:列出登入系统失败的用户相关信息
- 解决找不到ifconfig命令,更改路径并重启系统后进入命令行界面以及各个命令无法执行Linux:-bash: ***: command not found
- Linux(7) 常用命令扩展 改变用户环境变量 (可以实现登陆就执行shell脚本)
- linux系统中命令执行的优先级以及命令格式
- Linux下应用程序中执行系统命令
- Linux操作系统里查看所有用户命令/查看系统命令
- PHP执行linux系统命令的几个基本函数
- Linux账号管理之第一篇:对用户进行管理(一般都是系统管理员进行的操作) useradd usermod passwd userdel chage finger chfn chsh id 等命令
- Linux系统用户与组管理命令及配置文件总结
- linux指定nologin用户执行命令