project:btsyncforrpi
차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판이전 판다음 판 | 이전 판 | ||
project:btsyncforrpi [2013/07/17 02:52] – [라즈베리 파이에서 BittorrentSync로 데이터 동기화하기] changwoo | project:btsyncforrpi [2014/10/09 21:24] (현재) – 바깥 편집 127.0.0.1 | ||
---|---|---|---|
줄 303: | 줄 303: | ||
stop) | stop) | ||
echo -n " | echo -n " | ||
- | start-stop-daemon --stop --exec $DAEMON | + | start-stop-daemon --stop |
echo " | echo " | ||
;; | ;; | ||
줄 332: | 줄 332: | ||
$ sudo chown root:root / | $ sudo chown root:root / | ||
$ sudo chmod 755 / | $ sudo chmod 755 / | ||
+ | | ||
+ | ==== 업데이트 스크립트 제작 ==== | ||
+ | btsync가 자주 업데이트되므로 업테이트 될 때 마다 쉽게 업데이트하도록 스크립트를 만듭니다. | ||
+ | <code bash update_btsync> | ||
+ | #!/bin/bash | ||
+ | if [ `whoami` != " | ||
+ | echo " | ||
+ | exit 1 | ||
+ | fi | ||
+ | |||
+ | echo " | ||
+ | mkdir ./ | ||
+ | wget -O - http:// | ||
+ | cp btsync_update_tmp/ | ||
+ | rm -fr btsync_update_tmp | ||
+ | |||
+ | echo " | ||
+ | </ | ||
==== 동작 테스트 ==== | ==== 동작 테스트 ==== | ||
줄 467: | 줄 485: | ||
싱크가 다 끝나면 클라이언트 쪽에서도 웹서버를 켜고 위키에 접속해 봅니다. 데스크탑에서 문서를 수정해 보고, 그것이 서버로도 반영되는지 확인해 봅니다. 실제로 저는 이 문장부터는 데스크탑에서 작성 중이랍니다. 믿어주세요 :-) 역시 데스크탑의 성능이 월등하군요. 작업하기 훨씬 더 쾌적합니다. 일단 데이터가 다 싱크된 후에는 그렇게 많은 정보가 변화하지 않으므로 잠깐잠깐 기다려주면 금방 싱크가 유지됩니다. 만일 일이 생겨 다른 장비를 가지고 어디를 가든지 인터넷과 연결되어 있으면 최소한 라즈베리 파이의 서버를 통해 싱크를 맞출 수 있습니다. | 싱크가 다 끝나면 클라이언트 쪽에서도 웹서버를 켜고 위키에 접속해 봅니다. 데스크탑에서 문서를 수정해 보고, 그것이 서버로도 반영되는지 확인해 봅니다. 실제로 저는 이 문장부터는 데스크탑에서 작성 중이랍니다. 믿어주세요 :-) 역시 데스크탑의 성능이 월등하군요. 작업하기 훨씬 더 쾌적합니다. 일단 데이터가 다 싱크된 후에는 그렇게 많은 정보가 변화하지 않으므로 잠깐잠깐 기다려주면 금방 싱크가 유지됩니다. 만일 일이 생겨 다른 장비를 가지고 어디를 가든지 인터넷과 연결되어 있으면 최소한 라즈베리 파이의 서버를 통해 싱크를 맞출 수 있습니다. | ||
+ | |||
+ | 이제 라즈베리 파이가 재부팅되면 btsync도 자동으로 실행되도록 처리하기만 하면 됩니다. | ||
+ | $ sudo update-rc.d btsync defaults | ||
+ | |||
==== 문제 해결 ==== | ==== 문제 해결 ==== | ||
줄 476: | 줄 498: | ||
* 혹여 이전부터 BitTorrentSync를 알고 계신 분들 중에 " | * 혹여 이전부터 BitTorrentSync를 알고 계신 분들 중에 " | ||
* 새롭게 싱크를 받은 쪽에서도 권한 문제는 중요합니다. 언제든 웹서버가 올바르게 파일을 읽을 수 있는지, 또 기록을 해야 할 곳에는 기록을 할 수 있는지 체크하세요. | * 새롭게 싱크를 받은 쪽에서도 권한 문제는 중요합니다. 언제든 웹서버가 올바르게 파일을 읽을 수 있는지, 또 기록을 해야 할 곳에는 기록을 할 수 있는지 체크하세요. | ||
+ | |||
+ | === 싱크된 파일의 소유권 및 권한 문제 === | ||
+ | 서로 다른 시스템간에 파일이 오가는 것이므로 소유권과 권한 문제가 야기될 수 있습니다. 이렇게 되면 위키 프로그램이 올바르게 데이터를 읽고 쓰기가 어려워집니다. 이 경우 싱크를 맞추는 시스템끼리 서로 계속 소유권과 권한을 확인하여 수정하는 수 밖에 없습니다. BitTorrentSync가 알아서 맞춰 주면 좋겠습니다. | ||
+ | |||
+ | 도쿠위키 디렉토리에 다음과 같이 쉘 스크립트를 작성합니다. | ||
+ | <code bash make_ready.sh> | ||
+ | #!/bin/bash | ||
+ | if [ $HOSTNAME = " | ||
+ | DOKUROOT=/ | ||
+ | /bin/chown changwoo: | ||
+ | elif [ $HOSTNAME | ||
+ | DOKUROOT=/ | ||
+ | /bin/chown changwoo: | ||
+ | elif [ $HOSTNAME = " | ||
+ | DOKUROOT=/ | ||
+ | /bin/chown -R _www:_www $DOKUROOT/ | ||
+ | fi | ||
+ | #echo $DOKUROOT | ||
+ | /bin/chmod -R 777 $DOKUROOT/ | ||
+ | </ | ||
+ | |||
+ | '' | ||
+ | |||
+ | $ chmod a+x make_ready.sh | ||
+ | |||
+ | 그리고 각 시스템이 N분마다 이 스크립트를 실행하도록 만듭니다. | ||
+ | $ sudo crontab -e | ||
+ | */N * * * * < | ||
+ | N을 적절 | ||
+ | 히 숫자로 바꾸어주세요. | ||
===== 마무리 ===== | ===== 마무리 ===== | ||
줄 483: | 줄 535: | ||
물론 BitTorrentSync가 완벽한 대안은 아닙니다. 싱크가 잘 된다고 방심하시면 절대 안 됩니다. 반드시 평소 해 오시던 백업과 혼용하세요. BitTorrentSync는 아직 시험적인 서비스에 불과합니다. 참신하고 혁신적인 서비스이지만 조금 더 지켜봐야 할 겁니다. 한편 제가 예를 든 도쿠위키의 핵심 데이터는 잘 정리해서 압축하면 그렇게 많은 용량을 차지하지 않습니다. 대부분의 개인 웹서버의 데이터는 이럴 것입니다. 이렇게 스냅샷을 만들어 클라우드 스토리지 서비스와 혼용하면 더욱 이상적으로 웹서버 데이터를 유지관리하실 수 있으리라 생각합니다. | 물론 BitTorrentSync가 완벽한 대안은 아닙니다. 싱크가 잘 된다고 방심하시면 절대 안 됩니다. 반드시 평소 해 오시던 백업과 혼용하세요. BitTorrentSync는 아직 시험적인 서비스에 불과합니다. 참신하고 혁신적인 서비스이지만 조금 더 지켜봐야 할 겁니다. 한편 제가 예를 든 도쿠위키의 핵심 데이터는 잘 정리해서 압축하면 그렇게 많은 용량을 차지하지 않습니다. 대부분의 개인 웹서버의 데이터는 이럴 것입니다. 이렇게 스냅샷을 만들어 클라우드 스토리지 서비스와 혼용하면 더욱 이상적으로 웹서버 데이터를 유지관리하실 수 있으리라 생각합니다. | ||
+ | |||
+ | ===== 참고할 만한 문서들 ===== | ||
+ | * [[project: |
project/btsyncforrpi.1374029541.txt.gz · 마지막으로 수정됨: 2014/10/09 21:23 (바깥 편집)