Wenn du deine Dateien ohnehin in Nextcloud ablegst, ist am Dokumentenmanagement selten der Speicher das Ärgerliche. Es ist die Sortierung. Du scannst einen Vertrag, fotografierst einen Ausweis, lädst eine Rechnung als PDF herunter – und die Datei landet in irgendeinem Ordner, in dem du sie nur wiederfindest, wenn du dich erinnerst, wie du sie genannt hast. Genau diese Lücke schließt Nextcloud OCR mit der Dokumentensortierung: Sie liest den Text dessen, was du in einen Eingangsordner legst, erkennt, um welche Art von Dokument es sich handelt, und legt es nach Kategorie und Art in Ordnern ab.
Dieses Tutorial führt durch eine funktionierende Einrichtung auf deinem eigenen Server und vergleicht danach ehrlich mit Paperless-ngx, denn die beiden Werkzeuge lösen überlappende, aber nicht identische Probleme.
Was du zuerst brauchst
- Nextcloud 30 bis 34 und PHP 8.1 oder neuer.
- Laufende Nextcloud-Hintergrundjobs (Cron), da die automatische Sortierung alle 15 Minuten stattfindet.
- Python 3.8 oder neuer (
python3) auf dem Server, wenn Bilder und gescannte PDFs gelesen werden sollen. Office-Dateien und reiner Text werden auch ohne sortiert. - Einmalig Internetzugang für die Installation des Readers, der die Python-Pakete herunterlädt.
- Eine Lizenz für die App (eine pro Nextcloud-Instanz). Alle Details stehen im Benutzerhandbuch.
Schritt 1: App installieren und aktivieren
Lade das Archiv docsort-x.y.z.tar.gz in deinem MediaLab Works-Konto unter Lizenzen herunter und entpacke es in deinen Apps-Ordner, sodass apps/docsort/ entsteht, im Besitz des Web-Server-Benutzers:
cd /var/www/nextcloud/apps
sudo tar -xzf ~/docsort-x.y.z.tar.gz
sudo chown -R www-data:www-data docsort
Aktiviere sie über die Kommandozeile oder auf der Seite Apps:
sudo -u www-data php occ app:enable docsort
Öffne dann Verwaltungseinstellungen → Dokumentensortierung → Lizenz, füge deinen Lizenzschlüssel ein und speichere. Die App kontaktiert den Lizenzserver, bindet den Schlüssel an diese Instanz und zeigt die Lizenz als Aktiv an. Die Prüfung läuft einmal täglich; ohne Internet arbeitet die App nach der letzten erfolgreichen Prüfung noch 7 Tage weiter. Ist die Lizenz ungültig, stoppt die Sortierung einfach und die Dateien warten im Eingangsordner – nichts wird gelöscht.
Schritt 2: Dokumentenleser installieren
Drücke in Verwaltungseinstellungen → Dokumentensortierung auf Reader installieren. Ein Hintergrundjob baut im Datenverzeichnis (appdata_<id>/docsort/python) eine Python-Umgebung mit RapidOCR, pypdfium2 und OpenCV auf. Rechne mit etwa 150 MB Download und rund 500 MB auf der Festplatte. Wenn du das Terminal bevorzugst:
sudo -u www-data php occ docsort:install
Mit --remove beginnst du von vorn, oder über die Schaltfläche Entfernen und erneut installieren in den Einstellungen. Dieser Reader sorgt dafür, dass die Texterkennung mit RapidOCR bei Fotos und gescannten PDFs funktioniert; PDFs, die bereits eine Textebene enthalten, werden direkt gelesen, und Office-Dateien werden aus dem XML in ihrem Inneren gelesen.
Schritt 3: Persönlichen Eingangsordner einrichten
Jeder Benutzer konfiguriert das für sich unter Persönliche Einstellungen → Dokumentensortierung:
- Meine Dokumente sortieren einschalten.
- Die Eingangsordner festlegen, einen pro Zeile, relativ zu deinen Dateien. Standard ist
Documente/De sortat(rumänisch für „Dokumente/Zu sortieren“). - Wählen, wohin sortierte Dokumente gehen – Standard
Documente. - Festlegen, was mit einem erkannten Dokument passiert: verschieben, kopieren (das Original bleibt im Eingangsordner) oder nur verschlagworten.
- Einen Ordner pro Kategorie und dann pro Art wählen, oder einen Ordner pro Art.
- Entscheiden, was mit nicht erkannten Dokumenten passiert: Sie bleiben im Eingangsordner oder gehen in einen Ordner Unsorted.
- Ordner- und Tag-Namen auf Rumänisch oder Englisch wählen.
Der letzte Punkt ist wichtig, wenn du die Instanz mit Familie oder Kollegen teilst: Dieselben Regeln erzeugen je nach Einstellung entweder Documente/Financiar/Factura oder Documents/Finance/Invoice.
Schritt 4: Dateien hineinlegen und beim Ablegen zusehen
Lege Scans, Fotos und PDFs über die Weboberfläche, den Desktop-Client oder dein Handy in den Eingangsordner. Innerhalb von 15 Minuten wird jede Datei gelesen, erkannt, mit Document: <kind> verschlagwortet und nach Documente/<category>/<kind>/ verschoben.
Auf der persönlichen Seite führt Jetzt sortieren es sofort aus, und Nur zeigen, was passieren würde zeigt das Ergebnis als Vorschau, ohne etwas zu verschieben. Kürzlich sortiert listet auf, was abgelegt wurde und wohin. Im Terminal kannst du außerdem ausführen:
sudo -u www-data php occ docsort:scan [user] [--dry-run] [--again] [--limit N]
sudo -u www-data php occ docsort:classify <file> [--text]
Der erste Befehl sortiert den Eingangsordner aller oder einer Person (mit Option für einen Probelauf); der zweite zeigt, als was eine einzelne Datei sortiert würde.
Die 48 Arten in 13 Kategorien
Von Haus aus erkennt die App 48 Dokumentarten, gruppiert in 13 Kategorien: Identität, Personenstand, Genehmigungen und Lizenzen, Fahrzeug, Finanzen, Recht, Eigentum, Gesundheit, Bildung, Arbeit, Versorgung, Versicherung und Sonstiges. Jede Art ist eine Liste gewichteter Stichwörter auf Rumänisch und Englisch mit einer Mindestpunktzahl. Deshalb landen ein Ausweis und eine Geburtsurkunde in verschiedenen Ordnern, ohne dass du eine einzige Datei richtig benennen musst.
Schritt 5: Regeln anpassen, wenn eine Zuordnung falsch ist
Die Regeln sind reines JSON mit den Feldern id, category, en, ro, min und keywords. Als Administrator kannst du sie unter Regeln bearbeiten, Regeln speichern drücken oder jederzeit zu den eingebauten Regeln zurückkehren. Nutze vor dem Speichern Regeln testen: Füge den Text eines Dokuments ein, drücke Klassifizieren und sieh, als was es sortiert würde und welche Wörter entschieden haben. Nichts wird gespeichert. Das ist der schnellste Weg, eine wiederkehrende Fehlablage zu beheben – füge das fehlende Wort zur richtigen Art hinzu und mach weiter.
Fehlerbehebung
- Bilder und gescannte PDFs werden nicht sortiert, Office-Dateien schon: Der Reader ist nicht installiert. Verwaltungseinstellungen → Übersicht zeigt eine Warnung; installiere ihn im Abschnitt Dokumentensortierung.
- „No Python 3 was found on this server“: Installiere es (
apt install python3 python3-venv) und drücke erneut auf Reader installieren. - Die Installation scheitert beim Herunterladen: Der Server braucht einmalig Internetzugang, um die Python-Pakete zu holen. Prüfe Proxy und Firewall und versuche es dann erneut.
- Eine Datei bleibt mit
Document: ?im Eingangsordner: Keine Art hat ihre Mindestpunktzahl erreicht. Prüfe den Text mit Regeln testen und ergänze die fehlenden Wörter.
Ein Datenschutzhinweis, den man ruhig wiederholen darf: Der Text eines Dokuments wird nie gespeichert. Die App merkt sich nur, als was jede Datei erkannt wurde, damit dieselbe Datei nicht zweimal gelesen wird. Alles läuft auf deinem Server; kein Dokument wird irgendwohin gesendet.
Dokumentensortierung vs. Paperless-ngx, ehrlich
Paperless-ngx ist ein eigenständiges Dokumentenarchiv: mit eigener Datenbank, eigener Weboberfläche, eigenem Konsumordner und eigener Vorstellung davon, wie Dokumente abgelegt werden sollen. Wenn dein Ziel ein durchsuchbares Archiv mit Korrespondenten, Dokumenttypen und starker Volltextsuche ist, ist es eine ausgereifte und hervorragende Wahl. Es macht eine Aufgabe und macht sie gründlich.
Die Dokumentensortierung nimmt eine andere Position ein. Sie baut kein zweites Archiv neben Nextcloud auf, sondern arbeitet im Dateibaum, den du bereits hast. Scans bleiben gewöhnliche Dateien in gewöhnlichen Ordnern, erreichbar über den Desktop-Client, die Mobile-App und jede andere Nextcloud-Funktion. Die App ergänzt Erkennung, Verschlagwortung und Ablage obendrauf, pro Benutzer, wobei jede Person ihren eigenen Eingangsordner, ihr Ziel und ihren Modus wählt. Für einen Haushalt oder ein kleines Team, das ohnehin in Nextcloud lebt, heißt das: kein zweites System zum Sichern, kein zweiter Login und keine Migration bestehender Ordner.
Der Kompromiss ist real: Die Dokumentensortierung ist ein Sortierer, kein Archiv mit eigenem Metadatenmodell und eigener Suchoberfläche. Wenn du Korrespondenten im Paperless-Stil und eine eigene Dokumentendatenbank brauchst, bleibt Paperless-ngx die bessere Wahl. Wenn du eigentlich nur willst, dass Nextcloud aufhört, ein Durcheinander unsortierter Scans zu sein, ist das hier das kleinere, natürlichere Werkzeug.
Fazit
Eine funktionierende Nextcloud-OCR-Einrichtung braucht drei Dinge: die App aktiviert mit gültiger Lizenz, den Reader installiert für Bilder und gescannte PDFs und einen Eingangsordner, den jeder Benutzer tatsächlich nutzt. Von da an erledigt der 15-Minuten-Job den langweiligen Teil, die Regeln bleiben als JSON bearbeitbar, und mit Regeln testen behebst du Fehler ohne Raten. Starte auf der Produktseite, halte das Handbuch und das Changelog bereit, und wenn sich etwas seltsam verhält, sind die Wissensdatenbank und die FAQ der nächste Anlaufpunkt.