어떻게 하나보니 나는 시놀로지 서버 2개를 운용하고 있다.
기존에 가지고 있던 DS213j는 아내의 작업실로 이사를 보냈고, 내가 대부분의 데이터를 쌓아놓고 있는 DS918+는 집에 놓고 사용하고 있다. 시놀로지를 사용하는 가장 큰 장점 중의 하나가 RAID를 구성하여 데이터를 안전하게 보관할 수 있다는 점이지만 그래도 불안하다. 이에 가끔씩은 DS918+의 데이터를 DS213j에 백업하고 있고, 이 글을 통해서 시놀로지에서 시놀로지로 백업하는 방법을 소개하고자 한다.
1. 공유 폴더 동기화를 이용한 Synology NAS간 데이터 동기화
내가 사용하는 백업 방법은 “공유 폴더 동기화”를 이용하는 방법이다. 이 “공유 폴더 동기화”는 단방향 백업만을 지원하며, 내 경우에는 DS918+의 데이터를 DS213j로 백업하는데 사용하고 있다. 이 방법을 사용하기 위해서는 (1) 백업할 데이터를 보내는 원본서버와 (2)백업할 데이터를 전달 받는 대상서버를 각각 설정해야 한다. 이 글을 통해 그 설정방법을 정리해 본다.
2. 대상 서버의 설정
공유 폴더 동기화는 rsync라고 하는 통신방법을 사용한다. rync는 Remote Sync의 약자로써, 빠른 증분 파일전송을 제공하는 오픈소스 유틸리티이며, 전송 시 네트워크 대역폭을 최소화하는 delta encoding algorithm 을 구현하여 rcp나 scp 보다 훨씬 빠르고 효율적으로 데이터를 동기화할 수 있다. 서버로 구동하는 경우, 기본적으로 TCP 873 포트를 사용하지만, SSH 나 RSH 같은 Remote Shell protocol 기반에서 동작할 수도 있으므로 ssh 기반으로 rsync 를 사용하면 방화벽을 오픈 할 필요 없이 간단하게 사용이 가능하다.
대상 시놀로지 서버는 rsync 서버로 동작하기 때문에, “제어판” → “파일서비스” → “rsync”로 이동하여 아래 그림과 같이 “rsync 서비스 활성화”를 체크해 주어야 한다.
내 경우, 원본서버와 대상서버의 계정이 동일하기 때문인지, “rsync 계정 활성화” 및 “rsync 계정 편집”을 수정하지 않고서도 문제없이 백업이 진행 되었다. 혹시라도 원본서버와 대상서버의 계정이 상이한 경우라면, rsync를 위한 계정을 추가로 활성화 해 주어야 할 필요가 있을 수도 있다. (이 부분까지는 확인하지 못했음)
3. 원본 서버의 설정
“제어판” → “파일서비스” → “고급” 으로 이동하여 페이지 아래쪽으로 이동하면 “공유 폴더 동기화”라고 표시되어 있는 항목을 찾을 수 있다. 아래와 같이 “작업목록” 버튼을 클릭한다.
“작업 목록” 창의 “생성” 버튼을 클릭하면, 아래와 같이 “공유 폴더 동기화 마법사” 창이 표시된다.
“작업 이름”에 적당한 이름을 기입하고 “다음”을 클릭한다.
내 경우에는 원본 시놀로지 서버에 있는 각 폴더를 대상 시놀로지 서버의 동일한 이름을 갖는 폴더로 백업을 수행하고 있다. 따라서, 나는 “작업 이름”에 각 폴더의 이름을 명기하여 진행했다.
다음으로 “동기화할 원본 선택” 창이 표시되며, 내 원본 시놀로지 서버에 존재하는 각 폴더들이 리스트 되어 있는 것을 알 수 있다.
바로 위에서 설명한 바와 같이 내 경우는 각 폴더별로 백업을 진행하려고 의도 했으므로, 리스트 된 폴더 중에 원하는 폴더 한개를 클릭하고 “다음”으로 넘어갔다. 추가적으로, 제일 아래쪽에 위치한 체크박스는 활성화 해 주지 않으면 “다음” 버튼이 비활성화 되어 다음 페이지로 진행되지 않으므로, 꼭 내용을 숙지하고 체크해 주어야 한다.
위의 단계에서 “다음”을 클릭하면, 아래와 같이 “동기화 대상 설정” 창이 표시된다.
가장 중요한 단계인 듯 하다. 동일 네트워크 내에 원본과 대상 시놀로지 서버가 위치해 있다면, “서버 이름이나 IP 주소” 항목에 대상 시놀로지 서버의 IP 주소 또는 QuickConnect ID를 입력하면 된다. 하지만 원본서버와 대상서버가 서로 다른 네트워크에 위치하는 경우라면 이 항목은 대상 시놀로지 서버의 DDNS URL을 입력해 주어야 한다. 또한, 대상 시놀로지 서버가 연결되어 있는 라우터에서 rsync 서비스를 위한 TCP 873 포트를 개방 시켜 주어야 한다.
위 “동기화 대상 설정” 창의 옵션 항목에 대해서 아래 테이블에 정리하여 보았다.
내 경우에는 모든 항목을 체크하지 않은 상태에서 이후 설정을 진행하였고, 특별히 “블록 수준 동기화 활성화”를 선택해 주지 않더라도 모든 원본서버 폴더에 있는 파일들이 대상폴더로 다시 백업되는 것이 아니라, 변경된 파일이나 새로 추가된 파일들만 백업되는 것으로 확인된다.
| 항목 | 설명 |
| 암호화된 공유 폴더 동기화에SSH 암호화 포트 사용자 지정 | SSH 전송 암호화를 위해 원하는 암호화 포트를 지정한다. |
| SSH 전송 암호화 활성화 | 전송 중 데이터를 암호화 한다. 이 기능은 높은 보안성을 제공하지만 암호화하지 않고 전송하면 성능이 향상된다. |
| 전송 압축 활성화 | 전송 중 데이터를 압축한다 이 기능을 사용하면 네트워크 대역폭이 절약되지만 CPU 로딩시간이 증가 한다. |
| 블록 수준 동기화 활성화 | 전체 파일이 아니라 수정된 데이터만 전송한다. 이 기능을 사용하면 네트워크 대역폭이 절약 되지만 CPU 로딩시간이 증가한다. |
| 원격 탑재 폴더 동기화 | CIFS 공유 폴더와 NFS 공유 폴더를 포함하여 원격 탑재된 폴더를 동기화 한다. |
다음과 같이 “연결 테스트 성공” 이라는 메세지가 표시된다면, 접속에 성공한 것을 의미한다.
만약, 다음과 같은 메세지가 표시되었다면, 대상 시놀로지 서버의 “rsync 서비스 활성화”가 제대로 활성화 되었는지 확인할 필요가 있다.
연결 테스트에 성공한 후, “다음”을 클릭하면 아래와 같은 어떤 방법으로 공유 폴더 동기화를 수행할 것인가를 선택할 수 있는 3가지 옵션이 표시된다. 나의 경우는 내가 원하는 시기에 내가 직접 동기화를 수행할 것이기 때문에 “수동으로 동기화 실행”을 선택해 주었다.
이 단계를 마치고 “다음”을 클릭하면, 다음과 같이 설정내역을 확인하라는 창이 표시된다.
3. 공유 폴더 동기화의 실행
작업목록에 생성된 작업내역 중에 한개를 선택하고, “지금 동기화”를 실행하면, 아래와 같이 동기화가 시작된다.
공유 폴더 동기화를 실행한 후, 동기화가 성공하면 상태는 “유휴”로 변경되어 표시되며, 마지막 동기화 결과는 “성공”으로 바뀌게 된다.
인터넷을 검색하다 보면 시놀로지 서버에서 시놀로지 서버로 백업을 수행하는 다양한 방법을 소개하고 있다. 하지만, 내 경우에는 “공유 폴더 동기화”를 이용하는 방법이 가장 적합한 것 같다. 이 글은 시놀로지사의 공유 폴더 동기화 문서를 참고하였으니, 추가적으로 참고해 보시기 바란다.









