Backup-Synchronisation von $HOME mit Google Drive / Google Fotos

  • Hallo liebe Community.

    Heute geht es um Ordnersynchronisation. Dabei habe ich mir die Integration von OneDrive bei Windows 11 zum Vorbild genommen. Habe mich aber aus mehreren Gründen gegen OneDrive und für Google Drive entschieden. Zum einen hat Google Drive in den meisten Fällen wesentlich mehr Speicher zum anderen kann man dabei auch mit seinem Smartphone wie auch mit anderen Rechnern alle Dateien und auch Google Fotos synchronisieren. Es hat den Vorteil dass es auch gleichzeitig als Backup genutzt werden kann, für den Fall dass der Rechner mal neu aufgesetzt werden muss oder Dateien aus unvorhergesehenen Gründen zerschossen werden. Wer dennoch zusätzlich auch OneDrive als Laufwerk einhängen möchte kann dies mit folgender Videoanleitung tun.
    Für die Synchronisation habe ich zwei Bash-Scripte geschrieben welche das Programm rclone nutzen. Dieses ist in dem Paketquellen vorhanden und kann mit apt install rclone installiert werden. Danach muss es mit rclone config konfiguriert werden. Als Remote-Name verwenden wir g-drive. Nun klicken wir auf weiter bis wir zur Auswahl des Anbieters kommen. Hierbei ist es unter Linux Mint die Nummer 13 für Google Drive. Danach klicken wir wieder auf weiter können alle Voreinstellungen so lassen und bei der Auswahl für die Zugriffsberechtigung vergeben wir die 1 für vollen Zugriff. Also das sowohl lesen als auch schreiben möglich ist. Danach öffnet sich der Browser und man wird um Bestätigung mit seinem Gmail-Konto gefragt. Damit ist die Konfiguration schon abgeschlossen und wir können uns den Skript zuwenden. Hierfür erstellen wir eine Datei und speichern diese unter den Namen sync-g_gdrive.sh ab. Und dieses Script speichern wir folgenden Inhalt:

    Nun machen wir es noch mit chmod +x sync_gdrive.sh ausführbar und können es über einen Terminal mit dem Befehl ./sync_gdrive.sh aufrufen.

    Ich habe bei den Skript darauf geachtet dass immer auf die neueste Version einer Datei synchronisiert wird. Sollte auf Google Drive oder den lokalen Rechner eine Datei ersetzt werden wird hier von ein Backup erstellt. Wenn man den Befehl ./sync_gdrive.sh -new verwendet kann man den aktuellen Stand seines lokalen Ordners auf Google Drive übertragen, auch wenn die lokalen Dateien älter als die in Zielordner sind. Achtung: nicht vorhandene Dateien, werden auf Google Drive als Backup gesichert und ebenfalls gelöscht.
    Anmerkung: Natürlich könnt ihr die Ordner in dem Script euren Ordnern anpassen z.b. anstelle von (Vorlagen) (Scripte) oder so.
    Ich habe das Script auch mit Absicht mit Abfrage erstellt. Denn man möchte nicht immer automatisch den ganzen home Ordner synchronisieren. Falls gewünscht kann es ja angepasst werden oder ich stelle noch eine angepasste Version zum automatischen synchronisieren für z.B. Autostart oder Cron zur Verfügung.

  • cron Version:

    Automatisierung: Um das Skript regelmäßig auszuführen, kannst du es in einen cron-Job eintragen. Öffne den crontab-Editor: crontab -e Füge eine Zeile hinzu, um das Skript z.B. jede Stunde auszuführen: 0 * * * * /path/to/sync_gdrive.sh


    Für das zweite Script sync_gfoto.sh ist der Ablauf eigentlich genau derselbe, lediglich muss man hierbei darauf achten Schreibrechte bei der Konfiguration mit "true" anzugeben. Wobei Synchronisation bei diesen Script das falsche Wort wäre. Denn man kann seine Bilder von Google Fotos abrufen und auch lokale Bilder auf Google Fotos hochladen, aber man kann keine Bilder von Google Fotos über das Script löschen. Wer mit dieser Einschränkung leben kann für den ist dieses Script eine echte Hilfe.

    Musste den Beitrag leider Teilen da max 10000 Zeichen zulässig.

  • Habe es damals als echten Nachteil empfunden, dass man Fotos nicht direkt in Drive syncen oder sichern kann. Der Umweg über Google Fotos war nicht so meins, weil man dann halt die Fotos nicht als Datei vorliegen hat. Ich bin dann den Umweg gegangen, an meinen Smartphones via PhotoSync App alle Fotos als jpg in Google Drive zu sichern.

    Ich bin aktuell aber nicht sicher, ob Google Drive diese trotzdem komprimiert.

    Da ich dann sowohl Bilder, als auch Dateien in Drive liegen hatte, habe ich mit InSync synchronisiert.

    Zu deinem Script: schau mal bei Persönlicher Ordner. Da ist dir ein H ins Wort gerutscht.

    Wenn du statt apt install auf so etwas wie sudo -v ; curl https://rclone.org/install.sh | sudo bash setzt hast du den Vorteil, dass es nicht nur unter Debian/Ubuntu Derivaten läuft und du hast zudem die aktuelle Version. Die aus den Repos hängen oft hinterher. Das aber nur als konstruktiv gemeinter Tipp.

  • Quote

    Zu deinem Script: schau mal bei Persönlicher Ordner. Da ist dir ein H ins Wort gerutscht.

    Danke für den Hinweis (ist korrigiert), und ja ich gehe leider immer von mir und Linux Mint aus. Das mit curl wird aber auch in der oben verlinkten Videobeschreibung erwähnt.

    Einen Hinweis würde ich auch noch einmal erwähnen google lässt ohne client ID nur 10 Dateien pro Sekunde zu. Es gibt nun zwei Möglichkeiten die erste sollte es wirklich mal beim synchronisieren eine Limit Fehlermeldung geben einfach nochmal synchronisieren oder die andere Möglichkeit bei google eine client ID erstellen wie das geht wird in dem Video ab 5:30 erläutert.

    Das selbe gilt auch für den Upload von Bildern ohne client ID. Diese sind pro Tag auf eine Anzahl und Größe der Bilder beschenkt.

    Code
    „message“: „Kontingent für Kontingentmetrik „Größe der Uploads“ überschritten und Größe der Uploads pro Tag des Dienstes „photoslibrary.googleapis.com“ für Verbraucher begrenzt

    Wenn ich wieder etwas mehr Zeit habe werde ich das sync_gfoto.sh Script noch mal anpassen ggf. eine Abfrage rein machen ob Bilder die nicht auf Google Fotos vorhanden sind hochgeladen werden sollen und wenn ja, das man auswählen kann welche und das es bei Fehlermeldung ggf. nur einen Hinweis gibt ohne es ewig für jedes Bild extra zu probieren.

    PS: Mit einer client ID wie im Video beschrieben sollen ~2 GB in 30 Minuten möglich sein.

  • Hier noch mal eine aktualisierte Version von sync_gfoto.sh


  • Habe sync_gfoto.sh noch die Option - Synchronisation (Übernahme des aktuellen Stands von Google Fotos)" und Duplikate von Google Fotos entfernen" hinzugefügt.



  • Habe vorgestern meinen Laptop eine neue 4 TB Festplatte nvme gegönnt und deshalb System neu aufgesetzt.


    Nun habe ich aber auch bisschen Musik usw. drauf was ich nur im lokalen Netzwerk synchronisieren möchte. Dazu nutze ich unison anstelle von rsync weil:

    dazu mein Script:

  • DenalB March 2, 2025 at 12:16 AM

    Changed the title of the thread from “Backup Syncroniesation von $HOME mit Google Drive Google Fotos” to “Backup-Synchronisation von $HOME mit Google Drive / Google Fotos”.
  • Da ja google rclone blockiert habe ich nach einer einfachen Möglichkeit geschaut die Bilder möglichst automatisch über wlan mit dem Smartphone zu resynchronisieren. Dabei bin ich über Syncthing.

    Syncthing ist ein Open-Source-Tool zur Datei-Synchronisierung über das Netzwerk.

    Vorteile:

    • End-zu-End verschlüsselt
    • Automatische Synchronisation von Ordnern
    • Plattformübergreifend

      Installiere Syncthing unter Linux

      Code
      sudo apt install syncthing

    Installiere die Syncthing-Frok-App auf deinem Android-Smartphone.

    Starte Syncthing auf beiden Geräten und verbinde die Geräte über die Syncthing-ID. Wähle den gewünschten Ordner auf dem Smartphone aus und synchronisiere ihn mit einem Zielordner auf dem PC.

  • Syncthing ist eines der besten Tools das ich in den letzten Jahren entdeckt habe.

    Macht das Leben schon einfacher.

    Arch Linux » KDE & Wayland

    ArchCraft » OpenBox

    If Microsoft ever makes a product that does not suck, it will be a vacuum cleaner...

  • Nutze da schon ewig PhotoSync. Habe das seinerzeit gekauft, damit ich kein Abo benötige. Macht was es soll. Es gibt diverse Trigger wie Location oder SSID. In meinem Fall ist es so eingestellt, dass alle neuen Fotos automatisch auf meinem NAS landen, wenn ich auf den Hof fahre und das heimische WLAN verbunden wird.


  • Nutze da schon ewig PhotoSync. Habe das seinerzeit gekauft, damit ich kein Abo benötige.

    Ich ebenfalls und habe den Kauf bisher nicht bereut. :)

    OS: EndeavourOS | Desktop: KDE Plasma 6.3.5 | Kernel: Linux-Zen 6.15.1

    MSI MAG X570 Tomahawk WIFI | AMD Ryzen 9 3900X | 2x 16 GB G.Skill RipJaws V DDR4-3200 | Sapphire NITRO+ AMD Radeon RX 7800 XT | Seasonic Prime PX-750 80+ Platinum

  • habt ihr mehr infos? gdrivesync ist wichtig für mich muss das momentan über den browser machen

    Im Prinzip eine App, die es für Android und iOS gibt. Deine Bilder kannst du damit in verschiedene Speicher/Protokolle sichern lassen. Google Drive, Dropbox, OneDrive, SMB, FTP, WebDAV, usw. Du kannst dabei die Erkennung nutzen, oder aber auch manuell Bilder auswählen. Erkennung bedeutet, dass die App sich merkt, welche Bilder du bereits gesichert hast. Du kannst die also so einrichten, dass immer die neu hinzugekommenen Bilder gesichert werden, oder das halt manuell erweitern. Du kannst also auch selektiv Bilder sichern.

    Du hast zudem die Möglichkeit, eine Art Schnell-Synchronisation einzurichten. Wobei das Wort Synchronisation hier eigentlich falsch ist, da es ja nur in eine Richtung geht. Im Prinzip definierst du ein Ziel (z.B. Google Drive) und dann genügt ein kurzes Halten eines Buttons und alle neuen Bilder landen im vordefinierten Ziel. Richtest du hier also z.B. Google Drive ein, öffnest du die App und tippst auf eine Schaltfläche und es werden alle Bilder in Google Drive geladen, die seit dem letzten Upload neu hinzugekommen sind.

    Das Ganze lässt sich dann aber auch automatisiert per Trigger durchführen. Du kannst z.B. sagen, dass alle neuen Bilder auf dein NAS synchronisiert werden soll, wenn du im heimischen WLAN bist. Oder auch so etwas wie "sichere alle neuen Bilder in der Dropbox, wenn ich auf der Arbeit ankomme". Letzteres wird durch den Standort bestimmt. Dafür ist also die Freigabe deines Standortes notwendig.

    Für mich bisher eine absolut zuverlässige und tolle App. Zu den Preisen kann ich dir leider nichts sagen, da ich mich damals entschieden habe, einmalig einen Preis zu bezahlen, der etwas höher war als das Abo, sich mittlerweile aber amortisiert hat. Abokosten sind mir daher unbekannt und ich erinnere mich ehrlich gesagt auch nicht mehr an den Kaufpreis. Denke das waren so 10-15 EUR oder so.

  • Im Prinzip eine App, die es für Android und iOS gibt. Deine Bilder kannst du damit in verschiedene Speicher/Protokolle sichern lassen. Google Drive, Dropbox, OneDrive, SMB, FTP, WebDAV, usw. Du kannst dabei die Erkennung nutzen, oder aber auch manuell Bilder auswählen. Erkennung bedeutet, dass die App sich merkt, welche Bilder du bereits gesichert hast. Du kannst die also so einrichten, dass immer die neu hinzugekommenen Bilder gesichert werden, oder das halt manuell erweitern. Du kannst also auch selektiv Bilder sichern.

    Du hast zudem die Möglichkeit, eine Art Schnell-Synchronisation einzurichten. Wobei das Wort Synchronisation hier eigentlich falsch ist, da es ja nur in eine Richtung geht. Im Prinzip definierst du ein Ziel (z.B. Google Drive) und dann genügt ein kurzes Halten eines Buttons und alle neuen Bilder landen im vordefinierten Ziel. Richtest du hier also z.B. Google Drive ein, öffnest du die App und tippst auf eine Schaltfläche und es werden alle Bilder in Google Drive geladen, die seit dem letzten Upload neu hinzugekommen sind.

    Das Ganze lässt sich dann aber auch automatisiert per Trigger durchführen. Du kannst z.B. sagen, dass alle neuen Bilder auf dein NAS synchronisiert werden soll, wenn du im heimischen WLAN bist. Oder auch so etwas wie "sichere alle neuen Bilder in der Dropbox, wenn ich auf der Arbeit ankomme". Letzteres wird durch den Standort bestimmt. Dafür ist also die Freigabe deines Standortes notwendig.

    Für mich bisher eine absolut zuverlässige und tolle App. Zu den Preisen kann ich dir leider nichts sagen, da ich mich damals entschieden habe, einmalig einen Preis zu bezahlen, der etwas höher war als das Abo, sich mittlerweile aber amortisiert hat. Abokosten sind mir daher unbekannt und ich erinnere mich ehrlich gesagt auch nicht mehr an den Kaufpreis. Denke das waren so 10-15 EUR oder so.

    danke für die ausführliche erklärung :)

    Immer schön Cremig bleiben!:)

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!