Linux 配置 history 命令显示操作时间、用户和登录 IP

阿豪运维笔记 2020-04-22 952阅读

温馨提示:这篇文章已超过802天没有更新,请注意相关的内容是否还可用!

history是一个很重要的命令,它能显示出之前在shell中执行过的命令,如果服务器发生异常,可以从这些命令中分析造成问题的原因。但是history显示的信息有局限性,默认保存最近的1000条命令,从历史信息中只能看到某个命令的执行有可能导致系统出了问题,对于进一步的追踪问题却无济于事。若能定位到是哪个用户在哪个时间在哪执行的命令,那么咨询对方看看操作了什么,排查起问题就很快,具体配置操作如下

需要在 /etc/profile 文件中添加如下配置:

HISTFILESIZE=4000 
#默认保存命令是1000条,这里修改为4000条
HISTSIZE=4000
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'` #取得登录客户端的IP
if [ -z $USER_IP ]
then
USER_IP=`hostname`
fi
HISTTIMEFORMAT="%F %T $USER_IP:`whoami` " #设置新的显示history的格式
export HISTTIMEFORMAT

保存完之后,执行 source /etc/profile 使配置生效。

最终显示效果如下:

image.png

若文章图片、下载链接等信息出错,请联系反馈,博主将第一时间更新!如果喜欢本站,请打赏支持本站,谢谢!
文章版权声明:除非注明,否则均为阿豪运维笔记原创文章,转载或复制请以超链接形式并注明出处。

目录[+]

取消
微信二维码
微信二维码
支付宝二维码