Rclone - Backup in die Cloud

Rclone

Mit der Software Rclone sichern Sie Ihre Backups wenn gewünscht verschlüsselt in der Cloud von verschiedenen Anbietern.

Informationen

Die Cloud ist heute bei vielen Nutzern ein für viele Geräte zugänglicher Speicher, manche bieten mehr oder weniger kostenlosen Speicher, Google 15GB, Mega 70GB, ... - doch gerade Google und viele andere Dienste übertragen Daten zwar verschlüsselt, aber diese liegen dann für den Anbieter (etwa Google) doch wieder offensichtlich unverschlüsselt da.

Rclone ist nun eine Software basierend auf Rsync die die gewünschten Dateien schon lokal verschlüsselt auf die Cloud hoch lädt, der Anbieter kann damit nichts anfangen. Um gleich einmal zu wissen mit welchen Anbietern die Software funktioniert: Alibaba Cloud (Aliyun) Object Storage System (OSS), Amazon Drive, Amazon S3, Backblaze B2, Box, Ceph, DigitalOcean Spaces, Dreamhost, Dropbox, Google Cloud Storage, Google Drive, Hubic, Jottacloud, IBM COS S3, Koofr, Memset Memstore, Mega, Microsoft Azure Blob Storage, Microsoft OneDrive, Minio, Nextcloud, OVH, OpenDrive, Openstack Swift, Oracle Cloud Storage, ownCloud, pCloud, put.io, QingStor, Rackspace Cloud Files, Scaleway, Wasabi, WebDAV, Yandex Disk.

Die Software kann natürlich auch lokal speichern oder nicht verschlüsselt bei den genannten Cloud-Anbietern.

Rclone installieren

Unter auf Debian basierenden Systemen wie Ubuntu, Kubuntu, Linux Mint und so weiter laden Sie sich von Rclone.org das DEB-Paket herunter, auch für auf RPM-basierende Systeme finden Sie entsprechende RPM-Pakete (wie etwa Fedora, OpenSuSE und so weiter), für weitere Linux-Distributionen finden Sie ein Install-Script sowie eine ausführbare Datei in der Tabelle unter Linux, weiters finden Sie Pakete zur Installation für MAC OS, Microsoft Windows, FreeBSD, NetBSD, OpenBSD, Plan9 und Solaris.

Unter auf Debian basierenden Systemen installieren Sie die Software ganz einfach per Klick auf die Datei oder als Administrator auf dem Terminal über die Paket-Verwaltung durch den Befehl:

apt install /home/nutzername/Downloads/rclone-version.deb

Die selbe Geschichte mit RPM-Paketen, das Script installieren Sie indem Sie es von Rclone im Webbrowser öffnen, in der Seite rechts klicken und "Speichern unter" wählen, nun machen Sie die Datei auf dem Terminal als Administrator ausführbar und installieren es:

chmod +x rclone.sh
./install.sh

Es gibt auch eine grafische Oberfläche - diese verfügt jedoch nicht über alle Funktionen der Software. Unter auf Debian basierenden Systemen finden Sie die Software in der Paket-Verwaltung durch das Paket "rclone-browser". Sie finden diese für verschiedene Betriebssysteme unter Rclone Browser. Die Anweisungen zur Installation für andere Linux-Distributionen finden Sie ganz unten auf der Seite.

Rclone nutzen

In diesem Beitrag werde ich die Verwendung auf dem Terminal beschreiben da die grafische Oberfläche wie schon beschrieben nicht über alle Funktionen verfügt, zeitgleich möchte ich darauf hinweisen das Nutzer die Rsync kennen lokal gelöschte Dateien nicht auch in der Cloud löscht was für ein Backup natürlich vorteilhaft ist.

Als erstes gilt es die Software zu konfigurieren, dazu starten wir die Konfiguration als normaler Nutzer auf dem Terminal mit dem Befehl:

rclone config
Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Konfiguration

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Konfiguration

Als erstes gilt es der Software zu zeigen das wir einen neuen Dienst fest legen wollen auf dem wir unsere Sicherungen speichern wollen, wir drücken also die Taste "n", dann fragt die Software nach einem Namen für die Sicherung - da ich für dieses Beispiel Google Drive verwenden werde gebe ich ihr einfach den Namen "gdrive", später kann man die Sicherung weiter konfigurieren indem man den Befehl erneut startet und diesen Namen auswählt und etwa ein Passwort für die Konfiguration wählt.

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Konfiguration

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Konfiguration

Nun fragt die Software nach der Art der Sicherung, wie man sieht findet sich vor jeder Art eine Zahl die man eingibt und wieder bestätigt (wenn man sich die Liste hier genauer ansieht finden sich zusätzlich zu den oben angegebenen auch FTP, SFTP und HTTP die man auch nutzen kann). Die beiden Fragen nach der client_id und client_secret übergehen Sie mit der Eingabe-Taste:

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Konfiguration

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Konfiguration

Nun fragt die Software ob sie vollen Zugriff auf die Dateien haben kann, nur auf solche die die Software selbst hoch geladen hat oder nur lesen darf - in meinem Beispiel nehme ich den vollen Zugriff mit der Taste "1" - hierbei geht es einfach um das Rückspielen der Sicherung. Die Frage nach root_folder_id> und service_account_file> übergehen Sie wieder mit der Eingabe-Taste.

Nun fragt die Software noch ob Sie sich die erweiterte Konfiguration ansehen wollen, dies können Sie mit der Taste "y" bestätigen - eine Dokumentation dazu finden Sie für jeden Dienst unter Rclone.org neben jedem Dienst. Zuletzt gelangen Sie zum Punkt Use auto config? - dies bestätigen Sie mit der Taste "y".

Mit dieser Bestätigung öffnet sich nun der Webbrowser in dem Google nach fragt ob Sie der Software die Rechte auf den Zugriff auf Google Drive erlauben wollen, bestätigen Sie dies. Weiter fragt die Software nun noch ob Sie die Sicherung als Team-Drive nutzen wollen - in meinem Fall will ich niemanden anderen den Zugriff erlauben - als "n", wir bestätigen noch mit "y" und beenden die Konfiguration mit "q".

Um die Konfiguration zu sichern lässt sich die Datei vor anderen installierten Accounts durch den Befehl:

chmod 600 ~/.config/rclone/rclone.conf

nur für den Nutzer dieses Accounts lesbar machen, alternativ starten Sie die Konfiguration erneut, wählen den aktivierten Namen und setzen mit der Taste "s" ein Passwort.

Nun wollen wir einen ersten Test wagen, noch nicht verschlüsselt um zu sehen ob die Verbindung klappt. Als Beispiel will ich ganz einfach einmal den Versuch wagen die Datei "Screenshot_20190403_180853.png" in der angegebenen Cloud zu sichern, die Syntax dazu lautet:

rclone copy Datei/Verzeichnis Dienst_Name:Datei/Verzeichnis

In meinem Beispiel also:

rclone copy Screenshot_20190403_180853.png gdrive:Screenshot_20190403_180853.png

Ohne Optionen arbeitet die Software langsam, dies sehen wir uns später an. Ein kleiner Test im Webbrowser zeigt uns den Erfolg:

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern

Die selbe Geschichte mit dem Verzeichnis "Bilder":

rclone copy Bilder/ gdrive:Bilder/

Nun wissen wir das die Software funktioniert, wir beschleunigen den Upload den Google für uns etwas bremst, dies gelingt durch die Optionen "--transfers=N" und "--checkers=N" wobei Sie "N" durch eine Zahl ersetzen. Die erste Option gibt den Wert der maximalen zeitgleichen Uploads von Dateien an - dieser Wert kann ruhig höher sein und die zweite gibt den Wert an Dateien an die die Software prüft ob diese schon unverändert hoch geladen wurden - nicht veränderte Dateien werden also nicht noch einmal hoch geladen, mit "--drive-chunk-size=N" geben Sie an wie viel Arbeitsspeicher die Software nutzt:

rclone copy -P --transfers=25 --checkers=25 --drive-chunk-size=16384k Bilder/ gdrive=Bilder/

Die Option "-P" liefert uns zusätzlich Informationen über den Fortgang.

Synchronisieren

Nutzt man statt der Option "copy" die Option "snyc" vergleicht die Software Datei für Datei, Verzeichnis für Verzeichnis - kopiert also nicht nur neue Dateien auf das Ziel sondern löscht auch auf dem Ziel nicht mehr vorhandene Dateien. Es gilt hier also Vorsicht zu walten.

Sicherungen zurück spielen

Als Beispiel habe ich das Verzeichnis Bilder gesichert und möchte dieses nun einfach zurück spielen:

rclone copy gdrive:Bilder/ Bilder/

Auch hier gilt es bei der Verwendung von "sync" natürlich wieder zu beachten das neue lokale Dateien die in der Sicherung nicht vorhanden sind einfach gelöscht werden.

Rclone verschlüsseln

Wenn wir nun wissen das die Verbindung klappt können wir die hoch geladenen Dateien / Verzeichnisse natürlich auch verschlüsseln denn unser Dienst-Anbieter - in diesem Fall Google muss ja nicht wissen was wir dort alles speichern. Dazu müssen wir uns einen neuen Dienst mit dem Befehl:

rclone config

anlegen, anlegen können wir nicht nur mehrere verschiedene Dienste sondern natürlich auch verschlüsselte - diese unterscheiden wir dann einfach durch deren Namen die wir angegeben haben. Wir beginnen also wieder damit einen neuen Dienst anzulegen, geben einen Namen an und wählen nun statt gleich den Dienst anzugeben die Option "9", die Konfiguration läuft nun ähnlich ab wie die eines unverschlüsselten Dienstes, es beginnt nun wieder die Auswahl des Dienstes, Sie geben ein Passwort an und explizit ein Verzeichnis an in dem die Software in der Cloud die verschlüsselten Dateien ablegt. Weiters fragt die Software hier ob Sie auch die Datei-Namen und Verzeichnis-Namen verschlüsseln soll.

Der Rest läuft dann gleich ab wie wenn Sie Daten nicht verschlüsselt in beide Richtungen senden, nur kann weder der Anbieter (in diesem Fall also Google) noch Sie im Webbrowser etwas mit den Dateien anfangen, die Software verschlüsselt diese Daten beim hoch laden und entschlüsselt diese wieder beim zurück spielen.

Dateien betrachten

Um die Daten in der Cloud zu betrachten nutzen Sie einfach den Befehl:

rclone -ls gdrive:Bilder/

Rclone grafisch

Rclone können Sie auch grafisch nutzen, wie ganz oben beschrieben gibt es auch eine grafische Oberfläche für die Software - diese verfügt jedoch nicht über alle möglichen Funktionen und ist etwas langsamer im Upload und Download. Wie Sie diese installieren lesen Sie ebenfalls oben. Nach der Installation finden Sie diese Software im Anwendungsmenü im Bereich Internet, alternativ nutzen Sie den Schnellstarter (Alt + F2) oder das Terminal mit dem Befehl:

rclone-browser
Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Rclone-Browser

Rclone - Daten verschlüsselt unter Linux in der Cloud sichern - Rclone-Browser

Haben Sie die Software schon über das Terminal wie oben beschrieben konfiguriert nutzt auch die grafische Software diese Konfiguration und zeigt die bestehenden Accounts an wie oben im Bild - die Konfiguration müssen Sie aber auf jeden Fall auf dem Terminal vor nehmen.