A

ncftp 를 이용한 백업 스크립트

ncftp 를 이용한 백업 스크립트

ncftp를 이용한 백업 스크립트입니다.
스크립트에 원격삭제도 추가하면 더좋겠죠?


# vi /root/backup.sh

#!/bin/bash

#### 공통설정
export Today="`date '+%y-%m-%d'`"
backup_dir="/home/file/backup"
backup_day="1" # 보관일(1일)

#### 디비설정
DB_user="root";
DB_pass="비밀번호";


#### 원격설정
FTP_addr="접속아이피";
FTP_user="아이디";
FTP_pass="비밀번호";


########### 오래된 백업데이터 삭제
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
/bin/mkdir -p ${backup_dir}/$Today/databass
/bin/mkdir -p ${backup_dir}/$Today/system
fi

####### databass를 사용자별로 백업을 한다.
for database in `mysqlshow -u ${DB_user} -p${DB_pass} | awk -F" " '{ print $2 }' | grep -v "^$" |grep -v "Databases"` ; do
  mysqldump -u ${DB_user} -p${DB_pass}  "${database}" ${table} > ${backup_dir}/${Today}/databass/${database}.sql
done

####### 시스템 디렉토리를 백업한다
tar cvfpz ${backup_dir}/$Today/system/usr.local.tar.gz /usr/local
tar cvfpz ${backup_dir}/$Today/system/etc.tar.gz /etc
tar cvfpz ${backup_dir}/$Today/system/var.named.tar.gz /var/named

####### home 디렉토리에 사용자별로 백업을 한다.
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

####### 원격 데이타백업을 시작한다.
ncftp -u${FTP_user} -p${FTP_pass} ${FTP_addr} << ./backup
put -R ${backup_dir}/$Today
bye

 

* 파일 경로 주의하시고 이메일주소 변경해서 사용하세요.

 

# crontab -e

05 00 * * * '/usr/bin/rdate -s time.bora.net && /sbin/clock -w'
00 04 * * * su - root -c '/root/backup.sh | mail -s "시스템 백업 결과보고" test@abc.com';

[이 게시물은 관리자님에 의해 2011-10-31 17:32:05 Linux에서 이동 됨]
|

댓글 2개

감사합니다
백업 유용한 팁 정말 좋네요
자동 백업 작업을 구축하는데, 큰 도움이 되겠습니다.
잘 쓰겠습니다.
감사합니다.
댓글을 작성하시려면 로그인이 필요합니다. 로그인

프로그램

+
제목 글쓴이 날짜 조회
17년 전 조회 2,356
17년 전 조회 1,406
17년 전 조회 2,524
17년 전 조회 2,208
17년 전 조회 2,970
17년 전 조회 2,480
17년 전 조회 1,640
17년 전 조회 2,434
17년 전 조회 1,590
17년 전 조회 1,178
17년 전 조회 2,238
17년 전 조회 2,884
17년 전 조회 4,060
17년 전 조회 3,148
17년 전 조회 1,416
17년 전 조회 1,706
17년 전 조회 2,246
17년 전 조회 1,549
17년 전 조회 1,726
17년 전 조회 2,717
17년 전 조회 2,143
17년 전 조회 1,795
17년 전 조회 4,201
17년 전 조회 3,047
17년 전 조회 1,442
17년 전 조회 3,572
17년 전 조회 2,800
17년 전 조회 2,078
17년 전 조회 1,298
17년 전 조회 2,335
17년 전 조회 2,070
17년 전 조회 1,983
17년 전 조회 1,926
17년 전 조회 1,178
17년 전 조회 1,883
17년 전 조회 2,936
17년 전 조회 1,437
17년 전 조회 1,676
17년 전 조회 1,358
17년 전 조회 1,605
17년 전 조회 1,581
17년 전 조회 1,453
17년 전 조회 2,565
17년 전 조회 2,330
17년 전 조회 2,108
17년 전 조회 1,417
17년 전 조회 2,433
17년 전 조회 4,254
17년 전 조회 2,740
17년 전 조회 1,664
17년 전 조회 1,858
17년 전 조회 3,235
17년 전 조회 2,236
17년 전 조회 3,832
17년 전 조회 1,682
17년 전 조회 2,275
17년 전 조회 2,103
17년 전 조회 1,621
17년 전 조회 2,134
17년 전 조회 1,931
17년 전 조회 1,969
17년 전 조회 3,078
17년 전 조회 2,153
17년 전 조회 1,444
17년 전 조회 1,466
17년 전 조회 2,128
17년 전 조회 3,206
17년 전 조회 2,144
17년 전 조회 1,537
17년 전 조회 4,239
17년 전 조회 2,030
17년 전 조회 3,462
17년 전 조회 6,034
17년 전 조회 1,488
17년 전 조회 1,657
17년 전 조회 1,241
17년 전 조회 1,353
17년 전 조회 2,876
17년 전 조회 1,913
17년 전 조회 2,596
17년 전 조회 1,306
17년 전 조회 3,184
17년 전 조회 2,164
17년 전 조회 2,603
17년 전 조회 1,411
17년 전 조회 1,756
17년 전 조회 1,153
17년 전 조회 1,207
17년 전 조회 1,782
17년 전 조회 1,230
17년 전 조회 4,308
17년 전 조회 1,506
17년 전 조회 2,006
17년 전 조회 7,091
17년 전 조회 1,383
17년 전 조회 1,898
17년 전 조회 3,132
17년 전 조회 1,226
17년 전 조회 1,986
17년 전 조회 1,158
🐛 버그신고