Linux下清空用户登录记录和历史命令

清空用户登录记录:

  1. 清除成功登陆系统的记录,也就是last命令看到的记录,即/var/log/wtmp文件,此文件默认打开是乱码,只能看到ip等信息。

  2. 清除未成功登陆系统的记录,也就是lastb命令看到的记录,即/var/log/btmp文件,此文件打开也是乱码。


[root@iZbp1bjvditkx9yo0f0traZ  /root]
#last
root     pts/0        180.173.112.21   Wed Nov 23 16:40   still logged in   

wtmp begins Wed Nov 23 16:40:19 2016

[root@iZbp1bjvditkx9yo0f0traZ  /root]
#echo ''>/var/log/wtmp 

[root@iZbp1bjvditkx9yo0f0traZ  /root]
#last

wtmp begins Wed Nov 23 16:40:36 2016

[root@iZbp1bjvditkx9yo0f0traZ  /root]
#lastb 
root     tty1                          Fri Nov 11 12:39 - 12:39  (00:00)    
root     tty1                          Fri Nov 11 12:16 - 12:16  (00:00)    
         tty1                          Fri Nov 11 12:16 - 12:16  (00:00)    
root     tty1                          Fri Nov 11 12:16 - 12:16  (00:00)    
root     tty1                          Fri Nov 11 12:16 - 12:16  (00:00)    

btmp begins Fri Nov 11 12:16:19 2016

[root@iZbp1bjvditkx9yo0f0traZ  /root]
#echo ''>/var/log/btmp 

[root@iZbp1bjvditkx9yo0f0traZ  /root]
#lastb 

btmp begins Wed Nov 23 16:41:15 2016

清除历史命令的几种方法:

  1. 修改/etc/profile将HISTSIZE=1000改成0或1
  2. 清除用户home路径下的.bash_history echo ''>~/.bash_history
  3. 立即清空history当前历史命令的记录 history -c
  4. bash执行命令时不是马上把命令名称写入history文件,而是存放在内部的buffer中,等bash退出时会一并写入。可以调用history -w命令要求bash立即更新history文件