Rsync For Windows
|
rsync 를 이용하여 윈도우즈 백업하기 Mini-HOWTO
김정수 pibonazi (at) hotmail.com
2003-12-17 ver 1.0.0
이 문서는 GPL(General Public License) 을 따릅니다.
1. 서문 ¶살다보면 여러 컴퓨터에 자신의 디렉토리를 만들게 된다. 대부분의 네크워크 작업을 하는 리눅스 유저들이라면 그러할 것이다. 특히 윈도우즈도 사용하는 유저라면, 자신의 디렉토리를 압축해서 정기적으로 서버에 올리던지 또는 CD에 굽는 방법을 이용하여 백업을 할것이다. 그러나 매번 모든 자료를 압축하거나 전송하는 것은 효율적이지 못하며, 시간낭비이다. 따라서 변한 파일만 업데이트해주는 "동기화"의 개념을 가진 백업 프로그램이 필요한데, 가장 자주 사용하고 쓰기 편한 것이 rsync이다. 이 문서는 윈도우즈 클라이언트가 리눅스 서버에 백업하는 경우를 다루고 있으나, 리눅스 클라이언트에서 리눅스 서버에 백업하는 방법도 완전히 똑같다. 초보자들이나 혹은 rsync를 자세히 다룰 필요가 없는 사람들을 위해 최소한의 내용을 다룬 글이며 더 자세히 rsync에 대하여 알고 싶다면 http://samba.org/rsync 를 참조하면 좋을 것이다.
2. 클라이언트에 rsync 깔기 ¶윈도우즈에서 rsync를 사용하려면 cygwin이 필요하다.
cygwin이 깔려있다면 Net 패키지 중에서 rsync만 더 설치하면 될 것이다. cygwin이 설치되어 있지 않다면 적당한 cygwin 미러사이트에 가서 default 정도로 인스톨하고, Net 패키지에서 rsync만 더 추가해 주면 된다. 어떤 미러를 고르느냐에 따라서 default의 크기가 결정되는데 예를 들어 ftp://http.gnupilgrims.org/pub/cygwin 의 미러는 말 그대로 최소설치이다(default+rsync+vim+nano가 까지 54.6M정도다).
일단 cygwin과 rsync를 모두 설치했다면, 윈도우즈 배치파일에서 unix명령이 실행되도록 환경을 만들어주자. 제어판 -> 시스템 -> 고급 -> 환경변수 에서 환경변수에 C:\cygwin\bin 을 더해주자.
윈도우즈의 명령 프롬프트에서 ls, grep 등등이 먹히는걸 확인해 본다.
3. 리눅스 서버의 세팅 ¶백업본이 담길 리눅스 서버를 세팅하는 일이다.
일단 리눅스 서버에도 rsync를 깔아야 한다.
데비안이라면 루트 권한으로
$ apt-get install rsync정도면 모든 일이 끝난다 :-). 이제 rsync가 데몬으로 실행되면서 어떻게 접속을 받아들일지 세팅을 하자. 일단 /etc/rsyncd.conf 란 파일을 만들어 주어야 한다. 다음과 같이 만들어주자.
[myconnectionname]
path = /home/fibonacci/backup
comment = Fibonacci's notebook backup area
uid = fibonacci
gid = users
read only = false
auth users = fibonacci
secrets file = /etc/rsyncd.secrets
이 파일의 소유권을 root:root 로, 퍼미션을 644(rx-rfibonacci:mybackup_amho의 내용을 가지도록 만들어 주면 되겠다. 이 파일의 소유권을 root:root 로, 퍼미션을 600(rx-------)으로 바꾸어주자. 이제 rsync를 데몬 모드로 실행시키자 $ rsync --daemon 이제 클라이언트의 접속을 받아들일 준비는 다 했다.
4. 클라이언트에서 백업 스크립트 실행하기 ¶이제 클라이언트에서 백업 스크립트를 실행해야겠다. 배치파일(.bat)에
rsync -vrtz --delete /cygdrive/c/내문서 fibonacci@servername::myconnectionname란 실행문을 넣어주면 되겠다(C:\cygwin\bin 경로는 자동 인식하게 세팅하였다). 암호를 물어본다. 앞에서 /etc/rsyncd.secrets 의 내용에 적혀있던 암호를 넣어보자.
백업을 시작한다. 이제 /home/fibonacci/backup/내문서 디렉토리가 생성이 되고 c:\내문서 가 고스란히 복사되어 있는것을 알 수 있다.
5. 동기화 과정에 대한 설명 ¶
|
Your temporary financial embarassment will be relieved in a surprising manner. |











![[http]](/imgs/http.png)