Mount External Cloud : Rclone
Rclone 소개
Rclone은 현존하는 거의 모든 Cloud Storage를 NAS나 PC 같은 장치에 Local Device 처럼 마운트 시켜 사용 할 수 있게 해줍니다.
단순 마운트만 되는게 아니라 캐쉬기능까지 지원하여 마운트된 자료를 전혀 끊김 없이 이용할 수 있습니다.
OS 또한 거의 모든 OS를 지원하며,
거의 모든 Cloud Storage를 지원한다고 보시면 됩니다. 아래는 현재 최신버전인 v1.62.2 기준 지원하는 Cloud Storage 입니다.
| Name | Hash | ModTime | Case Insensitive | Duplicate Files | MIME Type | Metadata |
|---|---|---|---|---|---|---|
| 1Fichier | Whirlpool | - | No | Yes | R | - |
| Akamai Netstorage | MD5, SHA256 | R/W | No | No | R | - |
| Amazon Drive | MD5 | - | Yes | No | R | - |
| Amazon S3 (or S3 compatible) | MD5 | R/W | No | No | R/W | RWU |
| Backblaze B2 | SHA1 | R/W | No | No | R/W | - |
| Box | SHA1 | R/W | Yes | No | - | - |
| Citrix ShareFile | MD5 | R/W | Yes | No | - | - |
| Dropbox | DBHASH ¹ | R | Yes | No | - | - |
| Enterprise File Fabric | - | R/W | Yes | No | R/W | - |
| FTP | - | R/W ¹⁰ | No | No | - | - |
| Google Cloud Storage | MD5 | R/W | No | No | R/W | - |
| Google Drive | MD5 | R/W | No | Yes | R/W | - |
| Google Photos | - | - | No | Yes | R | - |
| HDFS | - | R/W | No | No | - | - |
| HiDrive | HiDrive ¹² | R/W | No | No | - | - |
| HTTP | - | R | No | No | R | - |
| Internet Archive | MD5, SHA1, CRC32 | R/W ¹¹ | No | No | - | RWU |
| Jottacloud | MD5 | R/W | Yes | No | R | - |
| Koofr | MD5 | - | Yes | No | - | - |
| Mail.ru Cloud | Mailru ⁶ | R/W | Yes | No | - | - |
| Mega | - | - | No | Yes | - | - |
| Memory | MD5 | R/W | No | No | - | - |
| Microsoft Azure Blob Storage | MD5 | R/W | No | No | R/W | - |
| Microsoft OneDrive | QuickXorHash ⁵ | R/W | Yes | No | R | - |
| OpenDrive | MD5 | R/W | Yes | Partial ⁸ | - | - |
| OpenStack Swift | MD5 | R/W | No | No | R/W | - |
| Oracle Object Storage | MD5 | R/W | No | No | R/W | - |
| pCloud | MD5, SHA1 ⁷ | R | No | No | W | - |
| premiumize.me | - | - | Yes | No | R | - |
| put.io | CRC-32 | R/W | No | Yes | R | - |
| QingStor | MD5 | - ⁹ | No | No | R/W | - |
| Seafile | - | - | No | No | - | - |
| SFTP | MD5, SHA1 ² | R/W | Depends | No | - | - |
| Sia | - | - | No | No | - | - |
| SMB | - | - | Yes | No | - | - |
| SugarSync | - | - | No | No | - | - |
| Storj | - | R | No | No | - | - |
| Uptobox | - | - | No | Yes | - | - |
| WebDAV | MD5, SHA1 ³ | R ⁴ | Depends | No | - | - |
| Yandex Disk | MD5 | R/W | No | No | R | - |
| Zoho WorkDrive | - | - | No | No | - | - |
| The local filesystem | All | R/W | Depends | No | - | RWU |
사전준비
Google API 설정
Rclone 연결 시 Google API를 이용하기 위한 내용입니다.
기본으로 제공되는 Rclone 인증을 사용하고자 하신 다면 이 과정은 넘어가셔도 됩니다.
Google API를 사용하기 앞서 첫번째로 Google 계정이 있어야 합니다.
Google API 발급 및 관리 홈페이지는 https://console.cloud.google.com/ 이며,
정리 자료는 Google의 개편에 따라 달라질 수 있습니다.
프로젝트를 먼저 등록 ( 프로젝트 만들기 > 만들기 )해야 합니다.
이미 있으시다면 Google APIs 옆 프로젝트 선택에서 프로젝트 선택하면 됩니다.
좌측 메뉴에서 "API 및 서비스 > 라이브러리"로 이동 합니다.
"Google Drive API" 찾아 설치 합니다.
설치가 됐으면 아래 메뉴가 나옵니다.
"사용자 인증 정보"로 들어가 "사용자 인증 정보 만들기 > OAuth 클라이언트 ID"를 선택 하고 단계를 진행 합니다.
OAuth 2.0 클라이언트의 유형은 "테스크톱 클라이언트"로 설정 합니다.
"OAuth 동의 화면"을 설정해야 합니다.
여기서 주의 점은 "게시상태"는 "테스트", "사용자 유형"은 "외부"로해야 합니다.
("내부"의 경우 Enterprise Workspace 계정이 필요 합니다.)
"ADD USER"를 눌러 Google API를 사용할 사용자 계정을 등록해 줍니다. (Google Drive의 계정을 넣으시면 됩니다.)
설정을 마치고 "사용자 인증 정보"에 가면 아래와 같은 화면이 나옵니다.
생성된 클라이언트인 "데스크톱 클라이언트1"을 선택을하면 "클라이언트 ID"와 "클라이언트 보안 비밀번호"의 생성을 확인 하실 수 있습니다.
설치
자동설치
Rclone Official에 있는 설치 sh파일을 다운로드 받아 간단히 설치를 진행하는 방법입니다.
아래 명령 이후 나오는 안내에 따라 진행하시면 됩니다.
sudo -v ; curl https://rclone.org/install.sh | sudo bash
수동설치 (권장)
먼저 Rclone 공식 홈페이지에 가서 최신버전을 확인 합니다. (https://rclone.org/downloads/)
현 작성일 기준 최신버전은 "v1.64.2" 입니다. 향후 버전이 바뀔 시 변경된 버전을 수정해 넣으시면 됩니다.
아래 글은 "v1.63.1" 기준으로 작성이 되었습니다.
1. root 권한으로 변경 합니다.
sudo -i
2. 최신 Rclone 파일을 다운로드 합니다.
cd /volume1/.../ #원하는 다운로드 위치로 이동
wget https://downloads.rclone.org/v1.64.2/rclone-v1.64.2-linux-amd64.zip
"v1.64.2" 버전 부분은 위에서 확인한 최신버전을 넣어 줍니다. (아래도 동일)
3. 다운받은 파일의 압축을 해제 합니다.
7z x rclone-v1.64.2-linux-amd64.zip
4. 압축해제된 Rclone 파일을 복사해 줍니다.
cp rclone-v1.64.2-linux-amd64/rclone /usr/bin/rclone
5. Rclone 디렉토리의 권한을 변경해 줍니다.
chmod a+x /usr/bin/rclone
6. Rclone 디렉토리의 소유자를 변견해 줍니다.
chown root:root /usr/bin/rclone
7. Rclone 설치가 끝났습니다. 마지막으로 설치된 버전을 확인 합니다.
rclone --version
설치된 버전을 확인해 주세요.
업데이트
자동업데이트
Rclone 설치 이후 아래 명령을 실행하면 자동으로 최신 Stable 버전으로 업데이트가 진행 됩니다.
rclone selfupdate --stable
v1.64.0 또는 v1.64.1에서 v1.64.2로 올릴 실때는 해쉬값이 깨져 동작하지 않습니다. 이 경우 매뉴얼로 신규 설치가 필요합니다.
https://forum.rclone.org/t/rclone-v1-64-2-release/42399
Remote 생성 (Config 설정)
Google Drive Remote 생성
첫번째로 Rclone Config를 설정할 계정을 선택합니다.
이 부분이 중요한 이유가 root의 경우 "/root/.config/rclone/rclone.conf"에 Config 파일이 생성되고,
개인 계정일 경우 "home/계정" 밑에 "rclone.conf"가 생성 됩니다.
나중에 mount할때도 같은 권한을 가져야만 mount가 가능하고, "rclone.conf" 위치를 맞게 지정해 주셔야 합니다.
본 예제의 경우 root로 Config 를 설정하도록 하겠습니다.
sudo -i
root 권한을 취즉하고 Rclone의 Config 명령을 실행 합니다.
rclone config
명령를 실행하면 나오는 매뉴는 아래와 같으며, 여기서 신규 리모트를 생성해 줍니다.
n
다음은 리모트를 생성할 드라이브 형태 입니다. (Reclone 버전에 따라 변동 가능)
"Google Drive"를 선택 합니다.
...
Choose a number from below, or type in your own value> 18
client_id와 client_secret은 앞서 사전준비한 Google API에서 부여 받은 "클라이언트 ID"와 "클라이언트 보안 비밀번호"를 각각
넣어주셔야하며, 이 값은 "https://console.cloud.google.com/"의 아래 화면에서 찾을 수 있습니다.
만일 Google API 사용을 희망하지 않으시다면 이 부분은 그냥 "Enter"로 비워 놓고 넘어가시면 됩니다.
client_id> Google API 클라이언트 ID (or "Enter")
client_secret > Google API 클라이언트 보안 비밀번호 (or "Enter")
리모트할 Google Drive의 읽기/쓰기 권한 설정 단계 입니다.
모든 권한을 원하시면 1번을 선택하시고, 읽기만 원하신다면 2번을 선택하시면 됩니다. 예제에는 1번을 선택하도록 하겠습니다.
scope> 1
"JSON path" 설정 관련으로 그냥 "엔터"로 넘어갑니다.
service_account_file> "Enter"
"Edit advanced config"는 "No (default)"를 선택합니다.
y/n> n
이제 Google Drive 연결을 인증할 차례이며, 인증을 위한 Token 값이 필요 합니다.
예전에는 간단했는데 Rclone이 v1.58이상으로 바뀌면서 방식이 조금 복잡해 졌습니다.
간단히 말씀드리면 시놀로지 서버가 아닌 다른 장치에서 Token 값을 얻어야 합니다.
제 경우 윈도우에서 진행하도록 하겠습니다.
윈도우용 rclone을 다운 받습니다. ('https://rclone.org/downloads/'에서 맞는 버전을 받으시면 됩니다.)
(제 경우 "D드라이브"에 다운로드를 받아 압축을 풀었습니다.)
윈도우 명령프롬프트를 관리자 권한을 실행하고 윈도우용 Rclone이 있는 위치로 이동합니다.
다시 시놀로지 SSH 화면으로 돌아가서 'Use auto config?'에서 "No"를 선택합니다.
y/n > n
그리면 Token 값을 얻기 위한 특정 값이 나옵니다. 이걸 복사해 줍니다.
(rclone authorize "drive" "xxxxxxxxxxxxxxxxx"를 오른쪽 마우스 눌러 복사 선택)
D:\rclone>rclone authorize "drive" "xxxxxxxxxxxxxxxxx"
Google 로그인이 나오면 사용하시는 Google Drive의 계정으로 로그인 합니다.
Rclone의 Google 계정 액서스를 "허용"해 줍니다.
인증이 완료되면 아래와 같이 "Sucess!" 메시지가 나오고 브라우저 창을 닫으시면 됩니다.
윈도우의 명령프롬프트에 가보면 아래와 같이 Google로 받은 Token 값이 나옵니다.
"--->" 뒤부터 "<---" 앞까지 있는 값을 복사합니다. (값을 드레그한 후 오른쪽 마우스 버튼을 누르면 값이 복사 됩니다.)
시놀로지의 SSH 화면으로 돌아가서 "config_token"에 복사한 Token 값을 붙여 줍니다.
(붙여넣기기 잘 안되면 'config token>' 프롬프트에서 스페이스 한번 누르고 다시 백스페이스로 돌아와 붙이면 잘 붙여집니다.)
Tip으로 이 Token 값은 향후 변경되지 않으므로 메모장에 적어주시고 다른 리모트 생성 시 같은 값을 계속 사용하시면 됩니다.
config_token> 복사한 Token 값 붙여넣기
리모트 연결 할 Google Drive가 "공유드라이브"이면 "Yes"이고, 개인용 "내드라이브"이면 "No"를 선택 합니다.
예제의 경우 "내드라이브"인 "No"를 선택 했습니다.
y/n> n
마지막으로 최종적으로 저장하는 단계 입니다. 모든 설정이 이상 없다면 "Yes"를 선택합니다.
"Edit"를 선택하면 처음부터 윗단계를 다시 시작하게 됩니다.
y/e/d> y
아래와 같이 리모트 생성이 완료 되었습니다.
e/n/d/r/c/s/q> q
OneDrive Remote 생성
첫번째로 Rclone Config를 설정할 계정을 선택합니다.
이 부분이 중요한 이유가 root의 경우 "/root/.config/rclone/rclone.conf"에 Config 파일이 생성되고,
개인 계정일 경우 "home/계정" 밑에 "rclone.conf"가 생성 됩니다.
나중에 mount할때도 같은 권한을 가져야만 mount가 가능하고, "rclone.conf" 위치를 맞게 지정해 주셔야 합니다.
본 예제의 경우 root로 Config 를 설정하도록 하겠습니다.
sudo -i
root 권한을 취즉하고 Rclone의 Config 명령을 실행 합니다.
rclone config
명령를 실행하면 나오는 매뉴는 아래와 같으며, 여기서 신규 리모트를 생성해 줍니다.
n
다음은 리모트를 생성할 드라이브 형태 입니다. (Reclone 버전에 따라 변동 가능)
"OneDrive"를 선택 합니다.
Choose a number from below, or type in your own value> 31
client_id와 client_secret은 그냥 "Enter"로 비워 놓고 넘어가시면 됩니다.
client_id> "Enter"
client_secret > "Enter"
OneDrive의 Region을 선택하는 화면 입니다. 1번 Global을 선택해 줍니다.
region> 1
"Edit advanced config"는 "No (default)"를 선택합니다.
y/n> n
이제 OneDrive 연결을 인증할 차례이며, 인증을 위한 Token 값이 필요 합니다.
예전에는 간단했는데 Rclone이 v1.58이상으로 바뀌면서 방식이 조금 복잡해 졌습니다.
간단히 말씀드리면 시놀로지 서버가 아닌 다른 장치에서 Token 값을 얻어야 합니다.
제 경우 윈도우에서 진행하도록 하겠습니다.
윈도우용 rclone을 다운 받습니다. ('https://rclone.org/downloads/'에서 맞는 버전을 받으시면 됩니다.)
(제 경우 "D드라이브"에 다운로드를 받아 압축을 풀었습니다.)
윈도우 명령프롬프트를 관리자 권한을 실행하고 윈도우용 Rclone이 있는 위치로 이동합니다.
다시 시놀로지 SSH 화면으로 돌아가서 'Use auto config?'에서 "No"를 선택합니다.
y/n > n
그리면 Token 값을 얻기 위한 특정 값이 나옵니다. 이걸 복사해 줍니다.
(rclone authorize "onedrive"를 오른쪽 마우스 눌러 복사 선택)
D:\rclone>rclone authorize "onedrive"
Google 로그인이 나오면 사용하시는 OneDrive의 계정으로 로그인 합니다.
Rclone의 MS 계정 액서스를 "허용"해 줍니다.
인증이 완료되면 아래와 같이 "Sucess!" 메시지가 나오고 브라우저 창을 닫으시면 됩니다.
윈도우의 명령프롬프트에 가보면 아래와 같이 Google로 받은 Token 값이 나옵니다.
"--->" 뒤부터 "<---" 앞까지 있는 값을 복사합니다. (값을 드레그한 후 오른쪽 마우스 버튼을 누르면 값이 복사 됩니다.)
시놀로지의 SSH 화면으로 돌아가서 "config_token"에 복사한 Token 값을 붙여 줍니다.
(붙여넣기기 잘 안되면 'config token>' 프롬프트에서 스페이스 한번 누르고 다시 백스페이스로 돌아와 붙이면 잘 붙여집니다.)
Tip으로 이 Token 값은 향후 변경되지 않으므로 메모장에 적어주시고 다른 리모트 생성 시 같은 값을 계속 사용하시면 됩니다.
config_token> 복사한 Token 값 붙여넣기
OneDrive 유형은 1번을 선택해 줍니다.
config_type> 1
마지막으로 최종적으로 저장하는 단계 입니다. 모든 설정이 이상 없다면 "Yes"를 선택합니다.
"Edit"를 선택하면 처음부터 윗단계를 다시 시작하게 됩니다.
y/e/d> y
아래와 같이 리모트 생성이 완료 되었습니다.
e/n/d/r/c/s/q> q
마운트
기본 마운트 명령 및 옵션
기본 마운트 명령은 "rclone mount"로 진행 됩니다.
sudo rclone mount [리모트명]: [마운트위치] --config [Config 파일 위치] [옵션]
제가 사용하는 권장 [옵션]은 아래와 같습니다. [옵션]에 대한 세부 설명은 Rclone 홈페이지 (https://rclone.org/drive/)에서 확인 가능 합니다.
--allow-other
--allow-non-empty
--fast-list
--drive-skip-gdocs
--poll-interval=15s
--vfs-cache-mode full
--vfs-write-back 5s
--bwlimit-file 16M
--buffer-size=16M
--vfs-read-chunk-size=32M
--vfs-read-chunk-size-limit 2048M
--vfs-cache-max-size 100G
--vfs-cache-max-age 336h
--vfs-read-ahead 32M
--dir-cache-time=1000h
--log-level INFO
--log-file [로그위치][로그파일명].log
--cache-dir=[캐쉬위치]
--timeout 1h
--umask 000
마운트 해제는 "umount" 명령을 실행 하면 됩니다.
umount -l /리모트경로/리모트명
시놀로지 Rclone 마운트 예제
시놀로지 나스에 마운트하는 방식은 "작업 스케줄러"에 직접 스크립트를 넣거나 sh 파일을 만들어 이 파일을
불러오는 방식이 있습니다. sh파일 방식으로 설명을 드리겠습니다.
vi나 시놀로지의 패키지센터에서 "텍스트편집기" 앱을 받아 "GD.sh" 파일을 만들어 줍니다. 윈도우메모장에서 만들 경우 뒤에 '\t'가 자동 입력되어 에러가 날 수 있습니다.
시놀로지 "텍스트 편집기" 앱에서 sh 문장을 작성 시 편집기 하단 인코딩 오른쪽 드랍박스에서 "SH"를 선택 후 작성해 줍니다.
생성된 "GD.sh" 파일에 아래 내용을 추가 후 저장 합니다. ("--drive-skip-gdocs" Google Drive에만 해당 됩니다.)
#!/bin/bash
sleep 30
sudo mount --make-shared /volume1
#mount GD
sudo rclone mount test: /volume1/mount/test --config /root/.config/rclone/rclone.conf --allow-other --allow-non-empty --fast-list --drive-skip-gdocs --poll-interval=15s --vfs-cache-mode full --vfs-write-back 5s --bwlimit-file 16M --buffer-size=16M --vfs-read-chunk-size=32M --vfs-read-chunk-size-limit 2048M --vfs-cache-max-size 100G --vfs-cache-max-age 336h --vfs-read-ahead 32M --dir-cache-time=1000h --log-level INFO --log-file /volume1/data/rclone/Log/rclone.log --cache-dir=/volume1/data/rclone/Cache --timeout 1h --umask 000 &
Sample 파일 : sample.sh
아래와 같이 각 명령에 대한 간단한 설명을 드립니다.
1. "sleep 30"은 명령을 실행 시 30초 동안 delay를 주고 실행을 의미합니다. delay를 주는 이유는
NAS가 재부팅할 시 rclone 서비스가 올라오지 않은 상태에서 명령이 실행됨을 방지하기 위함 입니다.
즉, 재부팅 후 시놀로지가 부팅되고 30초 후에 rclone이 마운트 됩니다.
2. "mount --make-shared /volume1"로 마운트가 되는 위치에 대해 사전 선언을 해주셔야 rclone이 정상 마운트 됩니다.
rclone 마운트 위치에 따라 붉은색 "/volume1" 값을 수정해 주시면 됩니다.
3. "rclone mount test" 의 붉은색 "test"는 앞서 만든 rclone remote 명입니다. 명칭에 맞게 수정해 주시면 됩니다.
4. "--config /root/.config/rclone/rclone.conf "는 앞서 만든 rclone config 파일의 위치 입니다.
root 권한으로 생성을 했다면 이 위치를 지정하면되고, 다른 계정으로 했다면, "homes > 계정명" 밑에 config file이 존재 합니다.
생성한 상황에 맞게 수정을 하시면 됩니다.
5. "로그파일"과 "Cache"는 사전만들어 놓은 디렉토리에 생성이 되며, 예제 위치는 "/volume1/data/rclone/Log/rclone.log"와
"/volume1/data/rclone/Cache" 입니다. 위치가 틀리다면 이 부분을 수정해 주셔야 합니다.
6. 여러개 리모트를 마운트하려면 "sudo rclone mount ........" 끝에 "&" 표기하고 밑에 계속 만들어 주시면 됩니다.
"&"는 백그라운드 실행을 위미하며, "&"를 주지 않으면 가장 앞에 있는 1개 리모트만 마운트하고 종료 됩니다.
이 작성된 "GD.sh" 파일을 시놀로지 나스의 "작업 스케줄러" 실행 시켜 NAS의 부트업 시 자동 마운트로 사용하실 수 있습니다.
아래와 같이 "작업 스케줄러"에 적당한 명칭으로 생성해 주시고 사용자는 "root", 이벤트는 "부트업"으로 설정합니다.
Rclone Confg를 다른 계정으로 하셨다면 해당 계정으로 설정하시면 됩니다.
"GD.sh"를 연결시키는 명령입니다. "작업 편집 > 작업 설정 > 실행 명령"에 아래 스크립트를 넣으시면 됩니다.
사용자 정의 스크립트 > bash /경로명/GD.sh
마운트 결과를 확인 합니다.
기타활용
Copy 및 Move 명령
[기본명령]
* Move
rclone move [리모트명]:소스경로 [리모트명]타겟경로 [옵션]
* Copy
rclone copy [리모트명]:소스경로 [리모트명]타겟경로 [옵션]
or
rclone copyto [리모트명]:소스경로 [리모트명]타겟경로 [옵션]
"copyto"는 동일한 파일을 Skip하는 복사 방식입니다.
[예제]
* Move
sudo rclone move "GD:/AAA/BBB" "GD:/CCC/DDD/" --drive-server-side-across-configs=true --progress --transfers 20 --ignore-existing --delete-empty-src-dirs --drive-skip-shortcuts --drive-auth-owner-only
* Copy
sudo rclone copy "GD:/AAA/BBB" "GD:/CCC/DDD/" --drive-server-side-across-configs=true --progress --transfers 20 --ignore-existing --checksum --drive-skip-shortcuts
1. GD라는 리모트에 있는 "/AAA/BBB" 위치에 있는 모든 데이터를 GD라는 리모트에 "/CCC/DDD"라는 위치로 이동(또는 복사)
하는 명령 입니다.
2. 소스 및 타겟에 ""로 묶어준 이유는 만일 경로에 공백 (Space)가 있을 시 공백까지 인식시키기 위함 합니다.
3. 옵션 설명
--drive-server-side-across-configs=true : 리모트에 있는 데이터를 서버간의 직접 이동 (또는 복사) 목적 입니다.
이 옵션이 없으면 서버에서 명령을 실행하는 로컬로 데이터를 내려 받고
다시 서버로 업로드를 시키는 구조가 합니다.
--progress : 이동(또는 복사)이 진행되는 진행상태를 보여 줍니다.
--transfers 20 : 20개 파일단위씩 이동(또는 복사)을 진행 합니다.
--ignore-existing : 이동(또는 복사) 시 타켓에 동일 파일이 있을 시 이동(또는 복사)을 시키지 않습니다.
--delete-empty-src-dirs : 이 옵션을 주지 않으면 이동 후 파일은 이동되고 디렉토리(폴더)는 그대로 남게 됩니다.
이 옵션을 주면 이동 후 소스쪽에 있는 디렉토리(폴더)를 자동으로 지워 줍니다.
(copy 명령에는 해당사항이 없습니다.)
--checksum : 복사 이후 Checksum 값을 확인 합니다.
--drive-skip-shortcuts : 바로가기 파일을 건너 뜁니다.
--drive-auth-owner-only : 본인소유 파일만 이동합니다. (Copy는 해당사항 없습니다.)
중복파일 제거
rclone dedupe [리모트명]:타겟경로: --dedupe-mode first -v --tpslimit 9
"--dedupe-mode first" 옵션에 대한 설명은 아래와 같으며, 목적에 맞게 옵션을 수정하시면 됩니다.
--dedupe-mode first : 동일한 파일을 제거한 다음 첫 번째 파일을 유지합니다.
--dedupe-mode newest : 동일한 파일을 제거한 다음 최신 파일을 유지합니다.
--dedupe-mode oldest : 동일한 파일을 제거한 다음 가장 오래된 파일을 유지합니다.
--dedupe-mode largest : 동일한 파일을 제거한 다음 가장 큰 파일을 유지합니다.
--dedupe-mode smallest : 동일한 파일을 제거한 다음 가장 작은 파일을 유지합니다.
--dedupe-mode rename : 동일한 파일을 제거한 다음 나머지는 다른 이름으로 바꿉니다.
--dedupe-mode list : 중복 디렉토리 및 파일만 나열하고 변경 사항은 없습니다.
문제해결
1.62.x 마운트 문제 시 "fuse" 문제
failed to mount FUSE fs: fusermount: exec: "fusermount3": executable file not found in $PATH
문제에 대해 설명을 드리면 1.62.x 부터는 fuse3를 기본으로 사용하고 시놀로지는 fuse2만 지원합니다. (특정 리눅스도 동일)
또한 이 경우 fuse3를 설치할 방법도 없는 상황입니다.
여기서 rclone PM 분이 준 아이디어가 symlink 입니다.
symlink는 논리적인 바로가기 기능으로 fuse3 이름으로 임의의 바로가기를 만들고 여기에 시놀로지의 fuse2를 연결하는
대책 입니다. 경로만 일치하면 되니까요.
ln -s /bin/fusermount /bin/fusermount3