Rclone to uniwersalne narzędzie do zarządzania plikami przechowywanymi na różnych przestrzeniach dyskowych. Pozwala między innymi na przenoszenie plików pomiędzy przestrzeniami dyskowymi i dyskami lokalnymi. Poniższa instrukcja opisuje instalację oprogramowania na systemie Windows oraz systemach Linux/macOS/BSD oraz sposób konfiguracji przestrzeni dyskowych dla narzędzi: Google Drive, Microsoft OneDrive, SSH/SFTP oraz S3. Zaprezentowane zostały dwa sposoby:
- przez Web GUI (webowy interfejs graficzny), oraz
- command line (wiersz poleceń).
Instrukcja zawiera również wskazówki dotyczące kopiowania plików.
2. Rozpakować plik
3. W Wierszu polecenia (cmd) przejść do rozpakowanego folderu i uruchomić program komendą rclone.exe.
Dla systemów Linux/macOS/BSD w konsoli należy wpisać komendę, która automatycznie zainstaluje program:
curl https://rclone.org/install.sh | sudo bash
Z narzędzia Rclone można korzystać zarówno za pomocą webowego interfejsu graficznego oraz command line.
Aby uruchomić interfejs w przeglądarce (web based GUI) należy wpisać w konsoli komendę:
rclone rcd --rc-web-gui
Nastąpi automatycznie pobranie i otworzenie webowego interfejsu graficznego.
Po instalacji Rclone należy skonfigurować przestrzeń dyskową, do której chcemy mieć dostęp.
W celu rozpoczęcia konfiguracji w webowym interfejsie graficznym należy wybrać zakładkę Config i nacisnąć przycisk Create a New Config.
Proces konfiguracji zawiera 3 następujące etapy: ustawienie zdalnej konfiguracji (Set up Remote Config), skonfigurowanie przestrzeni dyskowej (Set up Drive) oraz zaawansowaną konfigurację (Advanced Config). W pierwszym etapie należy wypełnić następujące pola:
Po uzupełnieniu informacji kliknąć Next.
Jeżeli chcemy korzystać z narzędzia w konsoli, po instalacji należy skonfigurować przestrzeń dyskową, do której chcemy mieć dostęp. W tym celu należy wpisać komendę rclone config.
rclone config
No remotes found - make a new one
n) New remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
n/r/c/s/q> n
name> nazwadysku
Aby utworzyć nową przestrzeń dyskową należy wpisać n, następnie podać nazwę przestrzeni (name). Dalsza procedura zależy od rodzaju przestrzeni, z którą chcemy się połączyć.
W zakładce Set up Drive można zostawić wszystkie rubryki puste i kliknąć Next, spowoduje to przekierowanie do strony logowania na dysk Google. Następnie należy zezwolić na dostęp do Rclone.
1. Wpisać odpowiedni numer XX z listy lub drive.
XX / Google Drive
\ "drive"
Storage> drive
2. Następnie program poprosi o Client ID i Client Secret, co można zostawić puste i kliknąć Enter.
Option client_id.
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>
Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret>
3. W kolejnym kroku wybrać, jaki dokładnie dostęp do dysku ma mieć Rclone. Domyślną opcją jest 1, czyli pełny dostęp.
Option scope.
Scope that rclone should use when requesting access from drive.
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
4. Opcje Root folder ID oraz Service Account File również zostawić puste i kliknąć Enter.
Option root_folder_id.
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>
Option service_account_file.
Service Account Credentials JSON file path.
Leave blank normally.
Needed only if you want use SA instead of interactive login.
Leading `~` will be expanded in the file name as will environment variables such as `\$\{RCLONE_CONFIG_DIR\}`.
Enter a string value. Press Enter for the default ("").
service_account_file>
5. W przypadku zaawansowanej konfiguracji (advanced config) należy odmówić (n). Jeśli urządzenie, na którym zachodzi konfiguracja ma dostęp do przeglądarki internetowej, należy się zgodzić (y) na automatyczną konfigurację (auto config). Nastąpi wtedy otwarcie strony logowania na konto powiązane z dyskiem. Trzeba zezwolić na dostęp dla Rclone. Jeśli strona nie otworzy się automatycznie, można ręcznie skopiować link do przeglądarki.
Edit advanced config?
y) Yes
n) No (default)
y/n> n
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> y
If your browser does not open automatically go to the following link: link
Log in and authorize rclone for access
Waiting for code...
Got code
6. Gdy dysk nie jest współdzielony, trzeba odmówić konfiguracji Shared Drive (n). Jeśli konfiguracja się powiodła, wyświetlą się ostateczne dane. Należy je sprawdzić i jeżeli są one poprawne - wybrać y, co zakończy proces. Wybór opcji e pozwoli na edycję, natomiast d na usunięcie danej konfiguracji.
Configure this as a Shared Drive (Team Drive)?
y) Yes
n) No
y/n> n
--------------------
[nazwadysku]
client_id =
client_secret =
scope = drive
root_folder_id =
service_account_file =
token =
{"access_token":"X","token_type":"Bearer","refresh_token":"X","expiry":"X"}
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y
W zakładce Set up Drive można zostawić puste rubryki, oprócz pola Choose national cloud region for OneDrive. Należy podać region, domyślnie - global. Po kliknięciu Next nastąpi przekierowanie do strony logowania na dysk Microsoft. Należy zezwolić na dostęp do narzędzia.
1. Wpisać odpowiedni numer XX z listy lub onedrive.
XX / Microsoft OneDrive
\ "onedrive"
Storage> onedrive
2. Następnie program poprosi o Client ID i Client Secret, co można zostawić puste i kliknąć Enter.
Option client_id.
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>
Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret>
3. W kolejnym kroku trzeba wybrać region, domyślnie globalny (wpisać 1 lub global) i nacisnąć Enter.
Option region.
Choose national cloud region for OneDrive.
Enter a string value. Press Enter for the default ("global").
Choose a number from below, or type in your own value.
1 / Microsoft Cloud Global
\ "global"
2 / Microsoft Cloud for US Government
\ "us"
3 / Microsoft Cloud Germany
\ "de"
4 / Azure and Office 365 operated by 21Vianet in China
\ "cn"
region> 1
4. W przypadku zaawansowanej konfiguracji (advanced config) należy odmówić (n). Jeśli urządzenie, na którym zachodzi konfiguracja ma dostęp do przeglądarki internetowej, należy się zgodzić (y) na automatyczną konfigurację (auto config), co spowoduje otwarcie strony logowania na konto powiązane z dyskiem. Trzeba zezwolić na dostęp dla Rclone. Jeśli strona nie otworzy się automatycznie, można ręcznie skopiować link do przeglądarki.
Edit advanced config?
y) Yes
n) No (default)
y/n> n
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> y
If your browser does not open automatically go to the following link: link
Log in and authorize rclone for access
Waiting for code...
Got code
5. Następnie wybrać rodzaj dysku. Interesuje nas OneDrive, wpisać 1.
Option config_type.
Type of connection
Enter a string value. Press Enter for the default ("onedrive").
Choose a number from below, or type in an existing value
1 / OneDrive Personal or Business
\ "onedrive"
2 / Sharepoint site
\ "sharepoint"
3 / Type in driveID
\ "driveid"
4 / Type in SiteID
\ "siteid"
5 / Search a Sharepoint site
\ "search"
Your choice> 1
6. Jeśli program znalazł dysk, to poprosi o potwierdzenie poprawności.
Drive OK?
Found drive 'root' of type 'business'
URL: https://org-my.sharepoint.com/personal/you/Documents
y) Yes (default)
n) No
y/n> y
7. Gdy konfiguracja się powiodła, wyświetlą się ostateczne dane i - jeżeli są poprawne, wybrać y, co zakończy proces. Wybór opcji e pozwoli na edycję, natomiast d na usunięcie danej konfiguracji.
--------------------
[nazwadysku]
type = onedrive
token =
{"access_token":"X","token_type":"Bearer","refresh_token":"X","expiry":"X"}
drive_id = b!id-dysku
drive_type = business
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y
Połączenie SSH/SFTP umożliwia połączenie się z klastrem. W zakładce Set up Drive, w polu SSH host należy wpisać adres hosta (tutaj: ui.wcss.pl). W SSH username podać login, a w SSH password hasło do swojego konta na klastrze. Reszta pól nie musi być wypełniana.
1. Wpisać odpowiedni numer XX z listy lub sftp.
XX / SSH/SFTP Connection
\ "sftp"
Storage> sftp
2. Następnie należy podać adres hosta, w przypadku klastra Bem 2 wpisać ui.wcss.pl.
Option host.
SSH host to connect to.
E.g. "example.com".
Enter a value.
host> ui.wcss.pl
3. W kolejnym kroku podać swój login na klaster. Potem należy wpisać port, wybrać 22 i klikając Enter.
Option user.
SSH username.
Enter a string value. Press Enter for the default ("").
user> login
Option port.
SSH port number.
Enter a signed integer. Press Enter for the default (22).
port>22
4. Następnie należy wybrać y i wpisać hasło używane do logowania na klastrze oraz ponowić ten proces.
Option pass.
SSH password, leave blank to use ssh-agent.
Choose an alternative below. Press Enter for the default (n).
y) Yes type in my own password
g) Generate random password
n) No leave this optional password blank (default)
y/g/n> y
Enter the password:
password: hasło
Confirm the password:
password: hasło
5. Wszystkie pozostałe opcje należy zostawić puste, klikając przy każdej Enter. W przypadku zaawansowanej konfiguracji (advanced config) należy odmówić (n).
Edit advanced config?
y) Yes
n) No (default)
y/n> n
6. Gdy konfiguracja się powiodła, wyświetlą się ostateczne dane. Należy sprawdzić ich poprawność, a następnie - wybrać y, co zakończy proces. Wybór opcji e pozwoli na edycję, natomiast d na usunięcie danej konfiguracji.
--------------------
Options:
type: sftp
host: ui.wcss.pl
user: login
pass: *** ENCRYPTED ***
--------------------
Keep this "name" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
W zakładce Set up Drive, w polu Choose your provider wpisać Minio. Następnie uzupełnić pola: AWS Access Key ID oraz AWS Secret Access Key, wpisując wygenerowane w programie MinIO klucze dostępu. W Endpoint for S3 API. Required when using an S3 clone podać http://s3min.e-science.pl/. W celu zakończenia konfiguracji nacisnąć Next.
1. Wpisać odpowiedni numer XX z listy lub s3.
XX / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, China Mobile, Cloudflare, ArvanCloud, DigitalOcean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, IONOS Cloud, Liara, Lyve Cloud, Minio, Netease, RackCorp, Scaleway, SeaweedFS, StackPath, Storj, Tencent COS, Qiniu and Wasabi
\ (s3)
Storage> s3
2. W kolejnym kroku należy wybrać Minio Object Storage, jako dostawcę S3. Wpisać 15 lub Minio.
Option provider.
Choose your S3 provider.
Choose a number from below, or type in your own string value.
Press Enter for the default (AWS).
1 / Amazon Web Services (AWS) S3
\ (AWS)
2 / Alibaba Cloud Object Storage System (OSS) formerly Aliyun
\ (Alibaba)
3 / Ceph Object Storage
\ (Ceph)
4 / China Mobile Ecloud Elastic Object Storage (EOS)
\ (ChinaMobile)
5 / Cloudflare R2 Storage
\ (Cloudflare)
6 / Arvan Cloud Object Storage (AOS)
\ (ArvanCloud)
7 / DigitalOcean Spaces
\ (DigitalOcean)
8 / Dreamhost DreamObjects
\ (Dreamhost)
9 / Huawei Object Storage Service
\ (HuaweiOBS)
10 / IBM COS S3
\ (IBMCOS)
11 / IDrive e2
\ (IDrive)
12 / IONOS Cloud
\ (IONOS)
13 / Seagate Lyve Cloud
\ (LyveCloud)
14 / Liara Object Storage
\ (Liara)
15 / Minio Object Storage
\ (Minio)
16 / Netease Object Storage (NOS)
\ (Netease)
17 / RackCorp Object Storage
\ (RackCorp)
18 / Scaleway Object Storage
\ (Scaleway)
19 / SeaweedFS S3
\ (SeaweedFS)
20 / StackPath Object Storage
\ (StackPath)
21 / Storj (S3 Compatible Gateway)
\ (Storj)
22 / Tencent Cloud Object Storage (COS)
\ (TencentCOS)
23 / Wasabi Object Storage
\ (Wasabi)
24 / Qiniu Object Storage (Kodo)
\ (Qiniu)
25 / Any other S3 compatible provider
\ (Other)
provider> 15
3. W opcji env_auth klikamy Enter (ustawienie false). Ma ona zastosowanie tylko wtedy, gdy access_key_id i secret_access_key są puste.
Option env_auth.
Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars).
Only applies if access_key_id and secret_access_key is blank.
Choose a number from below, or type in your own boolean value (true or false).
Press Enter for the default (false).
1 / Enter AWS credentials in the next step.
\ (false)
2 / Get AWS credentials from the environment (env vars or IAM).
\ (true)
env_auth>
4. Następnie należy wpisać swoje klucze dostępu MinIO: access_key_id i secret_access_key. Sposób pobierania kluczy opisano w instrukcji S3.
Option access_key_id.
AWS Access Key ID.
Leave blank for anonymous access or runtime credentials.
Enter a value. Press Enter to leave empty.
access_key_id>
Option secret_access_key.
AWS Secret Access Key (password).
Leave blank for anonymous access or runtime credentials.
Enter a value. Press Enter to leave empty.
secret_access_key>
6. Pole z wyborem regionu należy zostawić puste i wcisnąć Enter (domyślny region to eu-central-1).
Option region.
Region to connect to.
Leave blank if you are using an S3 clone and you don't have a region.
Choose a number from below, or type in your own string value.
Press Enter for the default (eu-central-1).
/ Use this if unsure.
1 | Will use v4 signatures and an empty region.
\ ()
/ Use this only if v4 signatures don't work.
2 | E.g. pre Jewel/v10 CEPH.
\ (other-v2-signature)
region>
7. W kolejnym kroku należy podać endpoint dla API S3, w tym przypadku http://s3min.e-science.pl/.
Option endpoint.
Endpoint for S3 API.
Required when using an S3 clone.
Enter a value. Press Enter to leave empty.
endpoint>
8. Następnie kliknąć Enter (ustawienie ograniczenia lokalizacji do EU).
Option location_constraint.
Location constraint - must be set to match the Region.
Leave blank if not sure. Used when creating buckets only.
Enter a string value. Press Enter for the default (EU).
location_constraint>
9. W kolejnym kroku ustawić dostęp prywatny, wystarczy nacisnąć Enter.
Option acl.
Canned ACL used when creating buckets and storing or copying objects.
This ACL is used for creating objects and if bucket_acl isn't set, for creating buckets too.
For more info visit https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl
Note that this ACL is applied when server-side copying objects as S3
doesn't copy the ACL from the source but rather writes a fresh one.
If the acl is an empty string then no X-Amz-Acl: header is added and
the default (private) will be used.
Choose a number from below, or type in your own string value.
Press Enter for the default (private).
/ Owner gets FULL_CONTROL.
1 | No one else has access rights (default).
\ (private)
/ Owner gets FULL_CONTROL.
2 | The AllUsers group gets READ access.
\ (public-read)
/ Owner gets FULL_CONTROL.
3 | The AllUsers group gets READ and WRITE access.
| Granting this on a bucket is generally not recommended.
\ (public-read-write)
/ Owner gets FULL_CONTROL.
4 | The AuthenticatedUsers group gets READ access.
\ (authenticated-read)
/ Object owner gets FULL_CONTROL.
5 | Bucket owner gets READ access.
| If you specify this canned ACL when creating a bucket, Amazon S3 ignores it.
\ (bucket-owner-read)
/ Both the object owner and the bucket owner get FULL_CONTROL over the object.
6 | If you specify this canned ACL when creating a bucket, Amazon S3 ignores it.
\ (bucket-owner-full-control)
acl>
10. Wszystkie pozostałe opcje należy zostawić puste, klikając przy każdej Enter. W przypadku zaawansowanej konfiguracji (advanced config) należy odmówić (n).
Edit advanced config?
y) Yes
n) No (default)
y/n> n
11. Gdy konfiguracja się powiodła, wyświetlą się ostateczne dane. Należy sprawdzić ich poprawność, a następnie - wybrać y, co zakończy proces. Wybór opcji e pozwoli na edycję, natomiast d na usunięcie danej konfiguracji.
Edit advanced
Configuration complete.
Options:
- type: s3
- provider: Minio
- access_key_id: xxxxxxxxxxxxxxxx
- secret_access_key: xxxxxxxxxxxxxxxxxxxxxxxxxx
- endpoint:
Keep this "test S3" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d>
Narzędzie Rclone w przeglądarce ma ograniczoną, w porównaniu do wersji w terminalu, funkcjonalność. Pozwala jedynie na kopiowanie i pobieranie plików.
Aby skopiować pliki między kilkoma przestrzeniami dyskowymi, należy wejść w zakładkę Explorer. W opcji Choose Layout wybrać widok tylu przestrzeni dyskowych, ile nas interesuje. Znak + pozwala na otworzenie nowej przestrzeni, którą można wybrać z listy lub wpisać jej nazwę a następnie kliknąć Open, aby ją otworzyć.
Aby pobrać plik należy kliknąć na niego lub na ikonkę chmury.
Aby przesłać dane pomiędzy przestrzeniami należy przeciągnąć wybrany plik lub folder.
Aby przesłać plik na przestrzeń dyskową, należy kliknąć ikonę zaznaczoną niżej (Upload file), a następnie wybrać lub przeciągnąć pliki i kliknąć Upload.
Po udanej konfiguracji przestrzeni dyskowych można rozpocząć manipulacje plikami.
Podstawową komendą kopiowania plików jest rclone copy. Umożliwia ona kopiowanie plików pomiędzy folderami lokalnymi i przestrzenią dyskową, jak również pomiędzy różnymi przestrzeniami. Można kopiować pojedyncze pliki, a także całe zawartości folderów. Komenda rclone copy ma następującą strukturę:
rclone copy source:sourcepath dest:destpath
Gdzie: source to przestrzeń dyskowa, na której znajdują się pliki, a dest to przestrzeń dyskowa, w której pliki mają się znaleźć.
Rclone kopiuje całą zawartość ścieżki źródłowej (sourcepath) do ścieżki docelowej (destpath).
rclone copy googledrive:test C:/pobrane
Taka komenda skopiuje zawartość folderu test znajdującego się na przestrzeni dyskowej googledrive do lokalnego folderu pobrane znajdującego się na dysku lokalnym C.
rclone copy googledrive:test onedrive:folder
Taka komenda skopiuje zawartość folderu test znajdującego się na przestrzeni dyskowej googledrive na przestrzeń dyskową onedrive, do folderu folder. Jeśli w przestrzeni dyskowej onedrive folder taki nie istnieje, zostanie on automatycznie utworzony.
reclone copy googledrive:obrazek.jpg C:/pobrane
Skopiowany zostanie tylko plik obrazek.jpg znajdujący się na przestrzeni dyskowej googledrive do lokalnego folderu pobrane na dysku lokalnym C.
rclone copy googledrive: C:/pobrane
Skopiowana zostanie cała zawartość przestrzeni dyskowej googledrive do folderu pobrane na dysku C.