Linux Bash History 命令历史记录

此处网址,有详细介绍标准情况下, bash命令历史记录的传统修改方式。

下面文章,介绍了更符合实际需要的处理方法:

1. 在/etc/bashrc文件末尾内添加内容:
不同版本Linux,该文件名不同,视实际情况来:
 - RHEL :  /etc/bashrc
 - Ubuntu: /etc/bash.bashrc

export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) $SSH_CONNECTION [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'

    

2. 修改rsyslog设定,新增/etc/rsyslog.d/bash.conf,定义类别为local6的日志文件名    
    local6.debug    /var/log/commands.log
    
3. 修改rsyslog设定,避免bash history日志重复记录到系统日志文件内
 - RHEL:     *.info;mail.none;authpriv.none;cron.none,local6.none              /var/log/messages
 - Ubuntu:    *.*;auth,authpriv.none,local6.none      -/var/log/syslog

 
4. 定义日志转储, 在/etc/logrotate.d/syslog内,仿照已有格式,添加一行: 
不同版本Linux,该文件名不同,视实际情况来:
 - RHEL :  /etc/logrotate.d/syslog
 - Ubuntu: /etc/logrotate.d/rsyslog

    /var/log/commands.log

5. 重启rsyslog
    systemctl restart rsyslog

6. 重新登录账号后,查看日志 tail /var/log/commands.log
Apr 18 10:32:42 RHEL7macj root: root [2190]: what ?  [127]
Apr 18 10:32:50 RHEL7macj root: root [2190]: ll /var/log/commands.log  [0]
Apr 18 10:32:52 RHEL7macj root: root [2190]: cat /var/log/commands.log  [0]

 

转载于:https://my.oschina.net/u/3362827/blog/1797376

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值