리눅스 자동백업 쉘 스크립트

서버 - 리눅스

리눅스 자동백업 쉘 스크립트

  0   

본문

백업의 중요성은 모두들 알고있지만 복잡한 과정과 시간적 여유때문에 자주 진행하지 못하게된다.

이때 자동백업되는 쉘 스크립트와 크론을 조합하여 세팅해두면 각종 오류, 해킹에 대비할 수 있다.

 

자동백업 쉘 스크립트 - home폴더 내 계정폴더별로 각각 자동백업

$ vi /root/backup.sh

 

 

#!/bin/sh

service portmap start

rdate -s time.bora.net

today=$(date +%y-%m-%d)

rmday=$(date +%y-%m-%d --date '10 days ago')

id='[아이디]'

passwd='[패스워드]'

cd /data/backup/

rm -rf $rmday

mkdir $today

cd /data/backup/$today

 

for x in $( ls -l /home/ | grep -v lost | grep ^d | awk '{print $9}')

        do

        tar czfp $x.tar.gz /home/$x/ 1> /dev/null

        done

mkdir mysql

cd /data/backup/$today/mysql

for x in $( ls -l /var/lib/mysql | grep ^d | awk '{print $9}')

        do

 mysqldump -u$id -p$passwd $x > $x.sql

        done

cd /data/backup/$today/

date >> list.txt

printf "\n\n[[Disk Used]]\t:\t" >> list.txt

du -ksh >> list.txt

printf "\n" >> list.txt

df -h >> list.txt

printf "\n\n[[Data List]]\n\n" >> list.txt

ls -alh >> list.txt

printf "\n\n[[MySQL List]]\n\n" >> list.txt

ls -alh mysql >> list.txt

cd /

 

 

cron 설정 - 매일 5시 자동실행

$ crontab -e 

 

crontab -e 실행시 에디터가 열리지 않을 경우 

$ EDITOR=vi

$ export EDITOR

$ crontab -e

 

백업 스크립트 삽입

0 5 * * * /root/backup.sh 

 

cron 재시작

$ /etc/init.d/cron restart

댓글목록

등록된 댓글이 없습니다.

리눅스 자동백업 쉘 스크립트

백업의 중요성은 모두들 알고있지만 복잡한 과정과 시간적 여유때문에 자주 진행하지 못하게된다.이때 자동백업되는 쉘 스크립트와 크론을 조합하여 세팅해두면 각종 오류, 해킹에 대비할 수 있다. 자동백업 쉘 스크립트 - home폴더 내 계정폴더별로 각각 자동백업$ vi /root/backup.sh   #!/bin/shservice portmap startrdate -s time.bora.nettoday=$(date +%y-%m-%d)rmday=$(date +%y-%m-%d --date '10 days ago')id='[아이디]'passwd='[패스워드]'cd /data/backup/rm -rf $rmdaymkdir $todaycd /data/backup/$today for x in $( ls -l /home/ | grep -v lost | grep ^d | awk '{print $9}')        do        tar czfp $x.tar.gz /home/$x/ 1> /dev/null        donemkdir mysqlcd /data/backup/$today/mysqlfor x in $( ls -l /var/lib/mysql | grep ^d | awk '{print $9}')        do mysqldump -u$id -p$passwd $x > $x.sql        donecd /data/backup/$today/date >> list.txtprintf "\n\n[[Disk Used]]\t:\t" >> list.txtdu -ksh >> list.txtprintf "\n" >> list.txtdf -h >> list.txtprintf "\n\n[[Data List]]\n\n" >> list.txtls -alh >> list.txtprintf "\n\n[[MySQL List]]\n\n" >> list.txtls -alh mysql >> list.txtcd /   cron 설정 - 매일 5시 자동실행$ crontab -e   crontab -e 실행시 에디터가 열리지 않을 경우 $ EDITOR=vi$ export EDITOR$ crontab -e  백업 스크립트 삽입0 5 * * * /root/backup.sh   cron 재시작$ /etc/init.d/cron restart


접속자집계

오늘
33
어제
90
전체
120075