Backups automatisch in die Cloud oder NAS hochladen
Es wird ein Beispiel für Google Drive gezeigt, andere (Cloud)Diense sind ähnlich über rclone möglich.
Annahmen zum System:
IP-Adresse: 192.168.1.30
Benutzername: pi (ggf. in folgenden Befehlen anpassen)
rclone einrichten
-
Per SSH mit Teslalogger verbinden:
ssh -L 53682:localhost:53682 pi@192.168.1.30(-L 53682:localhost:53682ist für rclone nötig) -
Falls nicht vorhanden rclone installieren:
sudo apt-get install -y rclone -
rclone configausführen -
Verbindung mit n erstellen (z. B.: "tl_backup") und ENTER drücken

-
Listennummer für Google Drive finden, eingeben und ENTER

-
Dieses HowTo für client_id und client_secret verwenden: https://rclone.org/drive/#making-your-own-client-id
-
3 und ENTER für scope, ENTER bei service_account_file, ENTER bei Edit advanced config, ENTER bei Use auto config

-
Angezeigten Link kopieren und im Browser öffnen. Mit Google-Konto anmelden und Zugriff erlauben.
Danach ENTER für Shared Drive (Team Drive)
Es wird Konfiguration mit Tokens angeziegt, mit ENTER bestätigen und mit q rclone beenden
Backup scirpt erzeugen
- nano öffnen:
nano /home/pi/backup.shund folgendes einfügen:
#!/bin/bash
BACKUP_DIR="/etc/teslalogger/backup"
REMOTE_NAME="tl_backup:Backup/teslalogger"
/usr/bin/rclone copy --update --verbose --transfers 3 --contimeout 60s --timeout 300s --retries 3 --low-level-retries 10 --stats 1s "$BACKUP_DIR" "$REMOTE_NAME" --drive-use-trash=false
Die Pfade, besonders bei Docker Installation müssen angepasst werden!
tl_backup:Backup/teslalogger bedeutet: es wird ein Ordner Namens Backup und in diesem noch ein Ordner teslalogger angelegt.
Falls man mehrere Applikationen in dem selben "Backup" Ordner ablegen möchte, wird folgendes empfohlen:
REMOTE_NAME="tl_backup,root_folder_id=abcdefg:/teslalogger"
wobei abcdef die OrdnerID ist, die man in der Url sieht, wenn man im Google Drive über Web-Browser auf den Ordner zugreift:

Mit diesem Befehl werden alle Backup-Dateien über die zuvor erstellte rclone-tl_backup-Verbindung in den Ordner "Backup/teslalogger" kopiert. Bei Bedarf anpassen.
Nach dem ersten Test wird empfohlen statt copy move zu nutzen. So werden hochgeladen Dateien anschließen aus dem lokalem Ordner gelöscht.
- Datei speichern: CTRL+X, y, ENTER
- Ausführbar machen:
chmod +x /home/pi/backup.sh - Testen:
chmod +x /home/pi/backup.sh - Bei vielen Backups dauert der erste Lauf länger. Erfolg sieht so aus:

Backup Script jede Nacht ausführen
Backup service einrichten:
sudo nano /etc/systemd/system/backup-rclone.service
Folgendes einfügen und ggf. User und Scriptpfad anassen:
Description=Rclone Backup und Bereinigung
After=network-online.target
Wants=network-online.target
[Service]
Type=oneshot
User=pi
ExecStart=/bin/bash /home/pi/backup.sh
[Install]
WantedBy=multi-user.target
Timer einrichten
sudo nano /etc/systemd/system/backup-rclone.timer
[Unit]
Description=Timer für Rclone Backup jede Nacht
[Timer]
OnCalendar=*-*-* 04:00:00
Persistent=true
[Install]
WantedBy=timers.target
Anschließend Systemd Manager neustarten um neue Einstellungen zu übernehmen:
sudo systemctl daemon-reload
Timer aktivieren:
sudo systemctl enable --now backup-rclone.timer
Und den Status prüfen:
systemctl status backup-rclone.timer
"Active:" soll auf active stehen
Backupservice sofort manuell zum Testen ausfürhen:
sudo systemctl start backup-rclone.service