사용자 도구

사이트 도구


kb:unison

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

kb:unison [2014/11/07 13:33] (현재)
줄 1: 줄 1:
 +====== Unison ======
 +파일 동기화 툴. 사용 목적이야 사람 따라 천차만별.
 +
 +게임 서버 데이터 및 실행 파일 업데이트를 위해 사용하고 있는데, 뭐 나쁘지 않다. 기존에는 bitvise tunnelier 안에 있는 sftpc를 이용해서 처리했는데,​ 이놈이 버그가 있는지 변경되지 않은 파일도 업로드하는 바람에 짜증나서리...
 +
 +
 +====== SSH 이용하기 ======
 +윈도우 기준이다.
 +
 +1. [[http://​www.cis.upenn.edu/​~bcpierce/​unison/​ | 공식 사이트]]에서 배포폰을 다운로드받는다.
 +
 +2. [[http://​www.chiark.greenend.org.uk/​~sgtatham/​putty/​download.html | Putty]] 사이트에서 plink.exe를 다운로드받는다.
 +
 +3. 디렉토리를 하나 만들어서 unison.exe와 plink.exe 파일을 한군데에다 집어넣어둔다.
 +
 +4. 아래와 같은 커맨드를 입력해서 인증키를 생성한다. 다음 단계에서 만드는 배치 파일을 써도 상관없다. 따로 한번 실행해주기만 하면 된다. 왠지 모르겠지만,​ unison을 통해 배치 파일을 실행하는 경우, 콘솔 입력이 안 먹어서 인증키 생성 질문(Y/​N)에 대답을 할 수 없기 때문이다. 대상 컴퓨터에는 당연히 SSH 데몬이 떠있어야 한다.
 +
 +<​code>​
 +plink.exe somewhere.over.the.rainbow -ssh -l account -pw password "​dir"​
 +</​code>​
 +
 +5. SSH 커맨드 배치 파일을 만든다. sshcmd.bat 파일이라고 하자.
 +
 +<​code>​
 +@echo off
 +plink.exe somewhere.over.the.rainbow -ssh -l account -pw password "​unison -server -auto"
 +</​code>​
 +
 +6. 설정 파일을 만든다. repository.prf 라고 하자.
 +
 +<​code>​
 +batch = true
 +root = c:​\source_dir
 +root = ssh://​somewhere.over.the.rainbow/​dest_dir
 +force = c:​\source_dir
 +sshcmd = sshcmd.bat
 +ignore = Name *test*
 +ignore = Name *.ilk
 +ignore = Name *.log
 +ignore = Path log
 +</​code>​
 +
 +7. 간편한 동기화를 위한 배치 파일을 만든다. "​UNISON"​ 변수를 등록해서 이전에 생성한 설정 파일이 있는 디렉토리를 지정해주는게 목적이다. 아니면 환경 변수 탭에서 추가해야 하는데, 그냥 배치 파일 하나 만드는 게 낫다.
 +
 +<​code>​
 +SET UNISON=C:​\Unison\
 +unison repository
 +</​code>​
 +
 +마지막에 생성한 배치 파일을 실행하면 만사 오케이. 다만 중간에 취소하는 경우, 이런저런 잡다한 파일이 생기니 주의. 지워주면 되기야 한다만...
 +
 +
 +====== 링크 ======
 +  * [[http://​www.cis.upenn.edu/​~bcpierce/​unison/​ | Unison File Synchronizer]]
  
kb/unison.txt · 마지막으로 수정됨: 2014/11/07 13:33 (바깥 편집)