主要功能:

  可以记录哪个ip和时间(精确到秒)作了哪些命令

  通过用户登录时候,重新定义HISTFILE

  HISTFILE文件名包含登录用户名,ip,登录时间(精确到秒)等

  这样即使相同的用户从不同ip、在不同的时间登录都会被记录

  可以记录每条命令的开始执行时间

  把下面的代码直接粘贴到/etc/profile后面就可以了

  #history

  export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S]"

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

  HISTDIR=/var/log/.hist

  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=4096

  DT=`date %Y%m%d_%H%M%S`

  export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.hist.$DT"

  chmod 600 $HISTDIR/${LOGNAME}/*.hist* 2>/dev/null