티스토리 뷰

OS

로그 파일 압축 및 삭제 스크립트

빼인트 2017. 6. 19. 15:56

# 지정된 시간 이후 로그를 삭제 또는 압축하는 스크립트

bzip2 설치

$ sudo yum install bzip2

vi /home/paint/script/log_compression.sh

#!/bin/bash


# ====================================================

# 로그 파일 압축 및 삭제

# ----------------------------------------------------

# DELETE 에 지정된 일자가 되면 삭제

# COMPRESS 에 지정된 일자가 되면 압축. 압축은 bzip2 을 이용

# ====================================================


DELETE=365

COMPRESS=10

LOGS=(

"/home/paint/logs/"

"/home/paint/logs2/"

"/home/paint/logs3/"

)


for logdir in "${LOGS[@]}"; do

  if test -d $logdir

  then

    sudo find -L $logdir -name "*.bz2" -type f -mtime +${DELETE} | sudo xargs rm -f

    sudo find -L $logdir \( \( -name "*.log-*" -or -name "*.log.*" \) -and ! -name "*.bz2" \) -type f -mtime +${COMPRESS} | sudo xargs bzip2 -f

  fi

done


crontab 등록

매일 새벽 4시 30분에 수행되도록 한다.
$ crontab -e
30 4 * * * sh /home/paint/script/log_compression.sh


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함