Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[SOLVED] Syncthing Mountpoints außerhalb der Dockerinstallation /config

Featured Replies

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.

 

 

 

img_047.png

img_045.png

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.

 

 

  • Author

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

 

 

  • Author

Standardordner nach Erstellen des Containers ist immer /config - Lässt sich grundsätzlich vorher nicht anpassen.

 

img_050.png

Edited by topaLE

  • Author

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. 

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.

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

 

 

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... :D

 

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:

grafik.png.72109f6f187c01088a197b87cff4abbf.png

 

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.

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.

  • Author
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.

 

img_052.png

  • Author

@ich777 @mgutt / Danke euch. Container wurde mehrmals neu installiert. Werde nun nochmals alles neu probieren. ;-)

Melde mich wenn es läuft ...

  • Author

Das ist Standard, wenn man komplett neu den Dockercontainer startet.

img_053.thumb.png.97e12d84861786f2ffd01d96bbf6d0b8.png

 

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)?

 

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.

  • Author

So habe ich es mal abgefeuert ...

img_055.thumb.png.ed114550ca325dcfe29eabc369babc00.png

 

Im Backend Syncthing neuen Ordner erstellt:

img_056.thumb.png.7e0f1187fd85227d7772cb762ced0edf.png

 

img_057.thumb.png.ca6d626add2fd9793d8a80a244b661e3.png

 

img_058.thumb.png.5cb97b26e0bf3e26ba8490097a1ee623.png

 

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)

 

 

  • Author

Gebe ich unter Ordner erstellen: /mnt/user/music (Host-Pfad) an, das gleiche. Diese Freigabe (Share) ist ja in UnRaid schon definiert.

img_059.thumb.png.e49034167f26f341082e70f0364f3b48.png

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)?

  • Author
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.

  • Author
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.

  • Author

Jetzt hat es geklappt, habe das Array gestoppt. Cache-Pool nochmal neu gesetzt. @ich777 Riesigen Dank an Dich. 👍

 

img_060.thumb.png.5eea51f919d98e0fd50a5a73f73e4211.png

 

  • Author

Thread kann als gelöst gekennzeichnet werden ;-)

img_061.png.8c05ab98b44f156acecf54751c89f2c5.png

 

img_062.png.8afeac59a7b37992730129407a20b5d8.png

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. :)

  • ich777 changed the title to [SOLVED] Syncthing Mountpoints außerhalb der Dockerinstallation /config
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?

 

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.

  • Author
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 by topaLE

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...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.