https://syncthing.net
Syncthing 은 오픈소스 P2P 파일 동기화 프로그램으로, Bittorrent Sync(현 Resilio Sync)과 유사한 기능을 제공하는 프로그램입니다.
일반적으로 백업을 할 때 3-2-1 규칙을 따르는게 좋다고 하잖아요. 이 중 "3-2"를 지키기 쉬워집니다. 3가지 복제본을 2개 이상의 서로 다른 디바이스에 저장하는 것이 가능하다는 의미입니다. Syncthing을 사용해서 데스크톱, 나스, 랩톱에 같은 커피본을 항상 유지 할 수 있는것이 좋았습니다. 여기서 나스에서 rclone 으로 클라우드에 주기적 백업까지 하면 백업 시스템은 완성일 것 같습니다.
아쉬운 점은 다음과 같습니다.
1. 파일을 옮겼을때 감지하지 못하고, 전체 파일을 아예 새로 전송한다는 것. (근데 이게 가능한 동기화 클라이언트가 있긴 한가 싶습니다.)
2. 여러개의 디바이스를 서로 연결하면 가끔 파일 동기화 이슈가 생긴다는 점. 이 문제는 서로 다른 디바이스끼리 연결하지 않고, 나스와만 연결하는 방식으로 해결할 수 있긴 합니다. 즉 데스크톱과 랩톱은 서로 통신하지 않고, 나스와만 통신하도록 구성하는 거죠.
2번 이슈가 있지만, 그래도 여러 상용 클라우드 클라이언트보다는 신뢰성이 높다고 개인적으로 느끼며 사용하고 있습니다.
https://github.com/syncthing/syncthing/issues/5660
물론 ”특정 시간대 시점으로 전체 파일을 복구한다“ 같은건 까다롭지만요.
찾아보니 resilio는 파일 rename시 재전송을 안하는 군요. 더 좋을 것 같은데요??
https://help.resilio.com/hc/en-us/articles/209606526-What-happens-when-file-is-renamed
일단 syncthing 에 대해 더 설명드리자면, 적어도 onedrive 맥용 공식 클라이언트보다는 훨씬 좋았습니다. onedrive 는 제 파일 지워버리는 경우가 종종 있었거든요..
다만 P2P로 셋업 한 경우, 여러 파일을 동시에 여러 디바이스에서 수정했을 때 가끔 작성한 파일이 overwrite 되는 문제가 발생하고는 했습니다 (1년 전). 그래서 데스크톱이랑 랩톱은 연결을 서로 안하고, 나스랑만 연결하는 식으로 사용하구요. 지금 생각해보니 각 디바이스의 시스템 시각 오차에서 발생한 거 아닐까 싶긴 합니다.
기본적으로 동기화 중 충돌이 발생하면 <filename>.conflict-<date> 식으로 새 파일을 만들어 동기화를 해주어서, 파일을 overwrite 하지는 않습니다.
https://www.reddit.com/r/selfhosted/comments/qs8t75/in_appreciation_of_syncthing_after_6y_of_resilio/
다만 syncthing 은 네트워크 상태에 따라 연결이 안되는 이슈가 있는데 resilio 는 그런게 없다라는 의견도 있습니다.
제 경험상에도 가끔 카페 wifi 에서 동기화가 안될때가 있긴 합니다. Wi-Fi 관리자가 막아두거나 그런건 줄 알았는데, syncthing 이슈 일수도 있겠습니다.
https://www.reddit.com/r/selfhosted/comments/ced9ur/comment/eubk73f/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button