웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
FTP 를 이용한 원격 백업 받기
2002.12.04 09:03
^^
김병철님 말씀대로 서버 2대에서 ftp로 백업 하는 방법을 생각해 보았습니다.
의외로 아주 쉽게 구현이 될것 같습니다.
이것도 cron의 개념은 있어야 합니다. 아래 강좌를 보시면 cron에 대한것이 있으니 먼저 찾아보시길..
1. 웹서버의 에서의 백업 스크립트 작성
백업스크립트를 작성한다. 나의 경우는 /root/ftp_backup.sh로 만들었다.
(왜냐면 기존에 사용하던 backup.sh이 있으니깐 ^^, 그리고 ftp로 한다는것을 알기 위해서^^)
[root@www /root]cat ftp_backup.sh
#!/bin/bash
#MySQL DB backup
/usr/local/mysql/bin/mysqldump -uroot -p**** mysql > /backup/mysql_db_bak_$(date +%Y%m%d).sql
/usr/local/mysql/bin/mysqldump -uroot -p**** yanemone > /backup/yanemone_db_bak_$(date +%Y%m%d).sql
#html file backup
tar cvfpz /backup/html_bak.tar.gz /var/www/html
tar cvfpz /backup/yanemone_html_bak.tar.gz /home/yanemone/public_html
tar cvfpz /backup/dichang_html_bak.tar.gz /home/dichang/public_html
#delete old data
find /backup -ctime +3 -exec rm -f {} ;
2. 웹서버에서의 cron 등록
crontab -e 해서 cron을 등록한다. 내용은 다음과 같다.
매일 6시에 ftp_backup.sh을 수행하라는 의미이다
00 06 * * * /root/ftp_backup.sh
여기까지 제대로 했다면 /backup 아래에 관련 파일이 새벽 6시부터 만들어 질것이다.
3. 백업 서버의 스크립트 작성
웹서버에서 만들어 놓은 백업 자료를 백업서버에서 가져오는것을 작성해야 한다.
두개의 스크립트가 필요한데 하나는 ftp 실행파일이고 하나는 ftp 명령어 이다.
[root@king /root]# cat ftp_backup.sh
#!/bin/bash
ftp -n 211.57.173.XXX < ./ftpscript
[root@king /root]# cat ftpscript
user yanemone *******
cd /backup
lcd /backup
bi
prompt
mget *.gz
mget *.sql
bye
4. 백업 서버에서의 cron 등록
crontab -e 해서 cron을 등록한다. 내용은 다음과 같다.
매일 6시 20분에 ftp_backup.sh을 수행하라는 의미이다
20 06 * * * /root/ftp_backup.sh
rsync보다는 간단하게 구현이 되는것 같다. ^^
김병철님 말씀대로 서버 2대에서 ftp로 백업 하는 방법을 생각해 보았습니다.
의외로 아주 쉽게 구현이 될것 같습니다.
이것도 cron의 개념은 있어야 합니다. 아래 강좌를 보시면 cron에 대한것이 있으니 먼저 찾아보시길..
1. 웹서버의 에서의 백업 스크립트 작성
백업스크립트를 작성한다. 나의 경우는 /root/ftp_backup.sh로 만들었다.
(왜냐면 기존에 사용하던 backup.sh이 있으니깐 ^^, 그리고 ftp로 한다는것을 알기 위해서^^)
[root@www /root]cat ftp_backup.sh
#!/bin/bash
#MySQL DB backup
/usr/local/mysql/bin/mysqldump -uroot -p**** mysql > /backup/mysql_db_bak_$(date +%Y%m%d).sql
/usr/local/mysql/bin/mysqldump -uroot -p**** yanemone > /backup/yanemone_db_bak_$(date +%Y%m%d).sql
#html file backup
tar cvfpz /backup/html_bak.tar.gz /var/www/html
tar cvfpz /backup/yanemone_html_bak.tar.gz /home/yanemone/public_html
tar cvfpz /backup/dichang_html_bak.tar.gz /home/dichang/public_html
#delete old data
find /backup -ctime +3 -exec rm -f {} ;
2. 웹서버에서의 cron 등록
crontab -e 해서 cron을 등록한다. 내용은 다음과 같다.
매일 6시에 ftp_backup.sh을 수행하라는 의미이다
00 06 * * * /root/ftp_backup.sh
여기까지 제대로 했다면 /backup 아래에 관련 파일이 새벽 6시부터 만들어 질것이다.
3. 백업 서버의 스크립트 작성
웹서버에서 만들어 놓은 백업 자료를 백업서버에서 가져오는것을 작성해야 한다.
두개의 스크립트가 필요한데 하나는 ftp 실행파일이고 하나는 ftp 명령어 이다.
[root@king /root]# cat ftp_backup.sh
#!/bin/bash
ftp -n 211.57.173.XXX < ./ftpscript
[root@king /root]# cat ftpscript
user yanemone *******
cd /backup
lcd /backup
bi
prompt
mget *.gz
mget *.sql
bye
4. 백업 서버에서의 cron 등록
crontab -e 해서 cron을 등록한다. 내용은 다음과 같다.
매일 6시 20분에 ftp_backup.sh을 수행하라는 의미이다
20 06 * * * /root/ftp_backup.sh
rsync보다는 간단하게 구현이 되는것 같다. ^^
댓글 5
-
정은준
2002.12.04 09:33
-
김병철
2002.12.04 17:08
흐흐 잘 만드셨네요.. 근데 ftp 로 백섭에서 웹서버 접속한다음 파일다운받고 파일을 지운후에 접속을 종료하는데 왜 웹서버에서 3일지난 파일찾아서 자우라는 명령을 또 주셨는징.. ㅡㅡㅋ 글고 웹서버라면 6시보단 3시나 4시쯤이 백업하기 적당한 시간일꼬에여.. -
김병철
2002.12.04 17:10
아.. 그리고 주의할점이 있져.. 웹서버에서 백업하는 시간과 백섭에서 ftp 접속시간을 여유있게 잡으셔야합니다. 웹서버에서 백업하는데 걸리는 시간을 감안해야한다는거죠 여유롭게 1시간단위로 잡으시면 될것입니다. -
최종우
2002.12.04 18:26
병철님...ftp 에서 지우라는거 없는디...^^
지우고 후회한일이 하도 많아서 최소한 3일 정도는 보관하자는게 저의 취지였습니다.
그래서 ftp하고 바로 지우지 않은거구요...
웹서버라서...3시나 4시에 작업을 하는게 좋겠다는 말씀은 제가 들어야 할것 같네요 ^^
지금 작업 하러 갑니다^^ -
김병철
2002.12.04 23:34
아아 그렇군요.. 저희 백업스크립트랑 착각을 ..
그렇다면 굳이 웹서버쪽에 저장을 해두실 필요가 없다고 봐집니다.
그리고 웹서버에서 자료를 그때 그때 안지워준다면 용량도 문제가 되고 ftp 받을경우 오늘자료만 받지 않고 이전자료도 다 받게 될테니까요.. 그렇다면 바로 백업디렉토리 저장하지마시고
임시 디렉토리에 파일저장후 백업디렉토리쪽에 날짜별로 디렉토리 생성시켜서 저장하시는게 오히려 현명하겠죠..
FileName : ftp_backup.sh
#!/bin/bash
ftp -n 211.57.173.XXX < ./ftpscript
export backupdir=`date '+%y-%m-%d'`
mkdir /backup/$backupdir
mv /tmp/* /backup/$backupdir
find /backup -ctime +3 -exec rm -f {} ;
FileName : ftpscript
user yanemone *******
cd /backup
lcd /tmp
bi
prompt
mget *
mdelete *
bye
제목 | 글쓴이 | 날짜 |
---|---|---|
리눅스 보안 : 기초적인 방화벽 : portsentry 설치하기 [2] | 정인배 | 2002.11.29 |
cron을 이용한 자동 백업 받기 | 최종우 | 2002.12.02 |
cron과 rsync 그리고 replication 을 이용한 데이터 백업 [3] | 최종우 | 2002.12.03 |
FTP 를 이용한 원격 백업 받기 [5] | 최종우 | 2002.12.04 |
[계정삭제 스크립터] 편리님이 만드신 계정추가랑 연동됩니다.
[4]
![]() | 김동현 | 2002.12.04 |
[FreeBSD] 자동으로 시간 맞추기.. [1] | DeX™ | 2002.12.04 |
계정 등록 스크립트 [8] | 편리 | 2002.12.05 |
오래간만에 찾아뵙는군요^^ [2] | Dopesoul | 2002.12.08 |
Zend Optimizer Full Pass Setup [3] | DukeEYS | 2002.12.08 |
mod_gzip 적용시 php 인클루드를 실패해서 포기하신분 보세요 [2] | DukeEYS | 2002.12.08 |
apache2 + mod_jk 100번의 닭질 끝에 찾아가는 사이트 | DukeEYS | 2002.12.09 |
[FreeBSD] Proftp + MySQL 연동 설치하기
[2]
![]() | DeX™ | 2002.12.09 |
레드햇(redhat)리눅스에서 rpm 관리 명령어 | 정인배 | 2002.12.09 |
srpms, alpha, i386 , i686 이 의미하는 것은? [1] | Dopesoul | 2002.12.12 |
누군가 우리서버를 공격하고 있을때 응급처치! [13] | Dopesoul | 2002.12.13 |
[re] 저의 최종의견 입니다. [5] | Dopesoul | 2002.12.17 |
SetEnvIf 와 SetEnvIfNocase 의 차이 [7] | Dopesoul | 2002.12.13 |
DeX 님의 시간 동기화 스크립트를 편하고 안정적으로 변경한 리눅스용! [4] | Dopesoul | 2002.12.13 |
리눅스 rpm 명령어 활용(1): MRTG 설치 | 정인배 | 2002.12.14 |
PHP 4.2.3 파워 설치 테크닉 (에러 0%에 도전) [2] | 밍밍이 | 2002.12.17 |
한가지 문의 드리고싶은것은요.. 제로보드내 data 디렉토리만 백업을 하고싶은데요..
tar 명령어로
tar -zcvf data.tar.gz /home/계정명/public_html/zboard/data
이렇게 하니깐요..세션디렉토리에서 에러가 나더라구요.. 저는 세션디렉토리는 백업을 원하지 않거든요... 디렉토리를 압출할때 일 부분을 제외한 디렉토리만을 압축할 수는 없을까요???