리눅스 계정 자동 백업 스크립트 입니다.

안녕하세요? WEBPD.NET 서버운영팀입니다.

웹파일 로컬 자동 백업을 위한 스크립트 입니다.

기능 : 모든 계정별 백업, 백업 데이터 3일치 보관 (3일 지난 데이터는 자동 삭제)

 

crontab에서 아래와 같이 설정해주시면 됩니다.

30 5 * * * /etc/cron.d/db.sh ## 매일 새벽 5시 30분 백업 실행

 

 

vi db.sh

 

#!/bin/bash

 

export Today="`date '+%y-%m-%d'`"

backup_dir="/backup/"

backup_day="3"

 

dirlists=`/bin/ls -t $backup_dir 2>/dev/null`

i=1

for dir in $dirlists ; do

  if [ "$i" -ge $backup_day ] ; then

    /bin/rm -rf "$backup_dir/$dir"

  fi

  i=$(($i+1))

done

 

if [ ! -d "${backup_dir}/${Today}" ]

then

/bin/mkdir -p ${backup_dir}/$Today

/bin/mkdir -p ${backup_dir}/$Today/homedir

 

fi

 

dirlists=`/bin/ls -t /home 2>/dev/null`

for dir in $dirlists ; do

  tar cvfpz ${backup_dir}/$Today/homedir/$dir.tar.gz /home/$dir 

done

 

rm -rf ${backup_dir}/today

ln -s ${backup_dir}/$Today /${backup_dir}/today

 

감사합니다.

 

 
이 답변이 도움이 되었습니까? 1 명의 사용자가 추천했습니다. (1 추천)