zoukankan      html  css  js  c++  java
  • 记录用户操作历史命令history

    我们知道可以使用history命令,查看自己的操作记录,但如果你是root用户,如何查看其它用户的操作记录呢?
     
    其实history命令只是把当前用户目录下的~/.bash_History文件内容列出来而已。

     1.第一种:配置/etc/bashrc

    一般而言,history展示的操作记录是没有时间的,可以在/etc/bashrc文件中加入下列代码:
    HISTFILESIZE=2000  # #设置保存历史命令的文件大小
    HISTSIZE=2000      ##保存历史命令条数
    HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S:"   ###记录每条历史命令的执行时间
    export HISTTIMEFORMAT
    注意:
    其中:
            %Y:4位数的年份;
            %m:2位数的月份数;
            %d:2位数的一个月中的日期数;
            %H:2位数的小时数(24小时制);
            %M:2位数的分钟数;
            %S:2位数的秒数

     2.第二种:配置脚本,放入/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"
    HISTTIMEFORMAT="`whoami`: | %F | %T: |${USER_IP}:" 
    chmod 600 $HISTDIR/${LOGNAME}/*.history* 2>/dev/nul

    脚本的作用是记录用户登陆后的操作,如果这个用户是root用户,会在/usr/share/.history/下创建用户名的文件夹,里面存放用户相关的历史命令记录。

    下面看下一个文件中的内容

    [root@iZ2ze2db4rp7b7weknjhneZ root]# cat 49.4.151.23.history.2018-03-08_12:25:10
    #1520483137
    cd /usr/share/.history/
    #1520483138      ###记录命令执行的时间戳,可通过相关软件转换
    ls
    #1520483139
    cd xin/
    #1520483140
    ls
    #1520483150
    cd ..
    #1520483151
    ls

    3.第三种:配置/etc/profile

    这种方法最简单,只需要在/etc/profile中加入下面一句话即可。

    #history
    USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
    HISTTIMEFORMAT="`whoami`: | %F | %T: |${USER_IP}:" 

    配置完,需要使用source /etc/profile使其生效。

    效果图如下:

  • 相关阅读:
    这个 bug 让我更加理解 Spring 单例了
    SpringBoot
    codeblocks笔记
    https://docs.platformio.org/en/latest/boards/index.html
    外部存储的烧写
    嵌入式AI
    python的一些库
    语音芯片及解决方案
    神奇的调试值“DEADBEEF”
    【12月】+我与rt_thread的“江湖恩怨”
  • 原文地址:https://www.cnblogs.com/dadonggg/p/8522907.html
Copyright © 2011-2022 走看看