Jump to content

Verständnisfragen zu rclone und Google Drive


hawihoney

Recommended Posts

Ich hoffe jemand kann mir mit dem o.g. helfen. Ich nutze den binhex-rclone Container und verstehe einfach nicht was der von mir will. Bevor ich noch einen weiteren Tag mit "Spielen" vergeude frage ich vorsichtshalber mal hier ;-)

 

Ich habe u.a. die folgenden Einstellungen vorgenommen:

image.png.5a6defe5ad92f70342513505c8fbf7cf.png

 

In der Container Console erscheint nun der Root-Folder /media der auf /mnt/disk17 gemappt ist. So weit so gut.

 

Warum ich aber nun RCLONE_REMOTE_NAME angeben muss ist schon mal Frage #1. Dieser Container erzeugt keine rclone.conf. Das muss man später per Konsolenbefehlen selbst machen. Wieso also diese Variable?

 

Frage #2 bezieht sich dann gleich auf RCLONE_MEDIA_SHARES. Mit den Shares wird meines Wissens im Container nirgendwo etwas gemacht. Wofür gibt man die dort an?

 

Nachdem ich einige Zeit verkaspert habe um eine rclone.conf auf meinem Headless Server zu erzeugen (über einen Windows Rechner auf dem man die Datei erzeugt) habe ich die GUI aufgerufen. Dort gibt es nun mein "remote" aus der Variable RCLONE_REMOTE_NAME. Aber sonst nix. Ich habe nun mal spaßeshalber auf der Konsole einen eigenen Befehl ausgeführt. Das klappt auch. Aber warum habe ich nun diese ganzen Variablen ausgefüllt? Wo sind nun die drei MEDIA_SHARES abgeblieben? Warum habe ich die Richtung und die Art der Übertragung ausgefüllt wenn das nirgendwo erscheint?

 

rclone sync /media/Dokumente/ remote:/Dokumente/

 

*NACHTRAG* Während der manuelle sync Befehl tausende Testdateien überträgt, zeigt das rclone Dashboard 0% Aktivität. Ist die GUI nur ein Fake bzw. nur eine Demo?

 

Wo ist meine Gedankenfehler bzw. mein Brett vor dem Kopf?

 

Vielen Dank.

 

Edited by hawihoney
Link to comment
12 minutes ago, hawihoney said:

Wo ist meine Gedankenfehler bzw. mein Brett vor dem Kopf?

 

das kann ich Dir jetzt nicht beantworten ;) ich nutze als Beispiel unten stehend rclone plugin (mit script zum mount / unmount), hier die google Ausschnitte

 

[gdrive]
type = drive
client_id = 1000778999146-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com
client_secret = GOCSPX-xxxxxxxxxxxxxxxxxxxxxxxxxxxx
scope = drive
token = {"access_token":"ya29.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-v9-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxx","token_type":"Bearer","refresh_token":"1//xxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-f10PU","expiry":"2023-02-23T15:31:13.670623411+01:00"}
team_drive = 

 

zum mount dann

# Local mountpoint 
mntpoint="/mnt/remotes/_gdrive/" 	# It's recommended to mount your remote share in /mnt/remotes/subfolder - 
# Remote share
remoteshare="gdrive:" 	# If you want to share the root of your remote share you have to 
#----------------------------------------------------------------------------
mkdir -p $mntpoint
rclone mount --daemon --max-read-ahead 1024k --allow-other --vfs-cache-mode writes $remoteshare $mntpoint &
#################################

 

sieht dann so aus

image.png.ddae360bbb822618192cc1a622f1910d.png

 

also wie erwähnt, sorry ... der docker ist jetzt nichts für mich, rclone an sich ist im cli ja recht selbsterklärend ... nur als Hinweis falls hilfreich.

Link to comment
10 minutes ago, alturismo said:

rclone plugin

 

Vielen Dank für Deine Antwort.

 

Ich dachte eigentlich, dass der rclone Container noch einen zusätzlichen Benefit gegenüber dem Plugin hat (z.B. automatische Einrichtung in CLI und GUI an Hand der übergebenen Variablen). Im Moment erscheint mir der Mehrwert bei diesem speziellen Container eher - ähm - rudimentär.

 

Letztendlich habe ich bis auf wenige systemnahe Plugins alles auf Docker Container umgestellt weil ich das Gekasper mit NERD/DEV Plugin satt war - die jetzt ohnehin nicht mehr empfohlen sind.

 

Ich warte noch etwas. Vielleicht kann mich noch jemand aufs Pferd hieven. So schnell gebe ich nicht auf ;-)

 

  • Like 1
Link to comment

Ist jetzt vielleicht nicht hilfreich für dich, aber ich nutze schon lange rclone als normales Plugin in der Beta.

Zum Mounten dann über Userscript. Funktioniert wirklich sehr gut, und ohne große Ausfälle bisher. 

 

Mein Mount script schaut so aus:

 

rclone mount Data: /mnt/remotes/Data --allow-other --allow-non-empty --umask 002 --poll-interval 10s --dir-cache-time 5000h --cache-dir=/mnt/disks/Samsung_860_Pro/gcache --vfs-cache-mode full --vfs-cache-poll-interval 5m --vfs-cache-max-age 20h --vfs-cache-max-size 950G --drive-pacer-min-sleep 10ms --drive-pacer-burst 200 &

 

Habe fürs Gdrive eine extra SSD als Cache. Somit ist alles auch direkt verfügbar, und wird mit angegebener Zeit danach automatisch wieder entfernt. 

 

  • Like 1
  • Thanks 1
Link to comment

@speedycxd und @saber1: Vielen Dank.

 

Wahrscheinlich bin ich das Thema völlig falsch angegangen. Ihr mounted immer irgendwas. Ich verstehe einfach noch nicht wofür das hilfreich ist. Werde mich wohl noch etwas schlau machen müssen.

 

Ich will vom Unraid Host zu einer Destination synchronisieren. Und das zeitgesteuert (also nicht in Echtzeit) sowie nur one-way.

 

Bisher löse ich das mit User Scripts wie folgt. Läuft tippi toppi, aber wahrscheinlich laufe ich in die falsche Richtung:

 

#!/bin/bash
#arrayStarted=true
#backgroundOnly=true
#clearLog=true
#noParity=true

docker exec binhex-rclone /usr/bin/rclone sync /media/Bilder/ remote:/Bilder/ --exclude "*.xml"

 

Link to comment
2 minutes ago, hawihoney said:

Bisher löse ich das mit User Scripts wie folgt. Läuft tippi toppi, aber wahrscheinlich laufe ich in die falsche Richtung:

 

wenn es doch klappt, wieso ist es dann "die falsche Richtung" ?

 

ich sag mal so, am Ende ist der docker exec .... oder wir per userscript rclone mount Befehl ... das Gleiche ...

 

sprich, bleib dabei wenn es läuft wie du willst und alles ist gut ;)

 

ich nutze ja mehrere "cloud" Dienste für backups und möchte nicht dafür x docker installieren ... ;) wenn es jetzt auch "nur" gdrive wäre ... dann ;)

 

image.png.69aafbfc6b80705197d86af4965f6f8e.png

Link to comment
1 hour ago, alturismo said:

ich sag mal so, am Ende ist der docker exec .... oder wir per userscript rclone mount Befehl ... das Gleiche

 

Alles klar. Ich dachte der Mount enthält quasi das verschlüsselte Duplikat wie bei manchem Cloud Provider.

 

Mein Befehl verbindet sich quasi on-the-fly mit der zuvor in der rclone.conf registrierten Cloud während Ihr einen Mount zu der Cloud setzt. Da ich ohnehin alles in User Scripts mache, ist das kein Ding. Alles klar. Ich lasse das erst mal so.

 

Um auf meine Eingangsfrage zurückzukommen: Die zusätzlichen Variablen in dem Container sind nach meinem bisherigen Verständnis völlig sinnlos. Man muss ohnehin eine rclone.conf manuell erzeugen. Während ich dachte, dass das der Container selbst macht,

 

Link to comment
3 hours ago, hawihoney said:

Um auf meine Eingangsfrage zurückzukommen: Die zusätzlichen Variablen in dem Container sind nach meinem bisherigen Verständnis völlig sinnlos. Man muss ohnehin eine rclone.conf manuell erzeugen. Während ich dachte, dass das der Container selbst macht,

 

Genau, die config muss immer übers Terminal angelegt werden. Dabei speilt es auch keine Rolle ob du das übern Servern machst oder z.b am PC/Laptop etc. 

Link to comment

Nachtrag:

 

Ich habe nun von rclone Docker Container auf rclone Package (via un-get von @ich777) umgestellt. Nach wie vor wird alles über User Scripts angeworfen:

 

Folgende Nachteile sehe ich:

 

- Das Plugin hat nun natürlich r/w Access auf die Source während ich beim Container den Source Path als r/slave angebunden hatte

 

- Durch das Konstrukt mit der rclone.conf und dem standardmäßigen Ordner für diese conf unter Linux an dieser Stelle /root/.config/rclone/rclone.conf geht die Konfiguration nun jedesmal bei einem Reboot des Rechners fliegen. Ich habe das durch ein weiteres User Script gelöst, welches beim ersten Start des Arrays den benötigten Ordner erzeugt und eine auf dem Stick gesicherte rclone.conf kopiert.

 

- Beim Aufruf von der Konsole klappt das, beim Aufruf durch das User Script nicht. Hier muss ich dann die Location der Conf im Befehl mit angeben. Da muss ich mir noch eine bessere Lösung ausdenken

 

Vorteile:

 

Ist halt schlanker.

 

Link to comment
4 hours ago, hawihoney said:

- Durch das Konstrukt mit der rclone.conf und dem standardmäßigen Ordner für diese conf unter Linux an dieser Stelle /root/.config/rclone/rclone.conf geht die Konfiguration nun jedesmal bei einem Reboot des Rechners fliegen. Ich habe das durch ein weiteres User Script gelöst, welches beim ersten Start des Arrays den benötigten Ordner erzeugt und eine auf dem Stick gesicherte rclone.conf kopiert.

Schreib dir einen Wrapper, sowas wie das sollte funktionieren:

#!/bin/bash
rclone --config /pfad/zur/config.cfg "$@"

Ich würd noch den vollständigen Pfad zu rclone angeben, danach machst die datei ausführbar und viola du kannst nun mit diesem Wrapper rclone starten (hoffentlich)... :)

 

EDIT: Hab noch vergessen, soweit ich das verstanden habe sollte rclone auch Variablen unterstützen in Skripten, zB:

export RCLONE_CONFIG=/pfad/zur/config.cfg

(das sollte rclone direkt sagen wo die config liegt wenn du rclone startest, das könnte man unter umständen auch in ~/.bashrc rein schmeißen aber müsstest trotzdem auch beim start injecten, dann sollte es Systemweit verfügbar sein)

Link to comment
1 hour ago, ich777 said:

Schreib dir einen Wrapper, sowas wie das sollte funktionieren

 

Jau, danke. Wäre sicherlich cleverer gewesen. Hatte zwischenzeitlich alle Skripte erweitert. Sehen jetzt alle so aus. Damit kann ich leben:

 

rclone sync --config /root/.config/rclone/rclone.conf /mnt/disk17/Dokumente/ remote:/Dokumente/

 

Bin aber prompt wieder in die GDrive Duplicate Falle getappt. Hatte GDrive vor ca. 10-15 Jahren schon mal ausprobiert und hatte damals wegen den permanenten Duplicates das ganze in die Tonne getreten. Heute, ca. 10-15 Jahre später, hatte ich das wieder. Zur Erläuterung: GDrive erlaubt zwei Dateien mit identischen Namen im selben Verzeichnis. GDrive erzeugt die aber selbst manchmal. 

 

Glücklicherweise hat rclone für GDrive eine eigene Service Funktion eingebaut:

 

rclone dedupe remote:/Dokumente/

 

Edited by hawihoney
Link to comment
1 hour ago, hawihoney said:

Blöde Frage: Arbeitest Du _in_ diesen Mount Points? Könnte man die sharen/freigeben? Wäre das empfehlenswert?

 

ja, ich arbeite damit ;)

ja, ich habe diese auch shared ;)

empfehlenswert ... für mich, ja ;)

 

nur zum anschauen bräuchte ich die mounts nicht

 

ich nutze die für meine backups, ich nutze die für die Arbeit (Dynamix 365 onedrive und sharepoints sind hier auch eingebunden)

 

um dies als Share zu setzen, entweder im webgui smb extras, dafür muss aber das array gestoppt sein ... oder, wenn man weiß was man macht

 

image.png.5fdfba95ca03e71fd20982e975755b19.png

 

wird dann direkt eingebunden / entfernt ... smb reloaded automatisch bei einer Veränderung.

 

Beispiel

 

image.png.e5a13be167dda2a1c5e9349e73005292.png

  • Thanks 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...