Parallel Installation / Fehler bei der Installation

Hallo zusammen,

bei der Installtion erhalte ich die nachfolgende Meldung in Schleife. Ich hatte vorher bereits eine Instanz von paperless-ngx laufen. Diese hatte ich vor der erneuten Installtion gestoppt.

Für sachdienliche Hinweise zur Lösung des Problems bin ich dankbar ;-).

Viele Grüße
Markus

paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotify_simple.py", line 110, in add_watch
paperless-webserver-1  |     return _libc_call(_libc.inotify_add_watch, self.fileno(), fsencode(path), mask)
paperless-webserver-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotify_simple.py", line 39, in _libc_call
paperless-webserver-1  |     raise OSError(errno, os.strerror(errno))
paperless-webserver-1  | PermissionError: [Errno 13] Permission denied
paperless-webserver-1  | 2024-06-14 12:16:30,042 WARN exited: consumer (exit status 1; not expected)
paperless-webserver-1  | 2024-06-14 12:16:31,044 INFO spawned: 'consumer' with pid 517
paperless-webserver-1  | 2024-06-14 12:16:32,046 INFO success: consumer entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
paperless-webserver-1  | [2024-06-14 14:16:34,393] [INFO] [paperless.management.consumer] Using inotify to watch directory for changes: /usr/src/paperless/consume
paperless-webserver-1  | Traceback (most recent call last):
paperless-webserver-1  |   File "/usr/src/paperless/src/manage.py", line 10, in <module>
paperless-webserver-1  |     execute_from_command_line(sys.argv)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
paperless-webserver-1  |     utility.execute()
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 436, in execute
paperless-webserver-1  |     self.fetch_command(subcommand).run_from_argv(self.argv)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 412, in run_from_argv
paperless-webserver-1  |     self.execute(*args, **cmd_options)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 458, in execute
paperless-webserver-1  |     output = self.handle(*args, **options)
paperless-webserver-1  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/src/paperless/src/documents/management/commands/document_consumer.py", line 251, in handle
paperless-webserver-1  |     self.handle_inotify(directory, recursive, options["testing"])
paperless-webserver-1  |   File "/usr/src/paperless/src/documents/management/commands/document_consumer.py", line 297, in handle_inotify
paperless-webserver-1  |     descriptor = inotify.add_watch_recursive(directory, inotify_flags)
paperless-webserver-1  |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 116, in add_watch_recursive
paperless-webserver-1  |     return self.__add_watch_recursive(path, mask, filter, name, -1, False)
paperless-webserver-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 90, in __add_watch_recursive
paperless-webserver-1  |     self.__add_watch_recursive(entrypath, mask, filter, entry, wd)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 79, in __add_watch_recursive
paperless-webserver-1  |     wd = inotify_simple.INotify.add_watch(self, path, mask | flags.IGNORED | flags.CREATE | flags.MOVED_FROM | flags.MOVED_TO)
paperless-webserver-1  |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Du hättest vor einer Parallel Installation einige Anpassungen machen müssen.

Hierzu gab es einige Beiträge mal die SuFu nach 2t Instanz oder Parallel bemühen.

Unter Umständen wenn du pech hast ist deine erste Instanz nun korrupt.
Es gibt hier aber ein paar die 1+ Instanzen am laufen haben und dir vielleicht noch helfen können.

Installation auf Synology nach Masterclass ?

Hast du den Stop Command benutzt und wie war deine Vorgehensweise für die zweite Instanz ?

P.s. war mal so frei und hab den Titel ergänzt der Übersicht wegen.

Hallo Michael,

Danke für Deine Antwort. Das passt schon mit der Anpassung des Titels.

Ich habe zuvor die andere Instanz gestoppt. Dann habe ich das erste paperless-ngx Verzeichnis umbenannt, um die Installation nach Masterclass vornehmen zu können.
Dummer Weise hatte ich die erste Installation zusätzlich noch über Portainer, mit ganz gefährlichem Unwissen :face_with_peeking_eye:, nach einem YT-Video vorgenommen.

Zischenzeitlich habe ich alles was es zu Portainer und Paperless im Containermanager zu finden gab gelöscht. Damit dürfte dann wohl auch meine erste Installtion definitiv nicht mehr lauffähig sein, nehme ich an.
Das ist aber nicht weiter tragisch. Mein Ansatz: die Dokumente (ca. 140) im Archiv der alten Installtion liegen noch vor, die konsumiere ich nochmal …

Allerdings hat die Holzhammer-Methode auch nicht geholfen. Bei der Installtion noch immer die gleiche Meldung:

paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotify_simple.py", line 110, in add_watch
paperless-webserver-1  |     return _libc_call(_libc.inotify_add_watch, self.fileno(), fsencode(path), mask)
paperless-webserver-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotify_simple.py", line 39, in _libc_call
paperless-webserver-1  |     raise OSError(errno, os.strerror(errno))
paperless-webserver-1  | PermissionError: [Errno 13] Permission denied
paperless-webserver-1  | 2024-06-14 13:18:59,815 WARN exited: consumer (exit status 1; not expected)
paperless-webserver-1  | 2024-06-14 13:19:00,817 INFO spawned: 'consumer' with pid 9044
paperless-webserver-1  | 2024-06-14 13:19:01,819 INFO success: consumer entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
paperless-webserver-1  | [2024-06-14 15:19:04,231] [INFO] [paperless.management.consumer] Using inotify to watch directory for changes: /usr/src/paperless/consume
paperless-webserver-1  | Traceback (most recent call last):
paperless-webserver-1  |   File "/usr/src/paperless/src/manage.py", line 10, in <module>
paperless-webserver-1  |     execute_from_command_line(sys.argv)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
paperless-webserver-1  |     utility.execute()
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 436, in execute
paperless-webserver-1  |     self.fetch_command(subcommand).run_from_argv(self.argv)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 412, in run_from_argv
paperless-webserver-1  |     self.execute(*args, **cmd_options)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 458, in execute
paperless-webserver-1  |     output = self.handle(*args, **options)
paperless-webserver-1  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/src/paperless/src/documents/management/commands/document_consumer.py", line 251, in handle
paperless-webserver-1  |     self.handle_inotify(directory, recursive, options["testing"])
paperless-webserver-1  |   File "/usr/src/paperless/src/documents/management/commands/document_consumer.py", line 297, in handle_inotify
paperless-webserver-1  |     descriptor = inotify.add_watch_recursive(directory, inotify_flags)
paperless-webserver-1  |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 116, in add_watch_recursive
paperless-webserver-1  |     return self.__add_watch_recursive(path, mask, filter, name, -1, False)
paperless-webserver-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 90, in __add_watch_recursive
paperless-webserver-1  |     self.__add_watch_recursive(entrypath, mask, filter, entry, wd)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 79, in __add_watch_recursive
paperless-webserver-1  |     wd = inotify_simple.INotify.add_watch(self, path, mask | flags.IGNORED | flags.CREATE | flags.MOVED_FROM | flags.MOVED_TO)
paperless-webserver-1  |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Nachtrag:
Achso, ich denke nicht das es relevant ist, weil es lief ja bis… läuft auf einer Synology 1821+ (letzte DSM Version mit Python 2.7.18-1004).
Soweit ich das verstehe beißt er sich an Python fest.

Ich bin gerade noch über diesen Beitrag im Forum gestolpter:
https://forum.digitalisierung-mit-kopf.de/t/file-usr-local-lib-python3-11-site-packages-inotify-simple-py-line-110/181
Ich habe versucht Docker über „docker ps“ auszulesen, bekomme dabei aber auch einen Zugriffsfehler:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied

dein docker ps musst du normal als „sudo docker ps“ ausführen.

Das Umbenennen dürfte jetzt kein Problem sein wenn in dem Ordner auch die Datenbank saß.
Standardmäßig nutzt Paperless-NGX den Port 8000 ebenfalls wie Portainer… Ich weiß jetzt nicht ob du deine installation diesbezüglich angepasst hast .

aber ein „sudo docker ps“ schafft hier schon mal klarheit.

Wenn noch was ist mit der Installation gib hier ein Update.

So ist es. Deine Fehlermeldung

kommt vom fehlenden „sudo“.

Dein Fehler ist dieser hier:

Dazu habe ich einen Artikel geschrieben, denn das kommt häufiger vor:

https://www.digitalisierung-mit-kopf.de/blogs/anleitungen/losung-fur-paperless-ngx-fehlermeldung-paperless_consumption_dir-is-not-writeable (hier sind leider ein paar Formatierungen defekt, da die Webseite gerade umgebaut wird).

Die Rechte korrekt vergeben, dann evt. einmal das NAS neu starten und alles sollte wieder gehen.

1 „Gefällt mir“

Hallo zusammen,

Danke für Eure Antworten. WE ist Quality-Time :wink:

Hier die Ausgabe für „docker ps“:

CONTAINER ID   IMAGE                                        COMMAND                  CREATED      STATUS                PORTS                                       NAMES
dab4befeaced   ghcr.io/paperless-ngx/paperless-ngx:latest   "/sbin/docker-entryp…"   3 days ago   Up 3 days (healthy)   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp   paperless-webserver-1
4aa72be779de   postgres:13                                  "docker-entrypoint.s…"   3 days ago   Up 3 days             5432/tcp                                    paperless-db-1
cd053d5d8e50   redis:7.0                                    "docker-entrypoint.s…"   3 days ago   Up 3 days             6379/tcp                                    paperless-broker-1

Hallo zusammen,

@Stefan
den oben verlinkten Artikel habe ich mir durchgelesen, meine UserID lautet 1026. Ich gehe davon aus, dass hier alles okay sein sollte.

uid=1026(xxxx) gid=100(users) groups=100(users),101(administrators),65540(IT)

Nachderm ich auch die Paperless Startseite erreiche, wollte ich einen Superuser anlegen. Hierbei kam es auch wieder zu den initial erwähnten Meldungen.
Hat Euch der Inhalt des docker ps irgendwelche Erkenntnisse geliefert?

Eine Neuinstallation des NAS kommt für mich nicht in Betracht.

VG
Markus

Hast du denn jemals nen SuperUser angelegt bei der Installation ?

Bei der Neuinstallation gehen keine Daten flöten… da wird nur das System Platt gemacht und du musst halt alles wieder neu einrichten.
Je nach dem was du alles nutzt ist das nervig aber manchmal auch eine gute Lösung.

Bei der ersten Installation @anon58924890

Davon ist aber nichts mehr übrig bis auf das Media-Verzeichnis um die Dokumente nochmals zu konsumieren.

Die PDFs raus holen und in den Scaninput.
Dann kannst du den Ordner löschen und neu installieren.

Da sieht man mal wieder das jede Kleinigkeit ne große Rolle spielt.
Wenn man aber erstmal Sherlock Holmes spielen muss weil x y und z beim Posten nicht erwähnt wurden :grin:

So einfach ist es leider nicht. Den Superuser der Erstinstallation, die die gelöscht wurde, kennt die neue Installation nicht.
Das Problem ist leider noch nicht gelöst :frowning: .

Ich habe noch was neues :roll_eyes:
Habe gerade paperless per docker-compose down heruntergefahren. Dabei erhielt ich folgende Meldung:

[+] Running 3/3
 ⠿ Container paperless-webserver-1  R...                                  12.9s
 ⠿ Container paperless-broker-1     Remo...                                3.0s
 ⠿ Container paperless-db-1         Removed                                5.3s
 ⠿ Network paperless_default        Error                                  0.0s
failed to remove network paperless_default: Error response from daemon: error while removing network: network paperless_default id b704fa89748ac6dbc133310c0c68c7fdc636e967b528c0334f1b87b7e226e57a has active endpoints

Hängt das eventuell hiermit zusammen (aus dem docker ps)

CONTAINER ID   IMAGE                                        COMMAND                  CREATED      STATUS                PORTS                                       NAMES
dab4befeaced   ghcr.io/paperless-ngx/paperless-ngx:latest   "/sbin/docker-entryp…"   3 days ago   Up 3 days (healthy)   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp   paperless-webserver-1

Was ist zu tun?

Hast du mal den Container Manager deinstalliert und neu installiert ?
Damit sollte auch die Datenbank-Leiche entsorgt werden.

Andernfalls mit „sudo docker prune“ mal aufwischen.

Und dann von neu auf.

Hallo zusammen,

und weiter geht die wilde Fahrt…

Der „docker system prune“ Befehl auch in Kombination mit „-a“ bringt die nächste Fehlermeldung :roll_eyes:.

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/prune": dial unix /var/run/docker.sock: connect: permission denied

Ich werde jetzt den Container Manager deinstallieren. Ich hoffe, der kleine Holzhammer kuriert alle Kinderkrankheiten.
Bei der Gelegenheit fällt mir ein „never change a running system“. Keep fingers crossed :crossed_fingers:

Du hast „sudo“ davor vergessen…

:roll_eyes:
… und wo das Problem immer sitzt!

Für mich sieht das (fast) gut aus.
Fehlt hier nicht der consume Ordner?

Läuft immer noch nicht!

paperless-webserver-1  | Traceback (most recent call last):
paperless-webserver-1  |   File "/usr/src/paperless/src/manage.py", line 10, in <module>
paperless-webserver-1  |     execute_from_command_line(sys.argv)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
paperless-webserver-1  |     utility.execute()
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py", line 436, in execute
paperless-webserver-1  |     self.fetch_command(subcommand).run_from_argv(self.argv)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 412, in run_from_argv
paperless-webserver-1  |     self.execute(*args, **cmd_options)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/django/core/management/base.py", line 458, in execute
paperless-webserver-1  |     output = self.handle(*args, **options)
paperless-webserver-1  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/src/paperless/src/documents/management/commands/document_consumer.py", line 251, in handle
paperless-webserver-1  |     self.handle_inotify(directory, recursive, options["testing"])
paperless-webserver-1  |   File "/usr/src/paperless/src/documents/management/commands/document_consumer.py", line 297, in handle_inotify
paperless-webserver-1  |     descriptor = inotify.add_watch_recursive(directory, inotify_flags)
paperless-webserver-1  |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 116, in add_watch_recursive
paperless-webserver-1  |     return self.__add_watch_recursive(path, mask, filter, name, -1, False)
paperless-webserver-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 90, in __add_watch_recursive
paperless-webserver-1  |     self.__add_watch_recursive(entrypath, mask, filter, entry, wd)
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotifyrecursive/inotifyrecursive.py", line 79, in __add_watch_recursive
paperless-webserver-1  |     wd = inotify_simple.INotify.add_watch(self, path, mask | flags.IGNORED | flags.CREATE | flags.MOVED_FROM | flags.MOVED_TO)
paperless-webserver-1  |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotify_simple.py", line 110, in add_watch
paperless-webserver-1  |     return _libc_call(_libc.inotify_add_watch, self.fileno(), fsencode(path), mask)
paperless-webserver-1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
paperless-webserver-1  |   File "/usr/local/lib/python3.11/site-packages/inotify_simple.py", line 39, in _libc_call
paperless-webserver-1  |     raise OSError(errno, os.strerror(errno))
paperless-webserver-1  | PermissionError: [Errno 13] Permission denied
paperless-webserver-1  | 2024-06-20 15:35:21,515 WARN exited: consumer (exit status 1; not expected)
paperless-webserver-1  | 2024-06-20 15:35:22,518 INFO spawned: 'consumer' with pid 13487
paperless-webserver-1  | 2024-06-20 15:35:23,520 INFO success: consumer entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
paperless-webserver-1  | [2024-06-20 17:35:25,888] [INFO] [paperless.management.consumer] Using inotify to watch directory for changes: /usr/src/paperless/consume

Der Consume-Order sollte laut Masterclass ein freigegebener Ordner „scaninput“ sein.

Ist das bei dir so?

Die Fehlermeldung, die du gerade siehst, kann aber harmlos sein. Läuft paperless denn? Viele sehen diese Meldung und versuchen erst gar nicht, paperless-ngx zu erreichen :wink:

Danke für die Antworten @Stefan @anon58924890.
Die Weboberfläche war/ist über Port 8000 zu erreichen. Als nächstes würde ich nochmal den Superuser anlegen.

Ich dachte der consume Ordner würde trotz des Mounts auf den scaninput Ordner noch im Verzeichnis existieren. Wieder was gelernt.

Wenn er nicht existiert oder die rechte nicht stimmen kommen bei allen Fehler :wink:

/volume1/scaninput sollte dann auch vorhanden sein.
Die Rechte vor starten von Paperless ändern.

Wobei die Rechte nach dem Starten wieder temporär geändert werden und sich nicht ändern lassen wenn paperless läuft.