rclone¶
rclone to popularne narzędzie do kopiowania, synchronizacji i zarządzania danymi w usługach Object Storage zgodnych z Amazon S3 API.
Możesz go używać z Cloud4You Object Storage S3 do:
- wyświetlania bucketów,
- przesyłania plików,
- pobierania plików,
- kopiowania katalogów,
- synchronizacji danych,
- automatyzacji zadań,
- montowania bucketa jako katalogu przez FUSE.
Parametry Cloud4You Object Storage S3¶
Do konfiguracji rclone użyj:
Potrzebujesz również:
Instalacja¶
Windows¶
Po instalacji sprawdź:
macOS¶
Jeżeli używasz Homebrew:
Sprawdź:
Linux¶
Po instalacji sprawdź:
Konfiguracja¶
Uruchom:
Wybierz utworzenie nowej konfiguracji:
Podaj nazwę, na przykład:
Jako typ storage wybierz:
Następnie skonfiguruj połączenie.
Provider¶
Jeżeli rclone wyświetla listę dostawców S3, wybierz:
Jeżeli w używanej wersji nie ma odpowiedniej pozycji lub konfiguracja wymaga ustawienia ogólnego, możesz użyć:
Access Key i Secret Key¶
Wprowadź dane otrzymane od Cloud4You.
Przykład:
Nie udostępniaj Secret Key
Secret Key należy traktować jak hasło.
Nie publikuj pliku konfiguracyjnego rclone ani jego fragmentów zawierających dane dostępowe.
Region¶
Podaj:
Endpoint¶
Podaj:
ACL¶
Jeżeli rclone pyta o ACL i nie masz specjalnych wymagań, pozostaw ustawienie domyślne.
Nie włączaj publicznego dostępu do danych bez świadomej potrzeby.
Przykładowa konfiguracja¶
Fragment konfiguracji może wyglądać podobnie do:
[cloud4you]
type = s3
provider = Ceph
access_key_id = <Access Key>
secret_access_key = <Secret Key>
endpoint = https://s3.cloud4you.pl
region = eu-pl-1
Nie publikuj prawdziwego pliku rclone.conf
Plik konfiguracyjny może zawierać Secret Key.
Lokalizacja konfiguracji¶
Aby sprawdzić, gdzie znajduje się plik konfiguracyjny:
rclone wyświetli ścieżkę do aktualnie używanego pliku rclone.conf.
Test połączenia¶
Po zapisaniu konfiguracji wyświetl dostępne buckety:
Przykładowy wynik:
Jeżeli lista zostanie wyświetlona bez błędu, konfiguracja działa poprawnie.
Lista zawartości bucketa¶
Czytelniejszy widok katalogów i obiektów:
Wysłanie pojedynczego pliku¶
Pobranie pojedynczego pliku¶
Kopiowanie katalogu do S3¶
Przykład:
Polecenie copy kopiuje brakujące i zmienione dane, ale nie usuwa plików istniejących wyłącznie w miejscu docelowym.
Pobieranie katalogu z S3¶
Synchronizacja katalogu do S3¶
sync może usuwać dane
rclone sync dopasowuje miejsce docelowe do źródła.
Obiekty istniejące w miejscu docelowym, których nie ma w źródle, mogą zostać usunięte.
Jeżeli chcesz tylko skopiować nowe lub zmienione pliki bez usuwania danych, użyj rclone copy.
Test synchronizacji¶
Przed pierwszym uruchomieniem sync zalecamy użycie:
--dry-run pokazuje planowane operacje bez ich wykonywania.
Najpierw --dry-run
To szczególnie ważne przy dużych zbiorach danych i automatycznych zadaniach.
Synchronizacja z S3 na komputer¶
Pamiętaj, że również w tym kierunku sync może usuwać dane z miejsca docelowego.
Utworzenie bucketa¶
rclone pozwala utworzyć bucket:
Po wykonaniu sprawdź:
Usunięcie pustego bucketa¶
Bucket musi być pusty.
Usunięcie pojedynczego obiektu¶
Operacja destrukcyjna
Przed usunięciem sprawdź dokładnie nazwę bucketa i obiektu.
Usunięcie wielu danych¶
Przykład:
Polecenie może usunąć wiele obiektów.
Przed wykonaniem możesz użyć:
Sprawdzenie zajętości¶
Możesz policzyć liczbę obiektów i ich łączny rozmiar:
Przykładowy wynik:
Wartość może różnić się od danych raportowanych przez system rozliczeniowy lub quota ze względu na między innymi wersjonowanie i sposób liczenia danych.
Sprawdzenie różnic¶
rclone może porównać źródło i cel:
Polecenie jest przydatne po większych migracjach lub kopiowaniu danych.
Więcej informacji podczas transferu¶
Aby zobaczyć postęp:
Możesz również użyć krótszej formy:
Logowanie¶
Przykład zapisu logu:
rclone copy \
./dane \
cloud4you:firma-backup/dane \
--log-file /var/log/rclone-cloud4you.log \
--log-level INFO
Sprawdź log przed udostępnieniem
Logi mogą zawierać nazwy bucketów, obiektów oraz inne informacje techniczne.
Przed przesłaniem logu osobie trzeciej sprawdź jego zawartość.
Montowanie bucketa jako katalogu¶
Na systemach obsługujących FUSE można użyć rclone mount.
Przykład:
mkdir -p ~/Cloud4You-S3
rclone mount \
cloud4you:firma-backup \
~/Cloud4You-S3 \
--vfs-cache-mode full
Po uruchomieniu zawartość bucketa będzie widoczna w katalogu:
S3 nie jest filesystemem POSIX
rclone mount tworzy warstwę emulującą klasyczny system plików.
Zachowanie takiego mounta różni się od lokalnego dysku, NFS lub SMB.
Nie zalecamy używania rclone mount jako bezpośredniego storage dla:
- aktywnych baz danych,
- dysków maszyn wirtualnych,
- aplikacji wymagających blokad plikowych,
- workloadów wymagających pełnej semantyki POSIX.
Automatyzacja¶
rclone można łatwo używać w skryptach i zadaniach harmonogramu.
Przykład:
#!/bin/bash
rclone copy \
/srv/archive \
cloud4you:firma-backup/archive \
--log-file /var/log/rclone-cloud4you.log \
--log-level INFO
Przy automatyzacji szczególnie ważne jest:
- zabezpieczenie
rclone.conf, - kontrolowanie kodów wyjścia,
- monitorowanie logów,
- testowanie poleceń z
--dry-run, - ostrożne używanie
sync.
Uprawnienia do pliku rclone.conf¶
Na systemach Linux warto ograniczyć dostęp do pliku konfiguracyjnego.
Najpierw sprawdź jego lokalizację:
Następnie ustaw odpowiednie prawa, na przykład:
Dostosuj ścieżkę do lokalizacji pokazanej przez rclone config file.
Najczęstsze problemy¶
AccessDenied¶
Sprawdź:
- Access Key,
- Secret Key,
- nazwę bucketa,
- uprawnienia użytkownika.
SignatureDoesNotMatch¶
Sprawdź:
oraz:
Sprawdź również poprawność Secret Key i czas systemowy.
Bucket nie jest widoczny¶
Najpierw wykonaj:
Jeżeli bucket nie pojawia się na liście, sprawdź dane dostępowe oraz uprawnienia.
Problem z połączeniem¶
Uruchom polecenie z większą ilością informacji:
Tryb -vv generuje szczegółowe logi
Przed publikacją lub przesłaniem logu sprawdź, czy nie zawiera informacji, których nie chcesz udostępniać.
Najczęściej używane polecenia¶
Lista bucketów:
Lista obiektów:
Upload:
Download:
Kopiowanie katalogu:
Synchronizacja:
Sprawdzenie rozmiaru: