안녕하세요 오늘은 Synology NAS에 Rclone 설치 방법을 알아 보도록 하겠습니다.
Youtube (구독과 좋아요)
[Rclone 관련 1번째 영상] Rclone, Plexdrive 사용을 위한 Google Drive API 발급방법.
[Rclone 관련 2번째 영상] Windows에 Rclone 설치 및 설정(연동) 방법.
[Rclone 관련 3번째 영상] Synology NAS에 Rclone 설치 및 마운트..
fusion_youtube id=”https://youtu.be/3gmKomJj8Ls” alignment=”” width=”800″ height=”” autoplay=”false” api_params=”” title_attribute=”” video_facade=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” css_id=””][/fusion_youtube]
1. Synology SSH 활성화
Synology DSM(NAS)에 접속을 합니다.
1) “제어판”을 클릭 합니다.
2) “터미널 및 SNMP”를 클릭 합니다.
(만약 터미널 및 SNMP가 안보인다면 오른쪽위에 “고급 모드” 라고 적혀 있는부분을 클릭 합니다.)
3) “SSH 서비스 활성화”를 체크 하세요
4) 포트를 기억 하세요 (Default : 22)
5) “적용”을 클릭 합니다.
2. Synology SSH 접속
6) Host Name에 (NAS IP)을 입력 합니다. (예: 192.168.1.2)
7) 위에 4번 항목의 포트를 입력 합니다. (예: 22)
8) “Open” 클릭 합니다.
* Putty로 NAS에 처음 접속하면 메시지창이 하나 뜨는데 그냥 “Yes”를 클릭 하면 됩니다.
9) “NAS ID”를 입력 합니다. (예: admin)
10) “NAS PW”를 입력 합니다. (예: password)
11) “sudo -i” 를 입력하여 root 로 접속 합니다.
sudo -i
12) 다시한번 “NAS PW”를 입력합니다.10번 항목을 그대로 입력하면 됩니다. (예: password)
3. rclone 다운로드 및 설치
13) wget 명령어를 이용하여 rclone을 다운 받습니다.
(참고로 저는 인텔 CPU를 사용하기에 amd64를 받습니다.
만약 본인 CPU가 arm이면 arm 버전으로 다운 받으시면됩니다.
설명을 위해 3가지 항목을 다 적었지만 실제로는 1개만 하시면됩니다.
간단하게 amd64는 PC, arm은 안드로이드 핸드폰이나 태블릿으로 이해 하시기 바랍니다)
* 2019년 10월 27일 현재 최신 버전 1.49.5
amd64 버전일 경우
wget https://downloads.rclone.org/v1.49.5/rclone-v1.49.5-linux-amd64.zip
arm32 버전일 경우
wget https://downloads.rclone.org/v1.49.5/rclone-v1.49.5-linux-arm32.zip
arm64 버전일 경우
wget https://downloads.rclone.org/v1.49.5/rclone-v1.49.5-linux-arm64.zip
14) 다운 받은 rclone의 압축을 풉니다. (사진에 번호를 깜박했네요..)
*위와같이 압축이 안풀릴때는 버전을 확인해보세요
amd64 버전일 경우
7z x rclone-v1.49.5-linux-amd64.zip
arm32 버전일 경우
7z x rclone-v1.49.5-linux-arm32.zip
arm64 버전일 경우
7z x rclone-v1.49.5-linux-arm64.zip
15) 압축푼 폴더로 이동을 합니다.
cd rclone-v1.49.5-linux-amd64
16) 해당 디렉토리에 압축이 제대로 풀렸는지 파일을 확인합니다.
ls
17) rclone 파일을 사용하기 편하게 /usr/bin으로 이동합니다.
(/usr/bin은 기본적을 Path가 등록되어있습니다.)
mv rclone /usr/bin
18) 권한 설정 후 rclone이 제대로 작동하는지 실행해 봅니다.
(권한 설정은 깜박하고 사진을 못찍었네요)
chwon root:root /usr/bin/rclone rclone
4. rclone 설정
19) rclone을 설정을 위해 아래 명령어를 입력 합니다.
rclone config
20) 새로운 Remote를 만들기 위해 “n”을 입력 합니다.
n
21) 연결할 이름을 생성합니다. 저는 “Gdrive”를 입력 하겠습니다.
*대소문자 구분
Gdrive
22) Rclone으로 연결할수 있는 클라우드가 여러가지 보입니다.
우리는 Google Drive를 사용할기 위해 번호인 “12” 혹은 “drive”를 입력 합니다.
drive
23) Gdrive “Client ID”를 입력 합니다.
24) Gdrive “Client Secret”를 입력 합니다.
Client ID 및 Client Secret을 입력 합니다.
Client ID 및 Client Secret은 Google Drive API 발급 방법 을 참고하시면 됩니다.
(Google Drive API 발급 방법 포스트 20, 21번이 Client ID 및 Client Secret 입니다)
* 웹 브라우저에서 복사한 내용을 Putty에서 붙여 넣기할때에는 마우스 우클릭을 하면 붙여 넣기가 됩니다.
25) 모든 파일을 액세스 하기 위해 “1”을 입력 합니다.
1
26) root_folder_id를 입력하라는 메시지가 보입니다. 그냥 “엔터”를 눌러 넘어 갑니다. (기본 : 공백)
27) service)account_file을 입력하라는 메시지가 보입니다. 그냥 “엔터”를 눌러 넘어갑니다. (기본 : 공백)
28) 고급설정은 진행하지 않도록 하겠습니다. “n” 입력
29) 자동 설정 사용에서 “n”을 입력 합니다.
30) https: 링크를 복사해서 크롬 같은 웹브라우저에 붙여 넣기합니다. 전 크롬을 사용 하도록 하겠습니다.
(~~~link : 뒤에서 부터 시작해서, Log in and 윗줄까지 복사하면 됩니다. : 빨간줄 참조 )
* Putty에서 복사는 마우스 드레그만 해주면 됩니다.
31) Gdrive를 사용하는 계정으로 로그인 합니다.
32) “고급”을 클릭 합니다.
33) “PlexDrive(으)로 이동(안전하지 않음)”을 클릭 합니다.
(PlexDrive가 아니라 기존 설정에 따라 다르게 적혀저 있을수도 있습니다)
34) 권한 부여 항목에서 “허용”을 클릭 합니다.
35) Google 드라이브 파일포기, 수정, 생성, 삭제에 체크를 확인하세요
36) “허용” 버튼을 클릭 합니다.
37) 인증 코드가 보입니다.
38) 복사 아이콘을 “클릭”하여 코드를 복사 합니다.
39) 38에서 복사한 코드를 Enter verification code에 붙어 넣기 합니다.
(Putty에서 붙여 넣긴는 마우스 우클릭 입니다)
40) 본인이 사용하는 것이 팀드라이브 인지 확인 합니다 전 팀드라이브가 아니라 “n”을 입력 합니다.
41) 설정을 확인 후 “Y”를 입력 합니다.
42) Gdrive의 설정이 완료된것을 확인할수 있습니다.
43) “q”를 입력하여 설정을 종료합니다.
5. Synology rclone 자동 실행 등록
rclone 설정이 끝났으니 Synology NAS가 재부팅 될때 마다 자동으로 rclone이 실행되도록 등록 하도록 하겠습니다.
44) NAS에서 제어판 실행 후 “작업 스케줄러”를 클릭 합니다.
45) 상단 메뉴 중 생성 옆에 역삼각형을 클릭 합니다.
46) “트리거된 작업”을 클릭 합니다.
47) “사용자 정의 스크립트”를 클릭 합니다.
48) 작업 명을 rclone으로 입력 합니다.
49) 사용자는 root 입니다. (기본 root)
50) 이벤트는 “부트업”으로 합니다. (부팅시에 자동실행을 하기 위해)
51) 활성화됨을 “체크” 합니다.
52) 상단 메뉴 중 “작업 설정”을 클릭 합니다.
53) 사용자 정의 스크립을 입력 합니다.
저는 rclone으로 /volume2/Download/Data/Mnt/rclone1을 Gdrive에 마운트합니다.
rclone mount Gdrive: /volume2/Download/Data/Mnt/rclone1 --daemon --allow-other --config /root/.config/rclone/rclone.conf
예를 들어 /volume1/rclone을 마운트 하려면 아래와 같이 입력을 합니다.
(빨간색으로 표시한 부분이 마운트 디렉토리 위치 입니다)
* Gdrive: 한칸뛰고 /volume1/rclone 입니다.
예1) rclone mount Gdrive: /volume1/rclone --daemon --allow-other --config /root/.config/rclone/rclone.conf
♠명령어 설명
rclone : 실행 파일 명령어
mount : 마운트 명령어
Gdrive : 위에 21번 항목에서 입력한 이름입니다.
/volume2/Download/Data/Mnt/rclone1 : 제가 마운트할 디렉토리 입니다.
–daemon : 데몬설정인데 작업 스케줄러에서는 안넣어도 상관 없습니다.
–allow-other : 권한 설정입니다.
–config /root/.config/rclone/rclone.conf : 작업 스케줄러에서 rclone 설정시 rclone.conf을 찾지 못하기 때문에 설정을 해줍니다.
마운트할 디렉토리 경로 확인 방법은 아래 사진을 확인 하시면 됩니다.
54) NAS에서 file station을 실행하고 마운트할 디렉토리(폴더)로 이동 합니다.
해당 디렉토리에서 마우스 우클릭 후 속성을 클릭 합니다.
55) 속성 항목중 위치:에 나오는 항목을 입력하시면 됩니다.
오늘은 이것으로 Synology NAS에서 rclone 다운로드, 설치, 설정, 자동실행 하는 방법까지 알아보았습니다.
혹시나 궁금한것이나 잘안되는부분있으면 댓글을 남겨 주시기 바랍니다.
앗!!! 감사합니다~~ 머리가 나빠 몇일 걸릴지 모르겠지만 열심히 해볼께요~
감사합니다. 오늘도 어느정도 쉽게 해나갔는데 53번부터 질문좀 드릴께요.
53번에 저는 마운트 폴더를 Gdrive로 했습니다.
스크립은 이렇게 했고요.
rclone mount Gdrive: /volume1/Gdrive –daemon –allow-other –config /root/.config/rclone/rclone.conf
마지막 54번은 volume1/Gdrive 폴더고요. 55번은 폴더 마우스 우클릭 속성에서 위치는
그냥 기본으로 /volume1/Gdrive 이렇게 되어 있습니다.
앞에서는 아무문제 없었는데 구글드라이브 마운트가 않됩니다.
주인장님과 다른점은 40번에서 저는 팀드라이브고 “Y” 입력
입력후 팀드라이브 아이디 입력하라고 나와서 팀드라이브 아이디 입력.
그리고 바로 41번으로 넘거갔습니다.
뭐가 문제인지 모르겠습니다…
혹시 putty에서 ssh 접속을해서 아래 명령어를 하면 마운트 되기는 하나요?
rclone mount Gdrive: /volume1/Gdrive –daemon –allow-other
앗 그리고 daemon, allow-other, config 앞에 전부다 – – 2개에요 명령어 보니 전부다 1개만 들어가있네요
수정헐곳 다시 하고 PYTTY에서 마윤트 시키면 아래와 같이 출력됩니다.
Error: unknown flag: –allow
Usage:
rclone mount remote:path /path/to/mountpoint [flags]
Flags:
–allow-non-empty Allow mounting over a non-empty directory.
–allow-other Allow access to other users.
–allow-root Allow access to root user.
–attr-timeout duration Time for which file/directory attributes are cached. (default 1s)
–daemon Run mount as a daemon (background mode).
–daemon-timeout duration Time limit for rclone to respond to kernel (not supported by all OSes).
–debug-fuse Debug the FUSE internals – needs -v.
–default-permissions Makes kernel enforce access control based on the file mode.
–dir-cache-time duration Time to cache directory entries for. (default 5m0s)
–dir-perms FileMode Directory permissions (default 0777)
–file-perms FileMode File permissions (default 0666)
–fuse-flag stringArray Flags or arguments to be passed direct to libfuse/WinFsp. Repeat if required.
–gid uint32 Override the gid field set by the filesystem.
-h, –help help for mount
–max-read-ahead SizeSuffix The number of bytes that can be prefetched for sequential reads. (default 128k)
–no-checksum Don’t compare checksums on up/download.
–no-modtime Don’t read/write the modification time (can speed things up).
–no-seek Don’t allow seeking in files.
-o, –option stringArray Option for libfuse/WinFsp. Repeat if required.
–poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s)
–read-only Mount read-only.
–uid uint32 Override the uid field set by the filesystem.
–umask int Override the permission bits set by the filesystem.
–vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s)
–vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off)
–vfs-cache-mode CacheMode Cache mode off|minimal|writes|full (default off)
–vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s)
–vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M)
–vfs-read-chunk-size-limit SizeSuffix If greater than –vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. ‘off’ is unlimited. (default off)
–volname string Set the volume name (not supported by all OSes).
–write-back-cache Makes kernel buffer writes before sending them to rclone. Without this, writethrough caching is used.
Use “rclone [command] –help” for more information about a command.
Use “rclone help flags” for to see the global flags.
Use “rclone help backends” for a list of supported services.
2019/10/28 14:28:25 Fatal error: unknown flag: –allow
혹시 PlexDrive 드라이버 설치할때 사용한 Google API를 사용했는데 그것때문에 그럴 수 있을까요??
혹시 – 이거 2개로 하셨나요? —
rclone mount Gdrive: /volume1/Gdrive –daemon –allow-other –config /root/.config/rclone/rclone.conf
이렇게 수정했습니다.
PUTTY 마운트할때 뒤에 명령어가 더 들어갔나봐요.
root@XXXXXX:~# rclone mount Gdrive: /volume1/Gdrive –daemon –allow-other
2019/10/28 14:37:46 Fatal error: Directory is not empty: /volume1/Gdrive If you want to mount it anyway use: –allow-non-empty option
명령어 넣었을때 이렇게 나오네요.
혹시 -other 이거는 -이거 하나만 들어가나요?? –allow이거뒤에 붙어서 말이죠..
답글 수정이 안되네요..
rclone mount Gdrive: /volume1/Gdrive –daemon –allow-other –config /root/.config/rclone/rclone.conf
-거 두개씩 이요..
명령어 확인해봤는데 맞고요. 블로그기가 – 2개가 표기가 안되네요
위에 에러 메시지는 디렉토리가 비어있지 않다고하네요 /volume1/Gdrive 안에 혹시 파일이 있나요?
만약있다면 다른곳으로 옮기거나 삭제하시고 다시한번 해보세요
바쁘신데 저때문에 고생하십니다. 빈폴더 맞아요. 집에가서 처음부터 차근차긴 다시해봐야 겠습니다.
혹시나 안되시면 카카오톡 apfhdckd 으로 연락주세요
한글로는 메롱창 입니다.
제가 원겨이나 DSM ID 하나 만들어주시면 들어가서 확인을 해볼게요
안녕하세요. 좋은아침 입니다.
몇번을 다시하다 전에 해봤었던 Rclone 관련 파일을 모두 삭제하고, Google API키도 Rclone용으로 새로 발급받고 이런 저런 방법을 해봤더니 putty에서 ssh 접속해서 마운트하면 에러 메세지는 안나옵니다.
Usage:
rclone mount remote:path /path/to/mountpoint [flags]
Flags:
–allow-non-empty Allow mounting over a non-empty directory.
–allow-other Allow access to other users.
–allow-root Allow access to root user.
–attr-timeout duration Time for which file/directory attributes are cached. (default 1s)
–daemon Run mount as a daemon (background mode).
–daemon-timeout duration Time limit for rclone to respond to kernel (not supported by all OSes).
–debug-fuse Debug the FUSE internals – needs -v.
–default-permissions Makes kernel enforce access control based on the file mode.
–dir-cache-time duration Time to cache directory entries for. (default 5m0s)
–dir-perms FileMode Directory permissions (default 0777)
–file-perms FileMode File permissions (default 0666)
–fuse-flag stringArray Flags or arguments to be passed direct to libfuse/WinFsp. Repeat if required.
–gid uint32 Override the gid field set by the filesystem.
-h, –help help for mount
–max-read-ahead SizeSuffix The number of bytes that can be prefetched for sequential reads. (default 128k)
–no-checksum Don’t compare checksums on up/download.
–no-modtime Don’t read/write the modification time (can speed things up).
–no-seek Don’t allow seeking in files.
-o, –option stringArray Option for libfuse/WinFsp. Repeat if required.
–poll-interval duration Time to wait between polling for changes. Must be smaller than dir-cache-time. Only on supported remotes. Set to 0 to disable. (default 1m0s)
–read-only Mount read-only.
–uid uint32 Override the uid field set by the filesystem.
–umask int Override the permission bits set by the filesystem.
–vfs-cache-max-age duration Max age of objects in the cache. (default 1h0m0s)
–vfs-cache-max-size SizeSuffix Max total size of objects in the cache. (default off)
–vfs-cache-mode CacheMode Cache mode off|minimal|writes|full (default off)
–vfs-cache-poll-interval duration Interval to poll the cache for stale objects. (default 1m0s)
–vfs-read-chunk-size SizeSuffix Read the source objects in chunks. (default 128M)
–vfs-read-chunk-size-limit SizeSuffix If greater than –vfs-read-chunk-size, double the chunk size after each chunk read, until the limit is reached. ‘off’ is unlimited. (default off)
–volname string Set the volume name (not supported by all OSes).
–write-back-cache Makes kernel buffer writes before sending them to rclone. Without this, writethrough caching is used.
Use “rclone [command] –help” for more information about a command.
Use “rclone help flags” for to see the global flags.
Use “rclone help backends” for a list of supported services.
Command mount needs 2 arguments maximum: you provided 4 non flag arguments: [“Gdrive:” “/volume1/Gdrive” “–daemon” “–allow-other”]
.
이런 메세지가 나오네요. 이게 정상적으로 마운트가 된건지 알수가 없어요.. html코드도 사용해본 적이 없는 사람이라..
신경써주셔서 감사합니다. 연결이 성공하면 점심값정도라도 후원 드리겠습니다. 마눌에게 용돈받는 입장이라 크게는 못드릴것같아 죄송할 따름입니다.
DSM ID는 권한을 관리자로 만들어 드리면 되나요??
네 관리자 권한까지 필요한지는 잘모르겠지만
제어판 작업 스케줄에 접속만할수 있으면될거 같아요
안녕하세요. 모르는거 여쭐때가 여기밖에 없어서 또 왔습니다~
혹시 Docker에 Tvheadend 설치방법도 알려 주실수 있을까요..??
어떤분은 이제 안된다, 어떤분은 아직도 된다 하시는 분들이 계셔서 해봤는데
Tvheadend에 채널 목록은 올라오는데 방송을 볼 수 는 없네요..
제가 뭔가를 실수 한건지.. 역시 제일 쉽게 알려주시는분이 쥔장님 뿐인지라…
아 그리고 PLEX관련 자막이 말썽이라 찾아보니 시놀로지 /var/packages/Plex Media Server/scripts
여기에 접속 스크립 수정하면 된다는데 Putty에서 여기 접속을 못하겠네요..
답답하시죠..?? 쓰는저도 미치겠네요~
비도 많이 오는데 비피해 없으시길 바랍니다~
iptv를 tvheadend로 사용하실 생각이면
그냥 안된다고 생각하시는게 편할것 같아요
요즘 방송사에서 암호화를 걸어서 송출하거든요
만약 지역 케이블인데 셋탑 없이 사용하시고 홈런이란 장비가 있다면 tvheadend로 가능할수도 있습니다
말그대로 송출방식에 따라 될수도 있고 안될수도 있어요ㅠㅜ
혹시 plex 자막은 어떤문제인가요?
네 답글 감사합니다. 포기할건 빨리 해여죠~ 자막은 어떤 영상은 자막없음으로 나오고 어떤건 잘나오고 특히 TV쇼로 만든 라이브러리에서 그런경우가 많이 있네요.. 인터넷상에 떠드는 방법들을 해봤는데 다 않되요. 스크립을 수정하면 된다는데 그방법은 위에 언급했듯이 접속 방법을 모르겠고요..
잘봤습니다. 권한설정부분에 오타가 있는것 같습니다.
chwon -> chown으로 바꿔주니 잘되네요.
–allow-other 명령어를 사용하면 마운트가 안되고 –allow-non-empty 를 쓰면 마운트는 되지만 권한이 없는지 쓰기가 안됩니다. –allow-other 과 –allow-non-empty 를 같이 쓸 수 있나요