Centos7定時清理系統各種日志腳本


注意:linux的系統日志存放目錄 /var/log/

進入root用戶:

su - root

創建腳本文件:

vim cleanLog.sh

增加執行權限:

chmod +x cleanLog.sh

按需添加或修改如下內容:

#!/bin/bash
echo "開始清除日志文件"
sed -i '1,50d' /var/log/cron #清除定時任務記錄
sed -i '1,50d' /var/log/xferlog #清除ftp記錄
sed -i '1,50' /var/log/mariadb/mariadb.log #清除數據庫日志
sed -i '1,50d' /var/log/secure #清除sshd信息
sed -i '1,50d' /var/log/firewalld
sed -i '1,50d' /var/log/httpd/access_log
sed -i '1,50d' /var/log/httpd/ssl_access_log
sed -i '1,50d' /var/log/httpd/ssl_error_log
sed -i '1,50d' /var/log/httpd/ssl_request_log
sed -i '1,50d' /var/log/messages #清除系統開機發生的錯誤
sed -i '1,50d' /var/log/tuned/tuned.log
sed -i '1,50d' /var/log/hawkey.log
sed -i '1,50d' /var/log/yum.log
sed -i '1,50d' /var/log/dnf.log
sed -i '1,50d' /var/log/dnf.rpm.log
sed -i '1,50d' /var/log/ntp.log
sed -i '1,50d' /var/log/audit/audit.log
history -c #清除歷史執行命令
echo > /var/log/wtmp  #清除系統登錄成功的記錄
echo > /var/log/btmp #清除系統登錄失敗的記錄
echo > /var/log/lastlog
rm -fr /var/log/boot.log-* /var/log/btmp-* /var/log/cron-* /var/log/maillog-* /var/log/messages-* /var/log/secure-* /var/log/spooler-* /var/log/xferlog-* /var/log/messages-* /var/log/multi-nic-util/*
rm -fr /var/log/httpd/access_log-* /var/log/httpd/error_log-* /var/log/httpd/ssl_access_log-* /var/log/httpd/ssl_error_log-* /var/log/httpd/ssl_request_log-*

注解:sed命令,清除前50行內容

 

echo命令清空日志內容

rm命令刪除后綴以日期命名的日志文件

注意:以上日志清理並沒有導致系統或者其他服務出錯,但是部分日志文件最好不要刪除,最好百度一下那個日志文件是用來干嘛的

設置定時任務:

crontab -e

設置每20天清理一次(日志清理太頻繁不方便以后按日志排錯)

0 0 */20 * * ./cleanLog.sh

保存退出

 

原文鏈接:https://www.idaobin.com/archives/335.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM