Paperless-ngx, Teil 3: consume – der (Laub-)Sauger für Dokumente

In Teil 1 wurde die Weboberfläche von Paperless-ngx vorgestellt. Neue Dokumente kann man dort in einem Feld einfach via Drag-and-Drop aufnehmen. Aber es gibt noch einen zweiten Weg, der insbesondere in Verbindung mit Scanner sehr nützlich ist.

Der Ordner „consume“

Auf dem kleinen Home-Server, in dieser Serie ein Raspberry Pi, legt Paperless-ngx zwei Standard-Unterordner an: „export“ und „consume“ (bei mir noch „documents“ – dazu später mehr).

Jede Datei, die in diesem Verzeichnis landet, wird von Paperless-ngx sofort „aufgesaugt“ und ins Archiv übernommen. Anschließend wird die Datei gelöscht. Der Ordner fungiert gewissermaßen als Eingangskorb, in den man die Dokumente legt: Downloads, Materialien, Team-/Projektdateien oder Mail-Anhänge.

Im einfachsten Fall könnte man also einfach die Dokumente auf einen USB-Stick übertragen, diesen in den Raspberry Pi stecken und kurz die Dateien auf den consume-Pfad ziehen:

Doch es geht wesentlich bequemer, da unser Home-Server ja über das WLAN erreichbar ist. Und: „consume“ ist ein ideales Auffang-Körbchen für die Resultate von Desktop-Scannern (oder Smartphone-Apps). Dabei ist es gleichgültig, ob man einen super-teuren Netzwerk-WLAN-Dokumentenscanner oder ein preisgünstiges Drucker-Scanner-USB-Kombiteil verwendet. Lediglich die Vorgehensweise unterscheidet sich ein wenig.

Scan via Raspberry Pi

Der Raspberry Pi erkennt in der Regel problemlos Drucker und Scanner, die im WLAN verfügbar oder am PI via USB angeschlossen sind. Das klappt sogar mit meiner alten HP-Envy-Kombimaschine, die ich vor Jahren mal für 70 Euro beim Media-Markt erstanden habe. Nützlich ist hier das kleine Linux-Tool „Dokument-Scanner“, das im Paket-Manager (mit dem Suchwort „simple_scan“) abrufbar ist. Schlank, verfügt aber über viele Einstellungen.

Vorteil: Man muss für die Aufnahme eines neuen Scans nicht den großen Desktop-Computer starten (der Raspberry Pi lässt sich ja auch über ein Smartphone steuern, z.B. via RealVNC). Nachteil: Es ist ein wenig „Gefummel“ und für große Scan-Mengen eher umständlich. Trotzdem: Es klappt – und OCR wird ja von Paperless-ngx erledigt.

Scan via FTP

Scanner mit FTP-Funktion

Auf die Ordnerstruktur des Raspberry Pi kann ja via FTP/SFTP/SSH zugegriffen werden. Wer also über einen (Netzwerk-)Scanner mit entsprechenden Konfigurationsmöglichkeiten verfügt, der hat es sehr einfach. Über die IP, die auch für Paperless-ngx verwendet wird, können die Scans direkt zum Raspberry Pi geschickt werden. Allerdings bieten diese Möglichkeit meist nur Scanner der gehobenen Preisklasse (ab ca. 230,- Euro aufwärts). Dafür erhält man aber auch zusätzlich Duplex-Scan, hohe Verarbeitungsgeschwindigkeiten und zusätzliche Software (z.B. für OCR oder Konvertierungen in verschiedene Dateiformate).

Filezilla und WinSCP

Filezilla kennen viele bereits, da man damit auch auf externe Server zugreifen kann. WinSCP erleichtert Einsteigern etwas den Zugang, da die Oberfläche dem Dateimanager ähnelt.

Bei diesen Tools müssen die Dateien „per Hand“ vom Desktop-Ordner in das Raspberry Pi-Verzeichnis gezogen werden. Vorteil: Alle Scanner können in ein Verzeichnis speichern. Oft gibt es Möglichkeiten in den Einstellungen, einen bestimmten Ordner festzulegen. Diesen kann man dann in die Standardeinstellungen seines (FTP-)Tools übernehmen, ohne dass man später immer wieder suchen muss. Also z.B. „C:\meine_scans“ im linken Fenster, „[Raspberry Pi] … consume“ im rechten Fenster.

Überwachte Ordner

Verschiedene Tools können Ordner auf dem Hauptrechner „überwachen“. Wird dort eine neue Datei gespeichert, so landet diese automatisch im consume-Verzeichnis des Raspberry Pi. Zwei bekannte Tools für diese Methode: „Syncthing“ und „FreeFileSync“.

Syncthing

Syncthing ist ein recht verbreitetes Sync-Tool. Dateien werden dabei direkt im heimischen Netzwerk von Gerät zu Gerät übertragen, verschlüsselt und ohne dass jemand eingreifen kann. Ideal, wenn man Dateien z.B. vom Desktop-PC plus Notebook plus Smartphone in den Consume-Ordner aufnehmen lassen möcht.

Die kostenlose Anwendung gibt es für Windows, Mac und Linux. Auch auf dem Raspberry Pi lässt sie sich einfach aktivieren. Für iOS gibt es die Möbius App.

Syncthing verbindet z.B. einen Ordner auf dem DesktopPC mit dem consume-Ordner auf dem Raspberry Pi. Das Toll erkennt, wenn eine neue Datei etwa durch den Scanner in diesem Ordner gespeichert wird. Einige Sekunden später ist die Datei bereits auf den Raspberry Pi übertragen. Da im dortigen consume-Ordner das Dokument nach der Aufnahme durch Paperless-ngx gelöscht wird, verschwindet es auch vom Desktop-PC. Für Vorsichtige: Syncthing hat auch Einstellungen für eine Versionierung von Dateien. Kleine Einarbeitungskurve – aber nach kurzer Zeit hat man den Dreh raus. Ein sehr empfehlenswertes Sync-Tool.

FreeFileSync/RealTimeSync

Auch FreeFileSync (Windows, MacOS, Linux) gehört zu den verbreiteten Tools in diesem Bereich. Durch seine Möglichkeit, Dateien mit FTP/SFTP/SSH zu synchronisieren, ist es ebenfalls für unser Vorhaben geeignet.

Das verbundene Ordner-Paar lässt sich in Form einer Batchdatei speichern und mit dem Zusatztool RealTimeSync ebenfalls überwachen. Das Vorgehen ist ähnelt also der Syncthing-Variante: Der Scanner speichert in einem bestimmten Ordner, die Übertragung auf den Raspberry Pi startet automatisch.

Nextcloud-Sync

Noch einfacher ist es, wenn man ohnehin seine Dateien in einer Nextcloud speichert. Der Desktop-Client ist dann bereits auf den Geräten installiert – und auf dem Raspberry Pi genügt 1 Klick im Paket-Manager – schon hat man ihn auch dort zur Verfügung. Dann nur noch wie bei den vorhergehenden Beispielen bereits beschrieben den consume-Ordner mit dem Scanner-Ordner verbinden – fertig.

Wird nun von einem beliebigen Gerät etwas in den consume-Ordner in der Nextcloud verschoben, so werden die Dateien automatisch auf den Raspberry Pi-Pfad übertragen. Das klappt also auch von unterwegs mit den Nextcloud-Apps auf den mobilen Geräten, ohne dass zu Hause eine Desktop-Computer eingeschaltet ist. Trotzdem ist nach wenigen Sekunden das Paperless-ngx-Archiv ergänzt – und man kann es samt den neuen Dokumenten mobil abrufen.

Ich nutze die Nextcloud sehr intensiv und habe speziell für Paperless-ngx ein getrenntes Nutzerkonto eingerichtet. Dort gibt es nur 3 Pfade: consume, export und documents. Damit verfüge ich jederzeit über ein vollständiges Backup aller meiner Dokumente samt Ordner- und Unterordner. Selbst wenn mein Raspberry Pi zu Hause vom Blitz getroffen würde – könnte mich das kalt lassen …

ScanSnap

Ich habe mir vor vielen Jahren den ScanSnap iX500 geleistet – und er leistet bis heute treue Dienste mit hervorragenden Ergebnissen. Leider hat er keine FTP-Funktion, aber das ist für mich nicht weiter tragisch.

Ich habe mir einen Paperless-Button mit folgenden Einstellungen konfiguriert: OCR, PDF mittlere Größe, erkennen von Datumsangaben, Platzhalter für Datum im Dateinamen, speichern ohne Nachfrage oder Popup-Fenster im Sync-Ordner für Paperless-ngx. Von dort wird die Datei via Nextcloud auf den Raspberry Pi übertragen und eingelesen. Einige Sekunden später kann ich mir das Ergebnis in Paperless ansehen, Tags vergeben, Dateinamen anpassen usw.

Okay, auch Netzwerkordner/Samba/WebDAV kann man nutzen. Aber der Personenkreis, der damit umgeht, benötigt dafür meist keine großen Erklärungen, daher gehe ich hier nicht näher drauf ein.

Aber erwähnen möchte ich noch ein kleines Tool, das im Zusammenhang mit Scannern gute Dienste leiste: NASP2

NASP2-PDF-Scanner

Preisgünstigen Scannern kommen heute meist ohne besondere Software ins Haus. In diesem Fall hilft das kostenlose Tool „NASP2“ – Windows, Mac und Linux. Ist schon seit Jahren verfügbar, kann ausgesprochen viel, z.B. auch Profile für verschiedene Scanaufgaben anlegen, Platzhalter für Dateinamen, OCR usw. usw. usw.

Scanner oder Smartphone-App?

Der eigentliche Nachteil an günstigen Flachbettscanner ist die umständliche Handhabung: Deckel auf, Papier rein, Deckel zu, Start der Software usw. Das macht im Alltag keinen Spaß. Eine ganz andere Hausnummer sind Dokumentenscanner: Duplex-Scan, schneller Einzug von vielen Papieren, automatische Ausrichtung, gleichmäßige Beleuchtung, Erkenn-Funktion von doppelten Seiten, OCR-Software, Konfiguration verschiedener Profile usw. usw. Dazu sehr gut lesbare Ergebnisse, die auch „Falt-Unebenheiten“ ausgleichen. Die Anschaffung eines solchen Scanners kann sich für einen papierlosen Arbeitsplatz also durchaus lohnen.

Allerdings muss sagen, dass inzwischen Scan-Apps auf den Smartphones sehr gut geworden sind: Zuschnitt und Ausgleich der Ränder, Kontrast, PDF mit OCR, Platzhalter für Dateinamen. Ein einziger Klick genügt – schon ist der Scan in Paperless-ngx gespeichert. Durch die API von Paperless-ngx kann man unter iOS sogar einen Shortcut definieren, der die Übergabe in einem Rutsch erledigt. Bei geringerem Papieraufkommen können solche Apps bereits ausreichend sein.

In einem der nächsten Teile wird es um den Zugriff auf Paperless-ngx unterwegs gehen. Dann werfen wir auch einen näheren Blick auf die Möglichkeiten solcher Apps, ihre Scans direkt in Paperless-ngx abzulegen.

Was kommt noch?

Es gibt noch eine ganz besondere Möglichkeit der „Befüllung“, die Paperless-ngx beherrscht: Das Tool kann sogar Mail-Anhänge nach einer Vielzahl von Kriterien eigenständig abrufen und in sein Archiv aufnehmen – dazu später mehr.

Eine „Bulletproof Backup Strategy“ habe ich ja schon in Aussicht gestellt. Auf die werde ich auch noch näher eingehen. Und natürlich wird es eine Schritt-für-Schritt-Anleitung zur Installation geben.

Auf Mastodon bin ich unter @_DigitalWriter_ zu finden. Unter dem Hashtag „paperlessngx“ poste ich auch gelegentlich kurze Videos zum Umgang mit Paperless-ngx.

Bisherige Teile der Paperless-ngx-Serie:
Teil 1: Ausführlicher Überblick
Teil 2: Suche & Tags
Teil 3: consume-Ordner – Einsatz von Scannern
Teil 4: Speicherpfade konfigurieren
Teil 5: Installation auf dem Raspberry Pi
Teil 6: Neue Funktionen in Version 2
Teil 7: Dokumente unterwegs über das eigene Modem abrufen
Teil 8: Exportfunktion nutzen
Teil 9: Update durchführen
Teil 10: Das Rundum-sorglos-Backup
Teil 11: Mail-Abruf mit vielen Extras
Teil 12: Mein Alltag mit Paperless-ngx
Teil 13: Ein Quanten-Code für das Papier-Archiv
FORUM für Fragen eröffnet
Teil 14: Automatisierte Ablage auf Speicherpfaden
Teil 15: Neue Funktion für das Verbinden und Trennen von Dokumenten

15 Kommentare

  • Chris

    Ich bin super angefixt und will meine Datenmengen unbedingt in paperless aufbehmen. Ein ungenutzter Raspi 4 liegt hier rum und wartet.

    Gibt es einen Zeitplan, wann etwa die Installationsanleitung kommen wird? Bin schon ganz hibbelig.

    Gruß
    Chris

    • Herbert

      Ich wollte noch warten, bis ich das neue Raspberry Pi 5 Modell erhalten habe – sollte aber in den nächsten Tagen bei mir sein. Falls es sich verzögert, schreibe ich die Install-Anleitung entlang vom Raspberry Pi 4.

  • Verena

    Vielen Dank für die tollen Beiträge. Ich betreibe paperless-ngx auch auf einem Raspi 4.
    Manchmal „vergisst“ Paperless ein Dokument im consume folder. Gibt es eine Möglichkeit, den Prozess noch einmal manuell anzustoßen? Erst wenn ich einen kompletten Restart mache, wird das Dokument verarbeitet…

    • Herbert

      Ich schau mal, ob ich dazu etwas finde. Prinzipiell ist es nicht tragisch, wenn etwas im consume-Ordner verbleibt und erst nach einen Neustart verschwindet. Eine Ursache könnte der Weg sein: Wie „landet“ denn das Dokument im consume-Pfad? Via Web-Frontend?

        • Florian

          Ich könnte mir vorstellen, dass dein Scanner in der Datei noch schreibt und paperless-ngx diese deshalb nicht lesen kann. Mein Scanner arbeitet so, da er nachfragt ob noch eine weitere Seite gescannt werden soll. Ich denke hier hilft ein Zwischenschritt mit Ablage in ein Scan Verzeichnis dass von einem Tool in das consume Verzeichnis synchronisiert.

  • Sebastian

    Auf dem Raspberry Pi 5 findet man das Tool „simple_scan“ unter diesem Namen nicht. Unter „simple-scan“ hingegen schon.

  • Bernd

    Hallo Herbert,
    vielen Dank für deinen tollen Blog!
    Die Installation hat wunderbar geklappt und ich denke soweit läuft alles.
    Die ersten Dokumente habe ich per Drag and Drop eingelesen 🙂
    Nun habe ich das consume Verzeichnis auf mein IN Verzeichnis auf dem NAS gemountet.
    Wenn ich Dateien dort rein lege, sehe ich diese im Verzeichnis, von papaerless werden diese aber nicht beachtet.
    Was mache ich falsch?

    Vielen Dank!
    Bernd

    • Herbert

      Da ich nicht weiß, welches NAS du verwendest, kann ich jetzt nur für Raspberry Pi/Linux sprechen: dort benötigt auf der Systemebene Paperless-ngx ein „Ping“ als Info über neue Dateien. Das liefert nicht jeder Übertragungsweg (z.B. FTP nicht). Du kannst dann alternativ ein Polling-Intervall einstellen, damit sollte es klappen. Einzelheiten dazu sind hier zu finden: https://docs.paperless-ngx.com/configuration/#polling

  • Daniel

    Hallo, tolle ausführliche Anleitung!
    Ich hatte früher Probleme mit der Samba Freigabe des Consume Ordners.
    Syncthing habe ich jetzt am Laufen.
    Ich hätte allerdings doch lieber einen Ordner auf dem Raspberry 5, da der ja 24/7 läuft.
    Gibt es noch eine Möglichkeit einen Ordner im Netzwerk freizugeben ohne Samba?
    Wie Du schon richtig schreibst, Samba und Windows kann kompliziert werden.

  • Daniel

    Ich möchte noch ergänzen…
    Ich habe einen brother ADS-1700W Netzwerkscanner.
    Damit möchte ich in den Consume Ordner auf dem Raspberry scannen.

    • Herbert

      Hallo Daniel,
      das sollte gar kein Problem sein. Du möchtest von Deinem Brother-Scanner direkt auf den Raspberry Pi ins consume-Verzeichnis scannen, ohne zusätzlich den Desktop-PC anschalten zu müssen? Wenn ich das Datenblatt Deines Scanners richtig lese, so kann er Samba, SFTP/FTP und Mail – mit allen Möglichkeiten kannst auf den Raspberry Pi zugreifen, indem Du das consume-Verzeichnis dort zur Verfügung stellst. Samba auf Linux funktioniert – im Unterschied zu Windows – recht gut. SFTP wäre meine persönliche Wahl, da man SSH ohnehin meist für den Raspberry Pi freigegeben hat. NTFS wäre noch eine Möglichkeit. Zuletzt könnte man noch an eine Mail-Adresse die Scans senden, die Paperless-ngx abruft – aber das erscheint mir zu umständlich. Sofern Du MX Linux auf dem Raspberry Pi laufen hast, kannst Du dort die Samba-Einstellungen aufrufen und mal ausprobieren. Wenn Du Raspberry Pi OS verwendest, dann würde ich es mit SFTP probieren.

  • Oliver

    Hallo Herbert,

    seit 2-3 Jahren läuft ein paperless-ngx auf einem virtuellen Debian was auf meinem kleinen Proxmox mitläuft.
    Ich scanne noch viel zu wenig und nicht regelmässig.
    Durch Zufall bin ich in den letzten Wochen über Deine Seite gestolpert und habe mir vorgenommen einige Deiner Tipps als neuen Ansporn und Workflow Anregung zu nutzen. 🙂

    Ich habe einen Brother ADS1700WUN1 mit dem ich Dokumente direkt über wlan zu paperless schicke.
    Leider zieht der gerne mal schräg ein. 🙁
    Nun habe einen Fujitsu fi-7100 abstauben können und bin am überlegen, wie ich desen Scans auch direkt zu paperless schieben kann. Der muss über USB angeschlossen werden. Am liebsten wäre mir ja, da einen kleinen Pi dran zu hängen, der eine feste Einstellung hat und Scans dann automatisch zu paperless schiebt.
    Kannst Du da was empfehlen, was man da am besten nutzt oder wäre da evtl. auch NAPS2 (habe ich mir noch nicht angeschaut) das Tool der Wahl?

    Grüße,
    Oliver

    • Herbert

      An welchem Gerät wird denn der USB-Scanner angeschlossen? An dasjenige, auf dem auch Paperless-ngx läuft? Dann könnte man mit NAPS2 schauen, dass der Scan im consume-Ordner gespeichert wird. Alternativ kannst du mal nach Bastelanleitungen für einen Raspberry Pi suchen. Man sollte damit aus älteren Geräten einen Netzwerk-Scanner fabrizieren können – habe ich aber noch nicht probiert.

  • T

    Ich mache es mir einfacher indem ich in der docker-compose den consume ordner als „gescannt“ auf mein Netzlaufwerk lege und dies auch der Zielordner für jegliche Dokumente (zb one klick scan des Netzwerkscanners) ist. Zu beachten dass auf „nicht windows smb“ wegen fehlendem inotify der consume ordner mit PAPERLESS_CONSUMER_POLLING=10 über die .env abgefragt werden sollte.

Eine Antwort schreiben

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert