강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

ftp로 원격서버의 데이터 자동백업
작성자 : 13 김영철
등록날짜 : 2009.01.29 16:45
2,593

서버2에서 서버1의 데이터를 FTP로 가져와 백업하기

작업내용 : 서버2에서 매일(/etc/cron.daily/autoftp) 서버1로 ftp접속을 하여(/home/sspark/.autoftp.sh, /home/sspark/.ftpscript) 백업할 데이터들을 가져온후에 서버2에 날짜형식을 가진 디렉토리를 생성하여 저장하고, 서버1의 원본데이터는 삭제한다.

서버1에서는 매일매일 백업일 하기위해 /etc/cron.daily/NICE-daily-backup에서 /sbin/NICEBACKUP파일을 실행시켜 이 파일에 있는 내용대로 매일매일 백업이 되고 있다.

 

 

서버1에서 매일 백업되는 내용

다음과 같이 서버1의 /sbin/NICEBACKUP에는 백업해야할 내용에관한 명령어들이 들어있다.

[root@kebia_1 /root]# cat /sbin/NICEBACKUP
#!/bin/bash
#APACHE Server BACKUP
tar cvfpz /home/sspark/BACKUP/usr_local_apache.tar.gz /usr/local/apache
#Mysql DB Full BACKUP
tar cvfpz /home/sspark/BACKUP/usr_local_mysql.tar.gz /usr/local/mysql
#Filesystem BACKUP
tar cvfpz /home/sspark/BACKUP/etc.tar.gz /etc
tar cvfpz /home/sspark/BACKUP/var.tar.gz /var
tar cvfpz /home/sspark/BACKUP/home.tar.gz /home
#Mysql file BACKUP
/usr/local/mysql/bin/mysqldump -uroot -p11111 mysql > /home/sspark/BACKUP/mysql.sql
/usr/local/mysql/bin/mysqldump -uroot -p11111 kebia > /home/sspark/BACKUP/kebia.sql
chown -R sspark:sspark /home/sspark/BACKUP

아래와 같이 서버1에는 위의 백업을 매일 하기위해 /etc/cron.dailly에 NICE-daily-backup이란 파일이 존재한다.

[root@kebia_1 /root]# cat /etc/cron.daily/NICE-daily-backup
echo "NICE KOREA BACKUP"
echo `date`
/sbin/NICEBACKUP
echo "BACKUP is completed"
[root@kebia_1 /root]#

 

서버1에는 매일 아래 디렉토리에 다음과 같이 백업이 되고 있다.

[root@kebia_1 BACKUP]# pwd
/home/sspark/BACKUP
[root@kebia_1 BACKUP]# ll
-rw-r--r--    1 sspark   sspark    1514583 Apr  1 04:04 115.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark       9263 Apr  1 04:05 chapter.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark   12996153 Apr  1 04:05 e-gain.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark     556780 Apr  1 04:04 etc.tar.gz
-rw-r--r--    1 sspark   sspark    2007684 Apr  1 04:04 imt-2000.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark   11236021 Apr  1 04:04 nicekorea.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark      32128 Apr  1 04:04 owner.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark    2150591 Apr  1 04:04 picasso.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark    3624831 Apr  1 04:04 sajik.com.tar.gz
-rw-r--r--    1 sspark   sspark   94379928 Apr  1 04:04 usr_local.tar.gz
-rw-r--r--    1 sspark   sspark    4471105 Apr  1 04:04 var.tar.gz
[root@kebia_1 BACKUP]#

 

 

서버2에는 서버1의 데이터를 매일 가져오기위해 /etc/cron.daily에서 매일실행하는 스크립트 autoftp가 아래와 같이 있다.

[root@kebia_2 /root]#
[root@kebia_2 /root]# cat /etc/cron.daily/autoftp
#!/bin/bash
/home/sspark/.autoftp.sh
[root@kebia_2 /root]#

 

서버2에 만들어져야할 파일2개

  autoftp.sh : ftp실행파일

  ftpscript : ftp명령어들

 

[root@kebia_2 sspark]# cat autoftp.sh
#!/bin/bash
ftp -n 211.220.193.181 < ./ftpscript
export backupdir=`date '+%y-%m-%d.%H-%M'`
mkdir /home/sspark/BACKUP/$backupdir
mv /home/sspark/tmp/* /home/sspark/BACKUP/$backupdir

[root@kebia_2 sspark]#

 

[root@kebia_2 sspark]# cat ftpscript
user sspark 11111
cd /home/sspark/BACKUP
lcd /home/sspark/tmp
bin
prompt
mget *.tar.gz
mdelete *.tar.gz
bye

[root@kebia_2 sspark]#

 

서버1에는 cron.daily에 /sbin/NICEBACKUP등으로 매일 또는 매주 또는 매월백업을 자동으로 되고 있어야한다.
서버1의 /home/sspark/BACKUP/200104010303 형식으로 디렉토리를 생성하게되어 저장된다.
그런후에는 서버1의 데이터를 삭제한다.

 

작업완료후에 서버2에는 서버1의 내용이 백업되어 있다.

 

[root@kebia_2 01-04-01.05-45]# pwd
/home/sspark/BACKUP/01-04-01.05-45
[root@kebia_2 01-04-01.05-45]# ll
-rw-r--r--    1 root     root      1514583 Apr  1 05:36 115.co.kr.tar.gz
-rw-r--r--    1 root     root         9263 Apr  1 05:36 chapter.co.kr.tar.gz
-rw-r--r--    1 root     root     12996153 Apr  1 05:37 e-gain.co.kr.tar.gz
-rw-r--r--    1 root     root       556780 Apr  1 05:37 etc.tar.gz
-rw-r--r--    1 root     root      2007684 Apr  1 05:37 imt-2000.co.kr.tar.gz
-rw-r--r--    1 root     root     11236021 Apr  1 05:38 nicekorea.co.kr.tar.gz
-rw-r--r--    1 root     root        32128 Apr  1 05:38 owner.co.kr.tar.gz
-rw-r--r--    1 root     root      2150591 Apr  1 05:38 picasso.co.kr.tar.gz
-rw-r--r--    1 root     root      3624831 Apr  1 05:38 sajik.com.tar.gz
-rw-r--r--    1 root     root     94379928 Apr  1 05:45 usr_local.tar.gz
-rw-r--r--    1 root     root      4471105 Apr  1 05:45 var.tar.gz
[root@kebia_2 01-04-01.05-45]#

 

서버2에서 ftp접속 및 작업이 끝난후 서버1의 내용(즉, 원본파일은 지워지게 된다.)

[root@kebia_1 BACKUP]# pwd
/home/sspark/BACKUP
[root@kebia_1 BACKUP]# ll
[root@kebia_1 BACKUP]# 

출처 : Tong - ddakzzi님의 SERVER통

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
열람중 ftp로 원격서버의 데이터 자동백업 13 김영철 01.29 2594
2894 계정 자동 세팅 13 김영철 01.29 2715
2893 응급복구 13 김영철 01.29 2571
2892 특정 계정에대해서 telnet 접속 X , ftp 접속 O 13 김영철 01.29 2817
2891 rootman의 서버 초기세팅시 초기 설정사항 퍼미션 및 소유권변경 정보 13 김영철 01.29 2396
2890 네임서버 설정 13 김영철 01.29 2462
2889 트래픽을 증가시키는 외부사이트의 이미지 퍼가기를 막기 위한 apache config 설정 13 김영철 01.29 2705
2888 리눅스 도메인 셋팅방법 13 김영철 01.29 2374
2887 리눅스 서브도메인 셋팅방법 13 김영철 01.29 2820
2886 아파치 - throttle 모듈 설치 13 김영철 01.29 2735
2885 APM - 단독서버 운영을 위한 셋팅 13 김영철 01.29 2945
2884 vi edit 사용 13 김영철 01.29 2819
2883 TOMCAT 13 김영철 01.29 2415
2882 vi 명령어 2 13 김영철 01.29 3237
2881 ncftp, ncftpget, ncftpput - 서브디렉토리 전송 13 김영철 01.29 3685
2880 ncftp, ncftpget, ncftpput - 서브디렉토리 전송 13 김영철 01.29 2588
2879 [서버운영] ncftp 100% 활용하기 13 김영철 01.29 2622
2878 rsync (remote sync daemon) UNIX 서버간 원격 복사 13 김영철 01.29 3106
2877 rsync 와 ssh 를 이용한 파일 전송 13 김영철 01.29 3436
2876 rsync윈도우에서 리눅스로 백업하기 13 김영철 01.29 3953
2875 RSYNC 사용하기 13 김영철 01.29 2449
2874 ssh 재시작(각종 변곃후) 13 김영철 01.29 2974
2873 ssh 보안설정1 13 김영철 01.29 2654
2872 find 명령어 사용법 13 김영철 01.29 2496
2871 chgrp 명령어 사용법 13 김영철 01.29 4424
2870 killall 명령어 사용법 13 김영철 01.29 3479
2869 kill 명령어 사용법 13 김영철 01.29 2802
2868 ps 명령어 사용법 13 김영철 01.29 3780
2867 루트밑에 특정 확장자 파일을 특정디렉토리에 복사 13 김영철 01.29 2917
2866 쉘스크립트 암호화 13 김영철 01.29 2720
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취