Rclone使用教程 - 掛載Onedrive和谷歌網盤
阿新 • • 發佈:2021-08-30
1. 介紹
Rclone 是一個用於多個雲平臺之間同步檔案和目錄的命令列工具,其支援多種運營商網盤。
2. 安裝與配置
2.1 下載安裝rclone
-
windows版本:下載rclone並解壓
-
Linux版本:
curl https://rclone.org/install.sh | sudo bash
2.2 配置OneDrive
-
在目錄下開啟cmd執行命令
rclone authorize "onedrive"
世紀互聯執行的命令
rclone authorize onedrive "應用程式(客戶端)ID" "客戶端密碼值" --onedrive-is-21vianet-version=true
-
複製授權碼:
{"access_token":"xxxx"}
-
配置
rclone config
設定步驟如下:
root@localhost:~# rclone config No remotes found - make a new one n) New remote s) Set configuration password q) Quit config n/s/q> n #新建一個掛載 name> onedrive #設定掛載的名稱onedrive Type of storage to configure. Enter a string value. Press Enter for the default (""). Choose a number from below, or type in your own value 1 / 1Fichier \ "fichier" 2 / Alias for an existing remote \ "alias" 3 / Amazon Drive \ "amazon cloud drive" 4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc) \ "s3" 5 / Backblaze B2 \ "b2" 6 / Box \ "box" 7 / Cache a remote \ "cache" 8 / Citrix Sharefile \ "sharefile" 9 / Dropbox \ "dropbox" 10 / Encrypt/Decrypt a remote \ "crypt" 11 / FTP Connection \ "ftp" 12 / Google Cloud Storage (this is not Google Drive) \ "google cloud storage" 13 / Google Drive \ "drive" 14 / Google Photos \ "google photos" 15 / Hubic \ "hubic" 16 / In memory object storage system. \ "memory" 17 / Jottacloud \ "jottacloud" 18 / Koofr \ "koofr" 19 / Local Disk \ "local" 20 / Mail.ru Cloud \ "mailru" 21 / Mega \ "mega" 22 / Microsoft Azure Blob Storage \ "azureblob" 23 / Microsoft OneDrive \ "onedrive" 24 / OpenDrive \ "opendrive" 25 / OpenStack Swift (Rackspace Cloud Files, Memset Memstore, OVH) \ "swift" 26 / Pcloud \ "pcloud" 27 / Put.io \ "putio" 28 / QingCloud Object Storage \ "qingstor" 29 / SSH/SFTP Connection \ "sftp" 30 / Sugarsync \ "sugarsync" 31 / Tardigrade Decentralized Cloud Storage \ "tardigrade" 32 / Transparently chunk/split large files \ "chunker" 33 / Union merges the contents of several upstream fs \ "union" 34 / Webdav \ "webdav" 35 / Yandex Disk \ "yandex" 36 / http Connection \ "http" 37 / premiumize.me \ "premiumizeme" 38 / seafile \ "seafile" Storage> 23 #選擇第23項的onedrive ** See help for onedrive backend at: https://rclone.org/onedrive/ ** Microsoft App Client Id Leave blank normally. Enter a string value. Press Enter for the default (""). client_id> #跳過 Microsoft App Client Secret Leave blank normally. Enter a string value. Press Enter for the default (""). client_secret> #跳過 Edit advanced config? (y/n) y) Yes n) No (default) y/n> #跳過 Remote config Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes (default) n) No y/n> n #選擇n For this to work, you will need rclone available on a machine that has a web browser available. For more help and alternate methods see: https://rclone.org/remote_setup/ Execute the following on the machine with the web browser (same rclone version recommended): rclone authorize "onedrive" Then paste the result below: result> {"access_token":"xxxxxxxx"} #輸入授權碼 Choose a number from below, or type in an existing value 1 / OneDrive Personal or Business \ "onedrive" 2 / Root Sharepoint site \ "sharepoint" 3 / Type in driveID \ "driveid" 4 / Type in SiteID \ "siteid" 5 / Search a Sharepoint site \ "search" Your choice> 1 #選擇1,onedrive Found 1 drives, please select the one you want to use: 0: (personal) id=xxxxxxxx Chose drive to use:> 0 #選擇掛載的onedrive網盤 Found drive 'root' of type 'personal', URL: https://onedrive.live.com/?cid=xxxxxxxx Is that okay? y) Yes (default) n) No y/n> #跳過 -------------------- [myone] type = onedrive token = {"access_token":"xxxxxxxx"} drive_id = xxxxxx drive_type = personal -------------------- y) Yes this is OK (default) e) Edit this remote d) Delete this remote y/e/d> y #跳過 Current remotes: Name Type ==== ==== onedrive onedrive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q>
2.3 配置谷歌網盤
執行命令:
rclone config
設定步驟如下:
$ ./rclone.exe config Current remotes: Name Type ==== ==== onedrive onedrive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q> n #新建 name> gdrive #名稱 Type of storage to configure. Enter a string value. Press Enter for the default (""). Choose a number from below, or type in your own value 1 / 1Fichier \ "fichier" 2 / Alias for an existing remote \ "alias" 3 / Amazon Drive \ "amazon cloud drive" 4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc) \ "s3" 5 / Backblaze B2 \ "b2" 6 / Box \ "box" 7 / Cache a remote \ "cache" 8 / Citrix Sharefile \ "sharefile" 9 / Dropbox \ "dropbox" 10 / Encrypt/Decrypt a remote \ "crypt" 11 / FTP Connection \ "ftp" 12 / Google Cloud Storage (this is not Google Drive) \ "google cloud storage" 13 / Google Drive \ "drive" 14 / Google Photos \ "google photos" 15 / Hubic \ "hubic" 16 / In memory object storage system. \ "memory" 17 / Jottacloud \ "jottacloud" 18 / Koofr \ "koofr" 19 / Local Disk \ "local" 20 / Mail.ru Cloud \ "mailru" 21 / Mega \ "mega" 22 / Microsoft Azure Blob Storage \ "azureblob" 23 / Microsoft OneDrive \ "onedrive" 24 / OpenDrive \ "opendrive" 25 / OpenStack Swift (Rackspace Cloud Files, Memset Memstore, OVH) \ "swift" 26 / Pcloud \ "pcloud" 27 / Put.io \ "putio" 28 / QingCloud Object Storage \ "qingstor" 29 / SSH/SFTP Connection \ "sftp" 30 / Sugarsync \ "sugarsync" 31 / Tardigrade Decentralized Cloud Storage \ "tardigrade" 32 / Transparently chunk/split large files \ "chunker" 33 / Union merges the contents of several upstream fs \ "union" 34 / Webdav \ "webdav" 35 / Yandex Disk \ "yandex" 36 / http Connection \ "http" 37 / premiumize.me \ "premiumizeme" 38 / seafile \ "seafile" Storage> 13 #第13選谷歌網盤 ** See help for drive backend at: https://rclone.org/drive/ ** Google Application Client Id Setting your own is recommended. See https://rclone.org/drive/#making-your-own-client-id for how to create your own. If you leave this blank, it will use an internal key which is low performance. Enter a string value. Press Enter for the default (""). client_id> Google Application Client Secret Setting your own is recommended. Enter a string value. Press Enter for the default (""). client_secret> Scope that rclone should use when requesting access from drive. Enter a string value. Press Enter for the default (""). Choose a number from below, or type in your own value 1 / Full access all files, excluding Application Data Folder. \ "drive" 2 / Read-only access to file metadata and file contents. \ "drive.readonly" / Access to files created by rclone only. 3 | These are visible in the drive website. | File authorization is revoked when the user deauthorizes the app. \ "drive.file" / Allows read and write access to the Application Data folder. 4 | This is not visible in the drive website. \ "drive.appfolder" / Allows read-only access to file metadata but 5 | does not allow any access to read or download file content. \ "drive.metadata.readonly" scope> 1 #輸入1賦予訪問許可權 ID of the root folder Leave blank normally. Fill in to access "Computers" folders (see docs), or for rclone to use a non root folder as its starting point. Enter a string value. Press Enter for the default (""). root_folder_id> Service Account Credentials JSON file path Leave blank normally. Needed only if you want use SA instead of interactive login. Enter a string value. Press Enter for the default (""). service_account_file> Edit advanced config? (y/n) y) Yes n) No (default) y/n> #跳過 Remote config Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes (default) n) No y/n> #跳過
2.4 獲取配置檔案
搜尋 ,windows下正常都在 C:\Users\你的使用者名稱\\.config\rclone
目錄下,Linux正常都在 ./.config/rclone/
目錄下
3. 使用教程
常用命令:
rclone config - 以控制會話的形式新增rclone的配置,配置儲存在.rclone.conf檔案中。
rclone copy - 將檔案從源複製到目的地址,跳過已複製完成的。
rclone sync - 將源資料同步到目的地址,只更新目的地址的資料。
rclone move - 將源資料移動到目的地址。
rclone delete - 刪除指定路徑下的檔案內容。
rclone purge - 清空指定路徑下所有檔案資料。
rclone mkdir - 建立一個新目錄。
rclone rmdir - 刪除空目錄。
rclone check - 檢查源和目的地址資料是否匹配。
rclone ls - 列出指定路徑下所有的檔案以及檔案大小和路徑。
rclone lsd - 列出指定路徑下所有的目錄/容器/桶。
rclone lsl - 列出指定路徑下所有檔案以及修改時間、檔案大小和路徑。
rclone md5sum - 為指定路徑下的所有檔案產生一個md5sum檔案。
rclone sha1sum - 為指定路徑下的所有檔案產生一個sha1sum檔案。
rclone size - 獲取指定路徑下,檔案內容的總大小。.
rclone version - 檢視當前版本。
rclone cleanup - 清空remote。
rclone dedupe - 互動式查詢重複檔案,進行刪除/重新命名操作。
-
顯示網盤上的目錄
rclone lsd onedrive: #onedrive是上面設定的名稱 rclone lsd gdrive: #gdrive是上面設定的名稱
-
拷貝谷歌網盤上的檔案到Onedrive
!rclone copy gdrive:music onedrive:音樂 --ignore-existing --config ./music/rclone.conf # --config xxxx.conf 表示指定配置檔案 # --ignore-existing表示跳過已存在的檔案 # 此命令表示將谷歌網盤下的music目錄複製到Onedrive網盤下的音樂目錄
-
掛在Onedrive
rclone mount onedrive:音樂 music --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 --config /content/gdrive/My\ Drive/music/rclone.conf
4. Linux上掛載網盤
-
新建Linux下的資料夾
rm -rf /root/music #刪除已有的目錄 mkdir /root/music #新建目錄
-
掛載磁碟
下載指令碼
wget -N --no-check-certificate https://raw.githubusercontent.com/x91270/Centos/master/rcloned
使用
vim rcloned
修改指令碼項NAME="myone" #建立的rclone名,本文此處填ojbk REMOTE="音樂" #遠端掛載地址對應的資料夾,是你OneDrive對應的具體目錄 LOCAL="/root/music" #在本機上的掛載地址
啟動指令碼
rcloned start
-
掛載成功後,輸入
df -h
命令檢視 -
設定開機啟動
mv rcloned /etc/init.d/rcloned #移動rcloned到init(開機啟動目錄)下 chmod +x /etc/init.d/rcloned #給rcloned可執行許可權 chkconfig rcloned on #設定自啟動 bash /etc/init.d/rcloned start #啟動rclone