자동으로 파일을 백업해서 ftp 서버에 올리거나, 다운로드 받는 배치파일을 만드는 방법
2012.09.07 12:012012.09.07 12:01
[FTP] FTP 자동 백업 배치파일
가끔 서버의 설정 파일을 원격지에 백업을 해야할 경우가 있습니다.
이럴때 간단한 배치파일을 이용하여 FTP 서버에 자동 로그인하여 파일을 백업할 수 있습니다.
이러한 자동 로그인 배치파일은 자주 사용하는 FTP 서버에 접속할 때도 편하게 사용될 수 있습니다.
# 사용방법
1. 우선 텍스트 파일을 생성합니다. 내용은 다음과 같이 적은 후 auto_ftp.txt 파일로 저장 합니다.
open : ftp 서버에 접속
ftpuser : 계정
qwe123 : 비밀번호
bin : binary 형태로 파일 전송
hash : 파일전송 시 #로 상태 확인
prompt : 파일전송 확인여부 표시(on/off)
put : 파일 전송 / 업로드
quit : 종료
2. 이젠 auto_backup.bat 라는 배치파일을 만듭니다.
ftp -s:파일이름
예) ftp -s:auto_ftp.txt
3. auto_backup.bat 파일 실행화면
이와 같은 방법을 통하여 배치파일을 이용하여 간단하게 원격지로 파일을 백업할 수 있습니다.
===== 정보1 링크 1.내용 =================
Posted in 리뷰 iN /모바일, PC by 단비스
7-zip 7Z와 Windows 작업스케줄러로 자동압축 스크립트 배치파일 만들어서 정기적으로 자동 백업받는 방법
WinRAR 프로파일 기능으로 자동압축, SFX EXE 배포 스크립트 배치파일 만드는 방법
위에서 자동으로 특정시간에 백업파일을 생성하는 방법을 설명했는데, 기왕이면 백업을 받고, FTP나 특정 디렉토리로 옮기면 더 좋을것입니다.
뭐 특정 디렉토리로 옮기는것은 위에서 압축시 해당 디렉토리를 지정하거나, 배치파일의 끝에 move나 copy 명령을 통해서 간단하게 처리할수 있는데, 이번에는 ftp로 자료를 옮기는 방법입니다.
이것도 간단하게 처리를 할수 있는데, 배치파일과 windows에 있는 ftp.exe 파일을 이용해서 작성이 쉽게 가능합니다.
우선 cmd 창에서 ftp /? 라고 입력하면 아래와 같은 화면이 나옵니다
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\danbisw>ftp /?
FTP 서버 서비스(디먼이라고도 함)를 실행하는 컴퓨터로서, 또는 그 컴퓨터로 파일을 전송합니다. Ftp는 대화형으로 사용할 수 있습니다.
FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-A] [-x:sendbuffer] [-r:recvbuf
fer] [-b:asyncbuffers] [-w:windowsize] [host]
-v 원격 서버 응답을 표시하지 않습니다.
-n 초기 연결 시 자동 로그인을 생략
-i 복수 파일 전송 중에 대화형 묻기 기능을 사용하지 않음
-d 디버깅을 사용
-g 파일 이름에 와일드카드를 사용하지 않습니다(GLOB 명령 참조).
-s:filename FTP 명령이 들어 있는 텍스트 파일을 지정합니다.
이 명령은 FTP가 시작된 후에 자동으로 실행됨
-a 데이터 연결을 바인딩할 때 로컬 인터페이스를 사용
-A 익명으로 로그인
-x:send sockbuf 기본 SO_SNDBUF 크기인 8192를 재정의
-r:recv sockbuf 기본 SO_RCVBUF 크기인 8192를 재정의
-b:async count 기본 비동기 개수인 3을 재정의
-w:windowsize 기본 전송 버퍼 크기인 65535를 재정의
host 연결할 원격 호스트의 호스트 이름 또는 IP 주소를 지정
참고:
- mget 및 mput 명령에서 y/n/q는 yes/no/quit을 의미
- 명령을 중단하려면 Ctrl+C를 누릅니다.
위에보면 -s:파일명이 있는데, 이부분을 사용하는것입니다.
사용자가 ftp서버에 접속해서 로그인하고, 파일을 올리는 과정을 하나의 스크립트로 작성하는것입니다.
위가 스크립트 파일인데, open으로 서버에 접속하고, 사용자명과 비밀번호를 입력하고, 원하는 디렉토리로 이동
prompt, bin, hash(화면상에 전송되는것이 보이는 옵션)로 전송준비를 완료하고,
mget으로 파일을 ftp에서 다운로드 받고, mdelete로 삭제를 하고, ftp를 종료(bye)하는 스크립트 입니다.
만약 파일을 업로드하고 싶은 경우에는 put aaa.exe 와 같은 식으로 지정하면 됩니다.
그리고 여러파일을 받거나 삭제할경우에는 mget, mdelete처럼 앞에 multi의 m을 붙여주면 되고, 하나씩 올리거나 지울때는 m을 빼고, put, get, delete를 사용하시면 됩니다.
암튼 ftp 프로그램에서 실행한 스크립트는 이런식으로 작성을 하시면 되고, 이제는 이 스크립트를 작성할 batch 파일을 작성하시면 됩니다.
위 처럼 d:, cd \로 이동하는 이유는 d:\에 다운로드를 받거나, d:\에 있는 파일을 올리기 위함입니다.
만약 d:\test 에 있는 폴더에서 작업을 하고 싶다면 cd test 를 한줄 더 넣어주시면 되고,
이후에 ftp -s:스크립트파일 식으로 입력을 해주시면 됩니다.
그러고나서 입력을 하면 만약 ftp를 처음 사용하는 경우 외부 사이트와 연결이 되기 때문에 방어벽 프로그램에서 접속을 허용할것이냐고 물어보는데, 그때 Yes를 눌러주시면 되고, 이후에는 메세지 없이 위처럼 자동적으로 파일을 다운로드 받거나 올리수 있습니다.
개발자이거나 업체에서 다른 클라이언트에서 자료를 보내주는것을 모를경우 일일히 설명하기 귀찮을때 스크립트를 만들어서 bat2com 같은 파일로 변환해서 자동으로 파일을 올리도록 하고, 업체측에서는 매일 한시간(윈도우 스케줄러나 hotkeyboard같은 프로그램을 이용)마다 혹시 올라온 파일이 있는지 자동으로 검색 다운로드 하게 하면 됩니다.
7-zip 7Z와 Windows 작업스케줄러로 자동압축 스크립트 배치파일 만들어서 정기적으로 자동 백업받는 방법
WinRAR 프로파일 기능으로 자동압축, SFX EXE 배포 스크립트 배치파일 만드는 방법
이외에 개인분이라면 중요한 소스나 파일들을 정기적으로 자동압축하고, 이런 스크립트를 통해서 FTP로 올리면 되는데, 정기적으로 압축해서, ftp에 올리는 같은 작업을 반복하시는 분이라면 도움이 될듯 합니다.
출처: http://danbis.net/12174 [희망을 보고, 나는 쓰네]>\r\n>\r\n>\r\n♠ 출처는 링크 참조 바랍니다. https://11q.kr ♠