1.在/etc/profile中添加如下代碼:
- #history
- USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
- HISTDIR=/usr/share/.history
- if [ -z $USER_IP ]
- then
- USER_IP=`hostname`
- fi
- if [ ! -d $HISTDIR ]
- then
- mkdir -p $HISTDIR
- chmod 777 $HISTDIR
- fi
- if [ ! -d $HISTDIR/${LOGNAME} ]
- then
- mkdir -p $HISTDIR/${LOGNAME}
- chmod 300 $HISTDIR/${LOGNAME}
- fi
- export HISTSIZE=4000
- DT=`date +%Y%m%d_%H%M%S`
- export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.history.$DT"
- export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S]"
- chmod 600 $HISTDIR/${LOGNAME}/*.history* 2>/dev/null
2.在/etc/bashrc中添加如下代碼:
- #history
- USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
- HISTFILESIZE=4000
- HISTSIZE=4000
- HISTTIMEFORMAT="%F %T ${USER_IP} `whoami` "
- export HISTTIMEFORMAT
最終效果:
這段腳本的作用是把每個用戶執行的命令記錄在/usr/share/.history下以用戶名命名的目錄下,歷史記錄文件名根據用戶ip和時間命名。打開/usr/share/.history目錄會發現里邊保存了之前記錄的歷史命令文件