一、概述html
- Rclone 是一款的命令行工具,支持在不一樣對象存儲、網盤間同步、上傳、下載數據。
- 官網網址:https://rclone.org/
- Github 項目:https://github.com/ncw/rclone
- 最近有一個不幸的消息是:Amazon 禁止了 rclone 在他家存儲上使用,好憂傷。
- 新聞地址:https://forum.rclone.org/t/rclone-has-been-banned-from-amazon-drive/2314
- 新聞地址:https://www.lowendtalk.com/discussion/115117/rclone-banned-from-amazon-drive
- 支持的主流對象存儲有:
Google Drive
Amazon S3
Openstack Swift / Rackspace cloud files / Memset Memstore
Dropbox
Google Cloud Storage
Amazon Drive
Microsoft One Drive
Hubic
Backblaze B2
Yandex Disklinux
The local filesystemgit
二、安裝github
wget https://downloads.rclone.org/rclone-current-linux-amd64.zip瀏覽器
unzip rclone-current-linux-amd64.zip
chmod 0755 ./rclone-*/rclone
cp ./rclone-*/rclone /usr/bin/
rm -rf ./rclone-*curl
或工具
curl -O http://downloads.rclone.org/rclone-current-linux-amd64.zip網站
unzip rclone-current-linux-amd64.zip
cd rclone-*-linux-amd64
cp rclone /usr/sbin/
chown root:root /usr/sbin/rclone
chmod 0755 /usr/sbin/rclonegoogle
三、配置(重點)url
首先輸入命令:rclone config(若是源數據和目的數據都是經過遠程訪問,則須要配置兩次)
步驟解釋
- 第一步:配置 config rclone
- 第二部:選擇新建 n # 新建配置
- 第三步:起名字,這個隨意填寫,例如 MJJ
- 第四步:選擇存儲類型,實例中選擇的是 7
1 亞馬遜雲盤
2 亞馬遜 S3
3 BackBlaze B2,這個後面也會寫文章介紹
4 Dropbox
5 不是很懂是啥
6 谷歌雲存儲(不是谷歌雲盤)
7 谷歌雲盤 Google Drive
8 Hubic,OVH 旗下存儲服務,有介紹過, 免費最高 55G https://liyuans.com/archives/hubic.html
9 本地硬盤
10 微軟 Onedrive(注意只支持我的版,不支持商業版、教育版)
11 Openstack Swift,不瞭解
12 SSH 鏈接,也就是說支持 VPS 同步!
13 Yandex 網盤,俄羅斯的,有 10G 大小免費額度
- 第五步:谷歌應用 ID,留空
- 第六步:谷歌應用密鑰,留空
- 第七步:自動配置,選擇手動
- 第八步:複製連接到瀏覽器,登陸谷歌,獲取驗證碼
- 第九步:填寫驗證碼
- 第十步:確認配置
- 第十一步:退出配置
四、簡單操做
谷歌雲盤對拷
- 能夠實現兩個 Google Drive 之間對拷備份文件,不佔用硬盤。畢竟你們的 gdrive 來源都是你懂得,擔憂不穩,能夠多個 google drive 多存幾份。在新建好 rclone 的配置文件後,使用如下命令便可:
rclone copy gdrive1: gdrive2:
本地數據備份
本身 VPS 上的網站數據想備份到其餘 VPS 或者網盤內,其實也很簡單。在創建好 rclone 的配置文件後,使用如下命令便可:
rclone sync /本地絕對路徑 dest:path
小技巧
複用
- rclone 配置文件存儲位置
~/.config/rclone/rclone.conf
,能夠保存裏面的內容,在新電腦上直接用這個配置文件便可
五、詳細使用
操做命令
- rclone 命令的語法格式:
Syntax: [options] subcommand <parameters> <parameters...>
- 經常使用的 rclone 命令有:
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 config
- 開啓一個交互式的配置會話。命令格式以下:
rclone config
rclone copy
- 將文件從源複製到目的地址,跳過已複製完成的。命令格式以下:
rclone copy source:sourcepath dest:destpsth
- 說明:
rclone copy 複製老是指定路徑下的數據;而不是當前目錄。
–no-traverse 標誌用於控制是否列出目的地址目錄。
rclone sync
rclone sync source:path dest:path
- 說明:
同步數據時,可能會刪除目的地址的數據;建議先使用–dry-run 標誌來檢查要複製、刪除的數據。
同步數據出錯時,不會刪除任何目的地址的數據。
rclone sync 同步的始終是 path 目錄下的數據,而不是 path 目錄。(空目錄將不會被同步)
rclone move
rclone move source:path dest:path
- 說明:
同步數據時,可能會刪除目的地址的數據;建議先使用–dry-run 標誌來檢查要複製、刪除的數據。
rclone purge
- 清空 path 目錄和數據。命令格式以下:
rclone purge remote:path
- 說明:
此命令,include/exclude 過濾器失效。
刪除 path 目錄下部分數據,請使用 rclone delete 命令
rclone mkdir
- 建立 path 目錄。命令格式以下:
rclone mkdir remote:path
rclone rmdir
- 刪除一個空目錄。命令格式以下:
rclone rmdir remote:path
- 說明:
不能刪除非空的目錄,刪除非空目錄請使用 rclone purge。
rclone check
- 檢查源和目標地址文件是否匹配。命令格式以下:
rclone check source:path dest:path
- 說明:
–size-only 標誌用於指定,只比較大小,不比較 MD5SUMs。
rclone ls
- 列出指定 path 下,全部的文件以及文件大小和路徑。命令格式以下:
rclone ls remote:path
rclone lsd
- 列出指定 path 下,全部目錄、容器、桶。命令格式以下:
rclone lsd remote:path
rclone delete
- 刪除指定目錄的內容。命令格式以下:
rclone delete remote:path
- 說明:
不一樣於 rclone purge,rclone delete 可以使用 include/exclude 過濾器選擇刪除文件內容。
一些例子:
- 刪除文件大小大於 100M 的文件
# 先檢查哪些文件將被刪除
rclone --min-size 100M lsl remote:path # 使用rclone lsl 列出大於100M的文件
rclone --dry-run --min-size 100M delete remote:path # 使用--dry-run 檢查將要被刪除的文件
# 使用 rclone delete 進行文件刪除
rclone --min-size 100M delete remote:path
rclone size
- 獲取指定 path 下全部數據文件的總大小。命令格式以下:
rclone size remote:path