topaLE Posted December 9, 2021 Share Posted December 9, 2021 Hallo zusammen, Vielleicht kann mir einer den Denkanstoß geben ... 2 Unraidserver / beide haben per Docker Syncthing installiert unter /mnt/user/appdata/syncthing Das Syncen zwischen lokalen PC (Win) klappt wunderbar. Jeweils kann Syncthing aber nur innerhalb des Docker-Containers in /config neue Ordner zum Syncronisieren neu anlegen. Möchte ich allerdings ein Share (z.B. /mnt/user/backups) erstellen, fehlt es mir an den Berechtigungen. Muss unter Unraid noch ein neuer User "syncthing" angelegt werden, der Berechtigungen erhält? Also, ich möchte Share-Ordner von Unraid1 (/mnt/user/backups) per Sync mit Unraid2 (/mnt/user/sync) verknüpfen und so eine Art Backup-Funktionalität haben. Was fehlt mir da speziell der Docker-Config für Syncthing? /data1 und /data2 z.B. sagen mir nix und ich weiß nicht ob damit die "volumes" gemeint sind. Die integrierte Docker-Funktion in Unraid ist etwas anders, als wie ich Docker unter (Portainer) gewohnt bin dort neue Container zu erstellen. Wie löse ich mein Problem? Vielen Dank an Euch. Quote Link to comment
mgutt Posted December 9, 2021 Share Posted December 9, 2021 Für mich liest sich das so, dass der versucht in /mnt/user einen neuen Ordner zu erstellen. Das wäre eine Ebene zu hoch. Müsste ja wenn in /mnt/user/<sharename> sein. Allerdings sehe ich auf deinem Screenshot, dass du im Container gar nicht /mnt/user/<sharename> mit /mnt/user/<sharename> verlinkt hast, sondern mit /data. Entsprechend siehst du im Container den Inhalt des Shares in /data. Quote Link to comment
topaLE Posted December 9, 2021 Author Share Posted December 9, 2021 Tja, keine Ahnung was dort im Container an Pfaden angegeben werden muss. Einzig bekannt ist die /config im Container. Im englischen Thread, werde ich auch nicht wirklich schlau draus. Ich denke dort fehlen irgendwelche Berechtigungen. Die Ebene /mnt/user/backups gibt es im Container ja nicht. Dort sollte man eben scheinbar /backups /mnt/user/backups setzen. Nur ist eben die Configs der Variablen im Unraid nicht mit dem von Portainer gleichzusetzen. Daher fällt mir wirklich aktuell der Ansatz zu. Habe echt viel probiert, grundsätzlich nützt mir kein Ordner innerhalb von appdata/syncthing/config , wenn ich Mountpoints von Shares zweiter UNraid's syncen will. Eventuell gibt es noch ne Lösung von anderen. Thanks Quote Link to comment
topaLE Posted December 9, 2021 Author Share Posted December 9, 2021 (edited) Standardordner nach Erstellen des Containers ist immer /config - Lässt sich grundsätzlich vorher nicht anpassen. Edited December 9, 2021 by topaLE Quote Link to comment
topaLE Posted December 9, 2021 Author Share Posted December 9, 2021 Alleine schon das hier: --- version: "2.1" services: syncthing: image: lscr.io/linuxserver/syncthing container_name: syncthing hostname: syncthing #optional environment: - PUID=1000 - PGID=1000 - TZ=Europe/London volumes: - /path/to/appdata/config:/config - /path/to/data1:/data1 - /path/to/data2:/data2 ports: - 8384:8384 - 22000:22000/tcp - 22000:22000/udp - 21027:21027/udp restart: unless-stopped macht mich stutzig, UID 1000 / GID=1000 , obwohl UnRaid Standard 99/100 (nobody/users) ist. Weiß der Teufel, was dort im Container für Variablen benötigt werden. Kann sein, das im UnRaid außerhalb von Synthing nicht gesynct werden kann. Aktuell habe ich nix gefunden im Netz. Quote Link to comment
mgutt Posted December 10, 2021 Share Posted December 10, 2021 7 hours ago, topaLE said: UID 1000 / GID=1000 , obwohl UnRaid Standard 99/100 (nobody/users) ist In dem Beispiel hat eben jemand 1000:1000 gesetzt. Dafür ist die Variable ja da. Du kannst sie eben ändern. 7 hours ago, topaLE said: Standardordner nach Erstellen des Containers ist immer /config - Lässt sich grundsätzlich vorher nicht anpassen. Wenn du einen Job anlegst, kannst du keinen Pfad angeben? Würde mich wundern. Quote Link to comment
hawihoney Posted December 10, 2021 Share Posted December 10, 2021 8 hours ago, topaLE said: Weiß der Teufel, was dort im Container für Variablen benötigt werden. Hab mal im Linuxserver Docker nachgeschaut: - PUID und PGID musst Du auf 99 resp. 100 ändern. - /config ist der appdata Ordner, der wird i.d.R. automatisch korrekt gemappt - /data1 ist anwendungsspezifisch (siehe zweiten Link) - /data2 ist anwendungsspezifisch (siehe zweiten Link) https://docs.linuxserver.io/images/docker-syncthing Quote Link to comment
ich777 Posted December 10, 2021 Share Posted December 10, 2021 8 hours ago, topaLE said: macht mich stutzig, UID 1000 / GID=1000 , obwohl UnRaid Standard 99/100 (nobody/users) ist. Weiß der Teufel, was dort im Container für Variablen benötigt werden. Kann sein, das im UnRaid außerhalb von Synthing nicht gesynct werden kann. Ich muss hier auch noch meinen Senf zu @hawihoney's und @mgutt's Erklärungen dazu geben... Docker sind prinzipiell auf jedem Host lauffähig egal welche Distribution, hauptsache die Architektur (in unserem Fall x86_64) stimmt. Die UID und GID musst du anpassen bzw. solltest du anpassen da der Container sonst eventuell nicht lauffähig ist bzw. du die Dateien am Host mit einem nicht root User oder über SMB nicht lesen/schreiben/löschen kannst. Prinzipiell ist es egal wo du im Container hin mountest solange du keine Systemkritschen Odner überschreibst, falls es dich interessiert, hier eine Übersicht: Klick Ich bin noch immer der Meinung das es wohl das beste wäre du mountest in den Ordner "/mnt/WASAUCHIMMER" oder "/media/WASAUCHIMMER" im Container zB: Wie in diesem Beispiel wird dein Share vom Host "meinewichtigendaten" nach "/mnt/HIERkannstDUeinsetzenWASduWILLST" im Container gemounted und der Ordner "HIERkannstDUeinsetzenWASduWILLST" erstellt und kannst dann vom Container aus unter dem Pfad "/mnt/HIERkannstDUeinsetzenWASduWILLST" rein schreiben. Quote Link to comment
mgutt Posted December 10, 2021 Share Posted December 10, 2021 PS Wenn 99:100 nachträglich geändert wurde, solltest du den Container neu installieren. Kann gut sein, dass er sonst bereits falsche Rechte verwendet hat. Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 1 hour ago, mgutt said: Wenn du einen Job anlegst, kannst du keinen Pfad angeben? Würde mich wundern. Doch schon, nur eben /config/blabla Die Container-Definition ist wie oben schon angegeben was UID/GID angeht 99/100. Funktioniert ja auch alles, wenn innerhalb von /config die Ordner angelegt werden nur eben nicht außerhalb (mnt/user). Ich vermute mal, das es fehlende Schreibrechte von "root" und "nobody" sind. Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 @ich777 @mgutt / Danke euch. Container wurde mehrmals neu installiert. Werde nun nochmals alles neu probieren. Melde mich wenn es läuft ... Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 Das ist Standard, wenn man komplett neu den Dockercontainer startet. Hier muss man schon für data1 / data2 irgendein Pfad auf dem Host angegeben. Zusätzlich kann man dann weitere Pfade definieren. Die /config (Container) muss dann auch auf dem Host nach /mnt/user/appdata/syncthing. Alle anderen Variablen stimmen ja. Die Fragen eben: Gibt es denn im Container die Pfade data1 und data2, oder sind das nur Beispiele und muss die vor dem Erstellen des Containers über "Bearbeiten" entsprechen ändern, wie @ich777 im Beispiel nannte: /mnt/wasWeißich nach /mnt/user/sync (Host)? Quote Link to comment
ich777 Posted December 10, 2021 Share Posted December 10, 2021 11 minutes ago, topaLE said: Gibt es denn im Container die Pfade data1 und data2, oder sind das nur Beispiele und muss die vor dem Erstellen des Containers über "Bearbeiten" entsprechen ändern, wie @ich777 im Beispiel nannte: /mnt/wasWeißich nach /mnt/user/sync (Host)? Nein, die gibt es nicht, aber du kannst die lassen da die Pfade erstellt werden und dann sind die Pfade eben "/data1" und "/data2", du kannst das machen wie du willst, ich bin aber wie gesagt noch immer der Meinung das die Pfade die gemounted werden unter /mnt oder /media gemounted gehören wie in meinem Beispiel. Wenn ein Pfad nicht existiert dann wird der im Docker erstellt wenn du den mountest, hab ich oben auch geschrieben, den Pfad /mnt/wasWeißich gibt es auch nicht im Container aber der wird eben erstellt wenn du den im Template angibst. Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 So habe ich es mal abgefeuert ... Im Backend Syncthing neuen Ordner erstellt: Leider immer noch das Gleiche. Keine Ahnung was ich da nun falsch mache. Wie gesagt: Ordner in /mnt/user/appdata/syncthing (dort wo die config.xml liegt), klappt wunderbar. Log: [Y2GPG] 08:46:47 INFO: TCP listener ([::]:22000) starting [Y2GPG] 08:46:47 INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) starting [Y2GPG] 08:46:47 INFO: Ready to synchronize "Default Folder" (default) (sendreceive) [Y2GPG] 08:46:47 INFO: Using discovery mechanism: global discovery server https://discovery.syncthing.net/v2/?noannounce&id=LYXKCHX-VI3NYZR-ALCJBHF-WMZYSPK-QG6QJA3-MPFYMSO-U56GTUK-NA2MIAW [Y2GPG] 08:46:47 INFO: Using discovery mechanism: global discovery server https://discovery-v4.syncthing.net/v2/?nolookup&id=LYXKCHX-VI3NYZR-ALCJBHF-WMZYSPK-QG6QJA3-MPFYMSO-U56GTUK-NA2MIAW [Y2GPG] 08:46:47 INFO: Using discovery mechanism: global discovery server https://discovery-v6.syncthing.net/v2/?nolookup&id=LYXKCHX-VI3NYZR-ALCJBHF-WMZYSPK-QG6QJA3-MPFYMSO-U56GTUK-NA2MIAW [Y2GPG] 08:46:47 INFO: Using discovery mechanism: IPv4 local broadcast discovery on port 21027 [Y2GPG] 08:46:47 INFO: Using discovery mechanism: IPv6 local multicast discovery on address [ff12::8384]:21027 [Y2GPG] 08:46:47 INFO: Loading HTTPS certificate: open /config/https-cert.pem: no such file or directory [Y2GPG] 08:46:47 INFO: Creating new HTTPS certificate [Y2GPG] 08:46:47 INFO: Completed initial scan of sendreceive folder "Default Folder" (default) [Y2GPG] 08:46:47 INFO: QUIC listener ([::]:22000) starting [Y2GPG] 08:46:47 INFO: GUI and API listening on [::]:8384 [Y2GPG] 08:46:47 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/ [Y2GPG] 08:46:47 INFO: My name is "5ebeac3969c8" [Y2GPG] 08:47:01 INFO: Detected 1 NAT service [Y2GPG] 08:47:06 INFO: quic://0.0.0.0:22000 detected NAT type: Port restricted NAT [Y2GPG] 08:47:06 INFO: quic://0.0.0.0:22000 resolved external address quic://84.134.31.140:22000 (via stun.syncthing.net:3478) [Y2GPG] 08:47:17 INFO: Joined relay relay://95.216.9.111:555 [Y2GPG] 09:05:23 INFO: GUI and API listening on [::]:8384 [Y2GPG] 09:05:23 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/ [Y2GPG] 09:05:31 INFO: GUI and API listening on [::]:8384 [Y2GPG] 09:05:31 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/ [Y2GPG] 09:10:48 INFO: Adding folder "music" (music-djkur) [Y2GPG] 09:10:48 INFO: No stored folder metadata for "music-djkur"; recalculating [Y2GPG] 09:10:48 WARNING: Failed to create folder marker: mkdir /mnt/music/.stfolder: input/output error [Y2GPG] 09:10:48 INFO: Ready to synchronize "music" (music-djkur) (sendreceive) [Y2GPG] 09:10:48 INFO: Failed initial scan of sendreceive folder "music" (music-djkur) [Y2GPG] 09:10:48 WARNING: Error on folder "music" (music-djkur): folder marker missing (this indicates potential data loss, search docs/forum to get information about how to proceed) Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 Gebe ich unter Ordner erstellen: /mnt/user/music (Host-Pfad) an, das gleiche. Diese Freigabe (Share) ist ja in UnRaid schon definiert. Quote Link to comment
ich777 Posted December 10, 2021 Share Posted December 10, 2021 37 minutes ago, topaLE said: [Y2GPG] 09:10:48 WARNING: Failed to create folder marker: mkdir /mnt/music/.stfolder: input/output error Sieht so aus als könnte der Ordner /mnt/music/.stfolder nicht erstellt werden. Lass mal die permissions für diesen Share auf unRAID neu erstellen (aber bitte nur für diesen Share und den Container vorher stoppen!) Tools -> New Permissions -> nur den Share auswählen -> Apply. Wie hast du die Daten denn dort hin kopiert (/mnt/user/music)? Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 20 minutes ago, ich777 said: Wie hast du die Daten denn dort hin kopiert (/mnt/user/music)? Dort liegen keine Daten. Der Share-Ordner ist leer. Wollte vom UnRaid1 (Server) Daten auf diesen Clienten UnRaid2 einfach syncen, als Art Backup nutzen. Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 processing '/mnt/cache_ssd' ... chmod -R u-x,go-rwx,go+u,ugo+X '/mnt/cache_ssd' ... chown -R nobody:users '/mnt/cache_ssd' ... sync completed, elapsed time: 00:00:00 Der Share-Ordner /mnt/user/music ist mit cache_sdd (bevorzugt) definiert. Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 Jetzt hat es geklappt, habe das Array gestoppt. Cache-Pool nochmal neu gesetzt. @ich777 Riesigen Dank an Dich. 👍 Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 Thread kann als gelöst gekennzeichnet werden Quote Link to comment
ich777 Posted December 10, 2021 Share Posted December 10, 2021 20 minutes ago, topaLE said: Thread kann als gelöst gekennzeichnet werden Dann war es ein Rechte Problem. Kannst du selber machen indem du den ersten Post editierst und als Prefix [SOLVED] rein schreibst in den Title, hab ich schon geamcht. 1 Quote Link to comment
hawihoney Posted December 10, 2021 Share Posted December 10, 2021 1 hour ago, topaLE said: Der Share-Ordner /mnt/user/music ist mit cache_sdd (bevorzugt) definiert. Schade dass es keine Ausgabe der Rechte von vor der Rechte-Anpassung gibt. Das hätte mich wirklich interessiert. Ist es tatsächlich so, dass /mnt/user/music standardmäßig in Unraid existiert? Quote Link to comment
ich777 Posted December 10, 2021 Share Posted December 10, 2021 2 minutes ago, hawihoney said: Ist es tatsächlich so, dass /mnt/user/music standardmäßig in Unraid existiert? Nein. Aber ich tippe darauf das er in irgend einem Container, im Template, den Pfad definiert hat und dann wird dieser auch auf unRAID erstellt beim Container start wenn dieser nicht existiert. Quote Link to comment
topaLE Posted December 10, 2021 Author Share Posted December 10, 2021 (edited) 16 minutes ago, ich777 said: Aber ich tippe darauf das er in irgend einem Container, im Template, den Pfad definiert hat und dann wird dieser auch auf unRAID erstellt beim Container start wenn dieser nicht existiert. Naja, Jein. Ich habe vorher ein Share erstellt (/mnt/user/music) und das Pool-Cache cache_ssd zugewiesen. Dann im Template Container Synthing diesen definiert. Das nach Start des Container zu erstellende Verzeichnis (data1 z.B) oder eben von @ich777 vorgeschlagene /mnt/music (Container) wird dann scheinbar neu erstellt. Aber ich denke, das es das Rechteproblem für den cache_ssd (Zuweisung /mnt/user/music) Pool war. Irgendwie hatte er sich verschluckt. Ich hätte das vorher auch mal mit dem andere Cache probieren können. k.A. , nun läuft es ja. Besten Dank nochmal an alle und ein schönes WE. Edited December 10, 2021 by topaLE Quote Link to comment
Recommended Posts
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.