Menu
Szybki wybór
Hosting Domeny VPS SSL Kalkulator Porównania FAQ
Aktywne kody
Wszystkie kody rabatowe

rclone — synchronizacja z chmurą, szyfrowanie i mount

Opublikowano: 9 kwietnia 2026 · Kategoria: VPS / Backup

rclone to "rsync dla chmury" — narzędzie CLI które mówi natywnymi protokołami ponad 70 dostawców obiektowego storage i plików: AWS S3, Google Cloud Storage, Google Drive, Dropbox, OneDrive, Backblaze B2, Wasabi, Azure, MinIO, SFTP, WebDAV, Mega, pCloud i wiele innych. Obsługuje kopiowanie, synchronizację, szyfrowanie end-to-end, mountowanie jako FUSE filesystem oraz serwowanie własnego endpointa (WebDAV, SFTP, FTP, HTTP).

Instalacja

# Jednolinijkowy installer (najnowsza wersja)
curl https://rclone.org/install.sh | sudo bash

# Alternatywa - z repo dystrybucji
sudo apt install rclone        # Debian / Ubuntu
sudo dnf install rclone         # RHEL / Rocky

# Weryfikacja
rclone version

Konfiguracja remote — interaktywny kreator

rclone config

# Kroki:
# n - new remote
# name: moj-s3
# Storage: s3
# provider: AWS (lub MinIO, Wasabi, Backblaze B2, inne)
# env_auth: false
# access_key_id: TWOJ_KLUCZ
# secret_access_key: TWOJ_SEKRET
# region: eu-central-1
# endpoint: (puste dla AWS, URL dla MinIO)
# location_constraint: eu-central-1
# ACL: private
# y - zapisz

# Lista skonfigurowanych remotes
rclone listremotes

# Plik konfiguracyjny (zaszyfrowany opcjonalnie)
ls -la ~/.config/rclone/rclone.conf

Typowe backendy i konfiguracja

Backend Provider Wymagania
s3 AWS S3, MinIO, Wasabi, B2 (S3), DO Spaces access_key + secret_key
drive Google Drive OAuth (przeglądarka), scope drive lub drive.file
gcs Google Cloud Storage service account JSON albo OAuth
dropbox Dropbox OAuth (własny app albo shared)
onedrive OneDrive Personal / Business / SharePoint OAuth
b2 Backblaze B2 (native) application_key_id + application_key
sftp Dowolny serwer SFTP host, user, klucz SSH lub hasło
webdav Nextcloud, ownCloud, dowolny WebDAV URL, user, hasło
crypt Wrapper szyfrujący inny remote hasło + salt, backend do zaszyfrowania

Podstawowe operacje

# Lista bucketow / katalogow
rclone lsd moj-s3:

# Lista plikow w buckecie
rclone ls moj-s3:backups

# Tree view
rclone tree moj-s3:backups

# Rozmiar
rclone size moj-s3:backups

# Copy - kopiuje pliki (nie usuwa z celu)
rclone copy /var/www/uploads moj-s3:media/uploads --progress

# Move - jak copy, ale po sukcesie usuwa ze zrodla
rclone move /tmp/oldfiles moj-s3:archive/ --progress

# Sync - robi z celu lustrzane odbicie zrodla (USUWA pliki w celu!)
rclone sync /var/www/public moj-s3:cdn-mirror --progress

# Delete - usuwa pliki ze zdalnego
rclone delete moj-s3:backups/old-2025/

# Mkdir
rclone mkdir moj-s3:new-bucket

Flag ostrożności: przed sync do ważnego celu zawsze uruchom z --dry-run — zobaczysz co zostanie usunięte bez faktycznej zmiany.

Filtry — włączanie i wykluczanie plików

# Wykluczenia przez --exclude (glob)
rclone copy /var/www moj-s3:backup            \
    --exclude "*.log"                         \
    --exclude "cache/**"                      \
    --exclude "node_modules/**"

# Tylko okreslone rozszerzenia
rclone copy /home moj-s3:photos               \
    --include "*.jpg"                         \
    --include "*.png"                         \
    --include "*.raw"

# Filtr z pliku
cat > /etc/rclone-filter.txt <<'EOF'
- *.tmp
- /cache/**
- /node_modules/**
+ *.php
+ *.html
+ *.css
- *
EOF

rclone sync /var/www moj-s3:site --filter-from /etc/rclone-filter.txt

# Pliki starsze niz 7 dni
rclone copy /logs moj-s3:archive --min-age 7d

# Pliki wieksze niz 100 MB
rclone copy /data moj-s3:big --min-size 100M

Crypt — zaszyfrowany remote

Crypt to wrapper wokół innego remote — pliki są szyfrowane lokalnie przed uploadem. Dostawca chmury widzi tylko nieczytelne blob i zaszyfrowane nazwy plików. Tworzysz go w rclone config:

rclone config

# n - new remote
# name: secure
# Storage: crypt
# remote: moj-s3:encrypted-bucket/  (istniejacy S3 remote + sciezka)
# filename_encryption: standard
# directory_name_encryption: true
# password: wygeneruj-losowe-dlugie-haslo
# password2 (salt): wygeneruj-drugie-haslo

# Teraz uzywaj tak samo jak zwykly remote
rclone copy /secret-data secure: --progress

# Plik konfiguracyjny - ZABEZPIECZ
chmod 600 ~/.config/rclone/rclone.conf

# Mozesz tez zaszyfrowac caly config hasłem (rclone config password)

Mount — cloud jako lokalny filesystem

# Zainstaluj fuse
sudo apt install fuse3

# Utworz punkt montowania
mkdir ~/cloud

# Mount
rclone mount moj-s3:backups ~/cloud         \
    --daemon                                \
    --vfs-cache-mode writes                 \
    --dir-cache-time 1h                     \
    --buffer-size 32M                       \
    --log-file /var/log/rclone-mount.log

# Teraz mozesz czytac jak zwykly filesystem
ls ~/cloud/
cp ~/cloud/db-backup.tar.gz /tmp/

# Umount
fusermount3 -u ~/cloud

vfs-cache-mode: off (default, tylko read), minimal, writes (write-through cache), full (pełny cache lokalny). Dla aplikacji które piszą używaj co najmniej writes, dla media serwera full.

Serve — rclone jako serwer

# Serwuj remote jako WebDAV (np. dla klienta Windows)
rclone serve webdav moj-s3:public              \
    --addr 0.0.0.0:8080                        \
    --user admin                               \
    --pass tajne-haslo

# HTTP browser (tylko read)
rclone serve http moj-s3:public --addr 0.0.0.0:8080

# SFTP
rclone serve sftp moj-s3:data                  \
    --addr 0.0.0.0:2022                        \
    --user myuser --pass mypass

# Restic REST server (dla backupu restic na zwykly S3)
rclone serve restic moj-s3:restic-repo --addr :8000

Automatyzacja — cron + systemd timer

#!/bin/bash
# /usr/local/bin/rclone-backup.sh
set -euo pipefail

LOG=/var/log/rclone-backup.log
echo "Start: $(date)" >> $LOG

rclone sync /var/www/uploads secure:uploads    \
    --log-file $LOG                            \
    --log-level INFO                           \
    --transfers 8                              \
    --checkers 16                              \
    --bwlimit 20M                              \
    --exclude "cache/**"

echo "End: $(date)" >> $LOG
# Crontab - codziennie o 4:00
0 4 * * * /usr/local/bin/rclone-backup.sh

# Albo systemd timer w /etc/systemd/system/rclone-backup.timer
[Unit]
Description=Daily rclone backup

[Timer]
OnCalendar=*-*-* 04:00:00
Persistent=true

[Install]
WantedBy=timers.target

Przydatne flagi

  • --progress / -P — pokazuje real-time transfer progress
  • --transfers N — liczba równoległych transferów (default 4)
  • --checkers N — liczba równoległych operacji sprawdzania (default 8)
  • --bwlimit 10M — limit bandwidth (np. 10 MB/s), można harmonogramem: --bwlimit "08:00,1M 20:00,10M"
  • --fast-list — używaj list bulk (szybsze dla S3, więcej RAM)
  • --dry-run — pokaż co zostanie zrobione, nie zmieniaj
  • --retries 5 — liczba retry po błędzie
  • --checksum — porównuj po checksum zamiast po modtime+size (wolniejsze, ale pewniejsze)

Najczęstsze pytania

rclone czy rsync — które lepsze do backupu? +
rsync jest najlepszy dla lokalnych i SSH transferów — używa delta algorytmu (wysyła tylko zmienione fragmenty plików), jest bardzo szybki i stabilny, standard na Linuksie od lat. rclone nie robi delta sync (przesyła całe zmienione pliki) ale obsługuje ponad 70 backendów chmurowych: S3, Google Drive, Dropbox, OneDrive, Backblaze B2, Azure, SFTP, WebDAV i wiele więcej. Do backupu lokalnego albo VPS-VPS przez SSH wybierz rsync. Do backupu do chmury albo sync między dwoma różnymi chmurami wybierz rclone.
Czy crypt w rclone jest bezpieczny? +
rclone crypt używa NaCl secretbox (XSalsa20 + Poly1305) z 256-bitowym kluczem derywowanym przez scrypt z hasła. Szyfrowanie odbywa się na kliencie przed uploadem — dostawca chmury widzi tylko zaszyfrowane blob. Nazwy plików są też szyfrowane (base32) więc nawet struktura katalogów jest ukryta. To bezpieczne rozwiązanie dla backupu w niezaufanej chmurze, ale tracisz: dedup po stronie chmury (zaszyfrowane bloki to różne dane) i server-side operations (copy between buckets). Alternatywa to restic/borg które też szyfrują, ale obsługują mniej backendów.
Jak rclone obsługuje limity API Google Drive? +
Google Drive ma dzienny limit 750 GB uploadu i ograniczenia query-per-second (domyślnie 10 req/s). rclone obsługuje to przez --tpslimit (limit transakcji na sekundę), --tpslimit-burst, automatic retry z exponential backoff i --drive-stop-on-upload-limit (zatrzymuje się gdy daily limit osiągnięty). Dla poważnych workloadów załóż własne credentials OAuth (Google Cloud Console) — dostajesz wyższe limity niż shared rclone OAuth. Pamiętaj też o --drive-chunk-size (większy = mniej requestów, ale więcej RAM).
Czym różni się sync od copy w rclone? +
copy kopiuje pliki z źródła do celu — jeśli plik istnieje w celu, ale nie w źródle, pozostaje. sync dodatkowo usuwa z celu pliki, które nie istnieją w źródle — cel staje się lustrzanym odbiciem źródła. Niebezpieczeństwo: jeśli nieumyślnie uruchomisz sync z pustym źródłem do pełnego celu, wszystko w celu zostanie usunięte. Dlatego zawsze najpierw uruchom z --dry-run i przeczytaj co zostanie usunięte. Dla backupu przyrostowego który zachowuje historię użyj copy + snapshoty, albo borgbackup/restic.

Sprawdź oferty pasujące do tego scenariusza

Poniżej masz szybkie przejścia do ofert i stron z kodami rabatowymi tam, gdzie są dostępne.