Linux下跟踪记录每个用户对主机服务器进行的操作

USER_IP=`who -u am i 2>/dev/null| awk ‘{print $NF}’|sed -e ‘s/[()]//g’`

if [ “$USER_IP” = “” ]

then

USER_IP=`hostname`

fi

if [ ! -d /tmp/operation ]

then

mkdir /tmp/operation

chmod 777 /tmp/operation

fi

if [ ! -d /tmp/operation/${LOGNAME} ]

then

mkdir /tmp/operation/${LOGNAME}

chmod 700 /tmp/operation/${LOGNAME}

fi

export HISTSIZE=4096

DT=`date +%Y%m%d`

# file=`find /tmp/operation/${LOGNAME}/ |awk ‘/’$DT’$/’`

file=/tmp/operation/${LOGNAME}/${USER_IP}-susworld.$DT

if [ -e “$file” ]

then

export HISTFILE=”/tmp/operation/${LOGNAME}/${USER_IP}-susworld.$DT.tmp”

tmpfile=/tmp/operation/${LOGNAME}/${USER_IP}-susworld.$DT.tmp

if [ -e “$tmpfile” ]

then

cat /tmp/operation/${LOGNAME}/${USER_IP}-susworld.$DT.tmp >> $file

fi

else

export HISTFILE=”/tmp/operation/${LOGNAME}/${USER_IP}-susworld.$DT”

fi

rm -f /tmp/operation/${LOGNAME}/${USER_IP}-susworld.$DT.tmp

chmod 600 /tmp/operation/${LOGNAME}/*susworld* 2>/dev/null

该脚本将记录凡用户登陆后进行的任何操作,并生成对应用户当日的操作日志共日后查询。

如有更优化脚本,望指教。

附上方便查询历史操作的shell:

配合此shell,使用起来更加方便。

这两个shell均本人所写,如有建议,希望交流。

,始终调整好自己观风景的心态,

Linux下跟踪记录每个用户对主机服务器进行的操作

相关文章:

你感兴趣的文章:

标签云: